Tracing On
概要
ログの収集と問題の再現は、診断を遅らせ、ユーザーエクスペリエンスを低下させます。Tracing On機能は、これらの作業を軽減します。Tracingは、Linux VDAでデフォルトで有効になっています。
構成
ctxlogdデーモンとsetlogユーティリティは、Linux VDAリリースパッケージに含まれています。デフォルトでは、Linux VDAのインストールと構成後にctxlogdデーモンが起動します。
ctxlogdデーモン
トレースされる他のすべてのサービスは、ctxlogdデーモンに依存しています。Linux VDAのトレースを継続したくない場合は、ctxlogdデーモンを停止できます。
setlogユーティリティ
Tracing Onは、/opt/Citrix/VDA/bin/パスにあるsetlogユーティリティを使用して構成されます。rootユーザーのみが実行する権限を持っています。GUIを使用するか、コマンドを実行して構成を表示および変更できます。setlogユーティリティのヘルプについては、次のコマンドを実行してください。
setlog help
<!--NeedCopy-->
値
デフォルトでは、ログ出力パスは/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
<!--NeedCopy-->
単一のsetlog値を表示または設定します。
setlog value <name> [<value>]
<!--NeedCopy-->
例:
setlog value log_size 100
<!--NeedCopy-->
レベル
デフォルトでは、ログレベルは警告に設定されています。
さまざまなコンポーネントに設定されているログレベルを表示します。
setlog levels
<!--NeedCopy-->
次のコマンドを使用すると、すべてのログレベル (無効、継承、詳細、情報、警告、エラー、致命的なエラーを含む) を設定できます。
setlog level <class> [<level>]
<!--NeedCopy-->
<class>変数は、Linux VDAの1つのコンポーネントを指定します。すべてのコンポーネントを対象とするには、allに設定します。
setlog level all error
Setting log class ALL to ERROR.
<!--NeedCopy-->
フラグ
デフォルトでは、フラグは次のように設定されています。
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
<!--NeedCopy-->
現在のフラグを表示します。
setlog flags
<!--NeedCopy-->
単一のログフラグを表示または設定します。
setlog flag <flag> [<state>]
<!--NeedCopy-->
デフォルトに戻す
すべてのレベル、フラグ、および値をデフォルト設定に戻します。
setlog default
<!--NeedCopy-->
重要:
ctxlogdサービスは、/var/xdl/.ctxlogファイルを使用して構成されます。このファイルはrootユーザーのみが作成できます。他のユーザーはこのファイルへの書き込み権限を持っていません。Citrixは、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.
<!--NeedCopy-->
この問題を解決するには、rootユーザーとしてsetlogを実行し、/var/xdl/.ctxlogファイルを再作成します。その後、他のサービスが依存するctxlogdサービスを再起動します。