Changes between Initial Version and Version 1 of TracLogging


Ignore:
Timestamp:
Apr 10, 2015, 1:03:53 PM (10 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracLogging

    v1 v1  
     1= ログ = #TracLogging
     2[[TracGuideToc]]
     3
     4Trac は Python の標準 [http://docs.python.org/library/logging.html ロギングモジュール] (訳注: [http://www.python.jp/doc/release/library/logging.html 日本語ドキュメント]) を使用したシステムメッセージのログ出力に対応しています。
     5
     6ログは [wiki:TracIni#logging-section trac.ini] の `[logging]` セクションで設定することができます。
     7
     8== 対応しているログの種類 == #SupportedLoggingMethods
     9
     10ログの出力方法は [wiki:TracIni#logging-section trac.ini] の `log_type` オプションで設定されます。以下の値が使用できます:
     11
     12 '''none''':: すべてのログメッセージを抑制する
     13 '''file''':: ログをファイルに出力する。 [wiki:TracIni#logging-section trac.ini] の ''log_file'' ディレクティブで指定する。 `log_file` の中の相対パスは TracEnvironment の `log` ディレクトリへの相対パスとして解決されます
     14 '''stderr''':: コンソールにすべてのログを出力する([wiki:TracStandalone tracd] のみ)
     15 '''syslog''':: (UNIX) 名前付きパイプ `/dev/log` を通してすべてのログメッセージをローカルの syslog に送信する。 syslog はデフォルトでファイル /var/log/messages に出力される
     16 '''eventlog''':: (Windows) イベントログに Trac のログを出力する
     17
     18== ログレベル == #LogLevels
     19
     20出力するログの冗長レベルは [wiki:TracIni#logging-section trac.ini] の `log_level` オプションで指定します。ログレベルは出力するログメッセージの最低限のレベルを定義します。レベルには下記の種類があります:
     21
     22 '''CRITICAL''':: 最も重要なエラーのみ。たいていは致命的なメッセージです
     23 '''ERROR''':: 処理失敗、バグ、エラー
     24 '''WARN''':: 警告、処理を中断するほどではないイベント
     25 '''INFO''':: 診断メッセージ。すべてのプロセスについてのログ情報
     26 '''DEBUG''':: トレースメッセージ、プロファイリングなど
     27
     28Note: Trac 0.11.5 以降で SQL 文をログに出力することができるようになりました。非常に冗長なログになるので、デフォルトでは OFF に成っています (`[trac] debug_sql =yes` を TracIni に設定することで有効化できます)。
     29
     30== ログの出力フォーマット == #LogFormat
     31
     32Trac 0.10.4 以降 ([trac:#2844 #2844] を参照) では、 [wiki:TracIni#logging-section trac.ini] の `log_format` オプションを使用することで、ログエントリーの出力フォーマットを設定することが可能です。フォーマットは [http://docs.python.org/library/logging.html#logrecord-attributes Python ロギングフォーマッタ変数] を含むことができる文字列です。そのうえ、以下の Trac 特有の変数を使用することができます:
     33 '''$(basename)s''':: Environment のベースネーム
     34 '''$(path)s''':: Environment の絶対パス
     35 '''$(project)s''':: プロジェクト名
     36
     37Note: 変数には、パーセント記号 (`%(...)s`) ではなく、ドル記号 (`$(...)s`) を使用します。
     38
     39デフォルトのフォーマットは以下の通りです:
     40{{{
     41log_format = Trac[$(module)s] $(levelname)s: $(message)s
     42}}}
     43
     44以下は、ログにプロジェクト名を出力する例です (全てのログが同じ場所 (例えば `syslog`) に出力される複数プロジェクト環境で役に立ちます) 。この例では、プロジェクトを特定するのに `basename` を使用しています:
     45{{{
     46log_format = Trac[$(basename)s:$(module)s] $(levelname)s: $(message)s
     47}}}
     48
     49----
     50See also: TracIni, TracGuide, TracEnvironment