Changes between Version 1 and Version 2 of TracLogging
- Timestamp:
- Jun 9, 2024, 11:14:44 AM (6 months ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TracLogging
v1 v2 2 2 [[TracGuideToc]] 3 3 4 Trac supports logging of system messages using the standard [http://docs.python.org/library/logging.html logging module] that comes with Python.4 Trac supports logging of system messages using Python's [https://docs.python.org/2/library/logging.html logging module]. 5 5 6 Logging is configured in the `[logging]` section in [wiki:TracIni#logging-section trac.ini].6 Logging is configured in the [TracIni#logging-section "[logging]"] section of TracIni. 7 7 8 8 == Supported Logging Methods 9 9 10 The log method is set using the `log_type` option in [wiki:TracIni#logging-section trac.ini], which takes any ofthe following values:10 The log method is set using the [TracIni#logging-log_type-option "[logging] log_type"] option, which accepts the following values: 11 11 12 12 '''none'':: Suppress all log messages. 13 '''file''':: Log messages to a file, specified with the `log_file` option in [wiki:TracIni#logging-section trac.ini]. Relative paths in `log_file` are resolved relative to the `log` directory of the environment.14 '''stderr''':: Output all log entries to console ([wiki:TracStandalone tracd] only).15 '''syslog''':: (UNIX) Send all log messages to the local syslogd via named pipe `/dev/log`. By default, syslog will write them to the file /var/log/messages.16 '''eventlog''':: (Windows) Use the system's NT Event Log for Trac logging.13 '''file''':: Log messages to a file, specified with the [TracIni#logging-log_file-option "[logging] log_file"] option. Relative paths for `log_file` are resolved relative to the environment `log` directory. 14 '''stderr''':: Output log entries to console ([TracStandalone tracd] only). 15 '''syslog''':: (UNIX) Send log messages to the local syslogd via named pipe `/dev/log`. By default, syslog will write them to the `/var/log/messages` file. 16 '''eventlog''':: (Windows) Use the system's NT Event Log. 17 17 18 18 == Log Levels 19 19 20 The verbosity level of logged messages can be set using the `log_level` option in [wiki:TracIni#logging-section trac.ini]. The log level defines the minimum level of urgency required for a message to be logged, and those levels are:20 The verbosity level of logged messages can be set using the [TracIni#logging-log_level-option "[logging] log_level"] option. The log level defines the minimum level of urgency required for a message to be logged: 21 21 22 22 '''CRITICAL''':: Log only the most critical (typically fatal) errors. 23 '''ERROR''':: Log failures, bugs and errors. 23 '''ERROR''':: Log failures, bugs and errors. 24 24 '''WARN''':: Log warnings, non-interrupting events. 25 25 '''INFO''':: Diagnostic information, log information about all processing. 26 26 '''DEBUG''':: Trace messages, profiling, etc. 27 27 28 Additionally, you can enable logging of SQL statements at debug level. This is turned off by default, as it's very verbose. Set `[trac] debug_sql = yes` in TracInito activate.28 Additionally, you can enable logging of SQL statements at debug level. This is turned off by default, as it's very verbose. Set [TracIni#trac-debug_sql-option "[trac] debug_sql = yes"] to activate. 29 29 30 30 == Log Format 31 31 32 The output format for log entries can be specified through the `log_format` option in [wiki:TracIni#logging-section trac.ini]. The format is a string which can contain any of the [http://docs.python.org/library/logging.html#logrecord-attributes Python logging Formatter variables]. Additonally, the following Trac-specific variables can be used:33 '''$(basename)s''':: The last path component of the current environment.34 '''$(path)s''':: The absolute path for the current environment.32 The output format for log entries can be specified in the [TracIni#logging-log_format-option "[logging] log_format"] option. The format is a string which can contain any of the [https://docs.python.org/2/library/logging.html#logrecord-attributes Python logging Formatter variables]. Additionally, the following Trac-specific variables can be used: 33 '''$(basename)s''':: The environment directory name. 34 '''$(path)s''':: The absolute path of the environment directory. 35 35 '''$(project)s''':: The originating project's name. 36 36 … … 42 42 }}} 43 43 44 In a multi-project environment where all logs are sent to the same place (e.g. `syslog`), it makes sense to add the project name. In this example we use `basename` sincethat can generally be used to identify a project:44 In a multi-project environment where all logs are sent to the same place (e.g. `syslog`), it makes sense to add the project name. In this example we use `basename` as that can generally be used to identify a project: 45 45 {{{#!ini 46 46 log_format = Trac[$(basename)s:$(module)s] $(levelname)s: $(message)s … … 48 48 49 49 ---- 50 See also: TracIni, Trac Guide, TracEnvironment50 See also: TracIni, TracEnvironment