Changes between Version 2 and Version 3 of TracLogging
- Timestamp:
- Oct 1, 2012 9:35:34 AM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TracLogging
v2 v3 1 = ログ = #TracLogging1 = Trac Logging = 2 2 [[TracGuideToc]] 3 3 4 Trac は Python の標準 [http://docs.python.org/lib/module-logging.html ロギングモジュール] (訳注: [http://www.python.jp/doc/release/lib/module-logging.html 日本語ドキュメント]) を使用したシステムメッセージのログ出力に対応しています。4 Trac supports logging of system messages using the standard [http://docs.python.org/library/logging.html logging module] that comes with Python. 5 5 6 ログは [wiki:TracIni#logging-section trac.ini] の `[logging]` セクションで設定することができます。 6 Logging is configured in the `[logging]` section in [wiki:TracIni#logging-section trac.ini]. 7 7 8 == 対応しているログの種類 == #SupportedLoggingMethods8 == Supported Logging Methods == 9 9 10 ログの出力方法は [wiki:TracIni#logging-section trac.ini] の `log_type` オプションで設定されます。以下の値が使用できます:10 The log method is set using the `log_type` option in [wiki:TracIni#logging-section trac.ini], which takes any of the following values: 11 11 12 '''none'' ':: すべてのログメッセージを抑制する。13 '''file''':: ログをファイルに出力する。 [wiki:TracIni#logging-section trac.ini] の ''log_file'' ディレクティブで指定する。14 '''stderr''':: コンソールにすべてのログを出力する。([wiki:TracStandalone tracd] のみ)15 '''syslog''':: (UNIX) 名前付きパイプ `/dev/log` を通してすべてのログメッセージをローカルの syslog に送信する。 syslog はデフォルトでファイル /var/log/messages に出力される。16 '''eventlog''':: (Windows) イベントログに Trac のログを出力する。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. 17 17 18 == ログレベル == #LogLevels18 == Log Levels == 19 19 20 出力するログの冗長レベルは [wiki:TracIni#logging-section trac.ini] の `log_level` オプションで指定します。ログレベルは出力するログメッセージの最低限のレベルを定義します。レベルには下記の種類があります: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: 21 21 22 '''CRITICAL''':: 最も重要なエラーのみ。たいていは致命的なメッセージです。23 '''ERROR''':: 処理失敗、バグ、エラー。24 '''WARN''':: 警告、処理を中断するほどではないイベント。25 '''INFO''':: 診断メッセージ。すべてのプロセスについてのログ情報。26 '''DEBUG''':: トレースメッセージ、プロファイリングなど。22 '''CRITICAL''':: Log only the most critical (typically fatal) errors. 23 '''ERROR''':: Log failures, bugs and errors. 24 '''WARN''':: Log warnings, non-interrupting events. 25 '''INFO''':: Diagnostic information, log information about all processing. 26 '''DEBUG''':: Trace messages, profiling, etc. 27 27 28 Note : Trac 0.11.5 以降で SQL 文をログに出力することができるようになりました。非常に冗長なログになるので、デフォルトでは OFF に成っています (`[trac] debug_sql =yes` を TracIni に設定することで有効化できます)。28 Note that starting with Trac 0.11.5 you can in addition 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 TracIni to activate). 29 29 30 == ログの出力フォーマット == #LogFormat30 == Log Format == 31 31 32 Trac 0.10.4 以降 ([http://trac.edgewall.org/ticket/#2844 #2844] を参照) では、 [wiki:TracIni#logging-section trac.ini] の `log_format` オプションを使用することで、ログエントリーの出力フォーマットを設定することが可能です。フォーマットは [http://docs.python.org/lib/node422.html Python ロギングフォーマッタ変数] を含むことができる文字列です。そのうえ、以下の Trac 特有の変数を使用することができます:33 '''$(basename)s''':: Environment のベースネーム34 '''$(path)s''':: Environment の絶対パス35 '''$(project)s''':: プロジェクト名32 Starting with Trac 0.10.4 (see [trac:#2844 #2844]), it is possible to set the output format for log entries. This can be done 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. 35 '''$(project)s''':: The originating project's name. 36 36 37 Note : 変数には、パーセント記号 (`%(...)s`) ではなく、ドル記号 (`$(...)s`) を使用します。37 Note that variables are identified using a dollar sign (`$(...)s`) instead of percent sign (`%(...)s`). 38 38 39 デフォルトのフォーマットは以下の通りです:39 The default format is: 40 40 {{{ 41 41 log_format = Trac[$(module)s] $(levelname)s: $(message)s 42 42 }}} 43 43 44 以下は、ログにプロジェクト名を出力する例です (全てのログが同じ場所 (例えば `syslog`) に出力される複数プロジェクト環境で役に立ちます) 。この例では、プロジェクトを特定するのに `basename` を使用しています: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` since that can generally be used to identify a project: 45 45 {{{ 46 46 log_format = Trac[$(basename)s:$(module)s] $(levelname)s: $(message)s