16.5 SALメッセージのフィルタ

SALは、エラーに関する包括的な情報を、オンデマンドでログに記録するために拡張されてきました。デバッグビルドでは、引数を使用してファンクションコールをトレースすることができます。

16.5.1 重大度レベルの設定

SAL_LogLevelsパラメータを使用すると、SALメッセージの重大度レベルを設定できます。SAL_LogLevelsは、必要なログレベルから構成されたコンマ区切りのリストです。

下の表では、ログレベルについて説明します。

表 16-1 SALメッセージのフィルタパラメータ

パラメータ名

説明

LogCrit

致命的なメッセージ。

デフォルトでは、このレベルは有効になっています。致命的エラーが記録されると、システムはシャットダウンされます。

LogErr

すべてのエラーメッセージ。

システムは機能し続けますが、結果は予測できません。

LogWarn

警告メッセージ。

発生する可能性のあるエラーの存在について通知される警告です。

LogInfo

情報メッセージ。

LogDbg

開発時のデバッグ用に使用されるデバッグメッセージです。

これらのメッセージは、バイナリサイズを削減するため、コンパイル時にリリースビルドから削除されます。

LogCall

ファンクションコールをトレースします。これらはデバッグメッセージのサブセットです。

LogAll

LogCall以外のメッセージをすべて有効にします。

特定のログレベルの先頭に「-」を指定すると、そのレベルが無効になります。

LogInfoLogDbgを除いたすべてのログレベルに基づいてフィルタを行う場合は、次の手順を完了させます。

Linux

  1. ndsdを停止します。

  2. 次のコマンドを入力します。

    export SAL_LogLevels=LogAll,-LogInfo,-LogDbg
    
  3. ndsdを起動します。

Windows

  1. DHostをシャットダウンします。

  2. 次のコマンドをコマンドプロンプトの指示にしたがって入力します。

    set SAL_LogLevels=LogAll,-LogInfo,-LogDbg
    
    c:\novell\nds>dhost.exe /datadir=c:\novell\nds\DIBFiles\
    
  3. DHostを再起動します。

16.5.2 ログファイルパスを設定する

SAL_LogFile環境変数を使用すると、ログファイルの場所を指定できます。場所として指定できるのは、有効なパスの有効なファイル名、または次のいずれかです。

  • コンソール: すべてのメッセージはコンソールに出力されます。

  • syslog: Linuxでは、メッセージはsyslogに記録されます。Windowsでは、メッセージはsyslogという名前のファイルに記録されます。これはログのデフォルトの動作です。

    致命的なエラーはすべて、明確に無効にされている場合以外は、常にsyslogに記録されます。