logging

loggingとは

logging {
    category default { default_syslog; default_debug; };
    category unmatched { null; };
};

namedのログ出力に関する設定を行います。loggingステートメントでは豊富なオプションを設定することができます。channelで出力先や出力レベルなどを設定し、categolyによってどのチャネルに出力するかを設定します。シンプルに設定する場合、channelステートメントを省略することも可能。

Bind9ではloggingステートメントは1個に限られます。また、namedが起動するとき(設定ファイル読み込み前)のエラーはデフォルトchannelに送られます。起動時に-gオプションが付いているとログは標準エラーに出力されます。

 

logging書式詳細

logging {
    [ channel channel_name {
        ( file path_name
        [ versions ( number | unlimited ) ]
            [ size size spec ]
            | syslog syslog_facility
            | stderr
            | null );
        [ severity (critical | error | warning | notice |
                    info | debug [ level ] | dynamic ); ]
        [ print-category yes or no; ]
        [ print-severity yes or no; ]
        [ print-time yes or no; ]
    }; ]
    [ category category_name {
        channel_name ; [ channel_name ; ... ]
    }; ]
    ...
};

 

channel設定

logging設定の中でchannelを設定することで出力先を変更できる。channelだけでけっこうな量があるのでこちらで説明します。

 

category設定

channelで設定した出力先に対して、どのようなデータを出力するかを定義するのがcategoryです。こちらもかなりの量があるので別ページにて説明します。ここにはQueryエラーを出力する場合のカテゴリ等も含まれています。