Nuclos altes SQL Logging: log4j 1.2, log4j.properties, JDBCAppender, LOGS Tabelle, PostgreSQL, Oracle, SQLTimer. |
Sprache: Deutsch · English
SQL-Logging für Nuclos bis 4.5 (log4j 1.2) – JDBCAppender in die Datenbank und alte Standard-Konfiguration.
Auf dieser Seite |
Diese Seite gilt für Nuclos bis 4.5 mit log4j 1.2 ( |
SELECT-Statements lassen sich direkt in eine (beliebige) Datenbank schreiben. Zuerst die Zieltabelle anlegen (PostgreSQL; bei Oracle MESSAGE als CLOB):
CREATE TABLE <SCHEMA>.LOGS( DATED TIMESTAMP NOT NULL PRIMARY KEY, LOGGER VARCHAR(127) NOT NULL, LEVEL VARCHAR(15) NOT NULL, MESSAGE VARCHAR(10485760) NOT NULL, THREAD VARCHAR(4000) NOT NULL, TIME INTEGER, PARAMS VARCHAR(4000) ); |
Dann den JDBCAppender in log4j.properties konfigurieren:
#SQL logging
log4j.logger.SQLLogger=DEBUG, DB
log4j.logger.SQLTimer=DEBUG, DB
#JDBCAppender
log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DB.driver=org.postgresql.Driver
log4j.appender.DB.URL=jdbc:postgresql://datenbankip:5432/postgres
log4j.appender.DB.user=nuclos
log4j.appender.DB.password=nuclos
log4j.appender.DB.sql=INSERT INTO <SCHEMA>.LOGS VALUES('%d{yyyy-MM-dd HH:mm:ss.SSS}','%c','%p','%m','%t')
log4j.appender.DB.layout=org.apache.log4j.PatternLayout |
Log-Level möglichst hoch setzen, damit die DB nicht überlastet wird. Durch Entfernen von |
#SQL logging log4j.logger.org.nuclos.server.dblayer=DEBUG log4j.logger.org.nuclos.server.dal.processor.jdbc.impl.standard.StandardSqlDBAccess=DEBUG |
Nach dem Ergänzen muss der Server neu gestartet werden; die Ausgabe erscheint im server.log.