ログ収集
概要
ログの収集と問題の再現は、診断を遅らせ、ユーザーエクスペリエンスを低下させます。ログ収集は、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
レベル
デフォルトでは、ログレベルはwarning(大文字と小文字を区別しない)に設定されています。
異なるコンポーネントに設定されているログレベルを表示するには、次のコマンドを実行します。
setlog levels
ログレベル(Disabled、Inherited、Verbose、Information、Warnings、Errors、Fatal Errorsを含む)を設定するには、次のコマンドを実行します。
setlog level <class> [<level>]
| ログレベル | コマンドパラメーター(大文字と小文字を区別しない) |
|---|---|
| 無効 | なし |
| 継承済み | 継承 |
| 詳細 | 詳細 |
| 情報 | 情報 |
| 警告 | 警告 |
| エラー | エラー |
| 致命的なエラー | 致命的 |
<class> 変数は、Linux VDA の 1 つのコンポーネントを指定します。すべてのコンポーネントを対象とするには、all に設定します。例:
setlog level all 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 サービスは /var/xdl/.ctxlog ファイルを使用して構成されます。このファイルはルートユーザーのみが作成できます。他のユーザーはこのファイルへの書き込み権限を持っていません。ルートユーザーは他のユーザーに書き込み権限を与えないことをお勧めします。これに従わないと、任意または悪意のある構成が 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.
この問題を解決するには、ルートユーザーとして
setlog を実行して /var/xdl/.ctxlog ファイルを再作成します。その後、他のサービスが依存している ctxlogd サービスを再起動します。