トレースの有効化
概要
ログの収集と問題の再現は、診断を遅らせ、ユーザーエクスペリエンスを低下させます。トレースの有効化機能は、このような作業を軽減します。Linux VDAでは、トレースはデフォルトで有効になっています。
構成
ctxlogd デーモンと setlog ユーティリティは、Linux VDAリリースパッケージに同梱されるようになりました。デフォルトでは、Linux VDAのインストールと構成後に ctxlogd デーモンが起動します。
ctxlogd デーモン
トレースされる他のすべてのサービスは、
ctxlogd デーモンに依存しています。Linux VDAのトレースを継続したくない場合は、ctxlogd デーモンを停止できます。
setlog ユーティリティ
トレースの有効化は、/opt/Citrix/VDA/bin/ パスにある
setlog ユーティリティを使用して構成されます。rootユーザーのみが実行する権限を持っています。GUIを使用するか、コマンドを実行して構成を表示および変更できます。setlog ユーティリティに関するヘルプについては、次のコマンドを実行してください。
setlog help
値
デフォルトでは、ログ出力パスは /var/log/xdl/hdx.log に設定され、最大ログサイズは200 MBに設定されており、ログ出力パスの下に最大2つの古いログファイルを保存できます。
現在の
setlog の値を表示します。
setlog values
log_path (Log Output Path) = /var/log/xdl/hdx.log
log_size (Max Log Size (MiB)) = 200
log_count (Max Old Log Files) = 2
単一の
setlog の値を表示または設定します。
setlog value <name> [<value>]
例:
setlog value log_size 100
レベル
デフォルトでは、ログレベルは 警告 に設定されています。
さまざまなコンポーネントに設定されているログレベルを表示します。
setlog levels
次のコマンドを使用して、すべてのログレベル(無効、継承、詳細、情報、警告、エラー、致命的なエラーを含む)を設定できます。
setlog level <class> [<level>]
<class> 変数はLinux VDAの1つのコンポーネントを指定します。すべてのコンポーネントを対象とするには、それを「all」に設定します。
setlog level all error
Setting log class ALL to ERROR.
フラグ
デフォルトでは、フラグは次のように設定されています。
setlog flags
DATE = true
TIME = true
NAME = true
PID = true
TID = false
SID = true
UID = false
GID = false
CLASS = false
LEVEL = false
FUNC = true
FILE = false
現在のフラグを表示します。
setlog flags
単一のログフラグを表示または設定します。
setlog flag <flag> [<state>]
デフォルトに戻す
すべてのレベル、フラグ、および値をデフォルト設定に戻します。
setlog default
重要:
ctxlogd サービスは、rootユーザーのみが作成できる /var/xdl/.ctxlog ファイルを使用して構成されます。他のユーザーはこのファイルへの書き込み権限を持っていません。rootユーザーが他のユーザーに書き込み権限を与えないことをお勧めします。これに従わない場合、任意または悪意のある構成が ctxlogd になる可能性があり、サーバーのパフォーマンス、ひいてはユーザーエクスペリエンスに影響を与える可能性があります。
トラブルシューティング
/var/xdl/.ctxlog ファイルが見つからない場合(誤って削除された場合など)、
ctxlogd デーモンが失敗し、ctxlogd サービスを再起動できません。
/var/log/messages:
Apr 1 02:28:21 RH72 citrix-ctxlogd[17881]: Failed to open logging configuration file.
Apr 1 02:28:21 RH72 systemd: ctxlogd.service: main process exited, code=exited, status=1/FAILURE
Apr 1 02:28:21 RH72 systemd: Unit ctxlogd.service entered failed state.
Apr 1 02:28:21 RH72 systemd: ctxlogd.service failed.
この問題を解決するには、rootユーザーとして
setlog を実行して /var/xdl/.ctxlog ファイルを再作成します。その後、他のサービスが依存する ctxlogd サービスを再起動します。