Citrix Virtual Apps and Desktops

查看和使用 AOT 日志

通过 Director UI 访问日志

步骤 1

  • 编辑 StartLogServer.bat 文件

StartLogServer.bat 文件包含用于启动 AOT 日志服务器容器的所有配置参数,其中包括控制日志访问和行为的多个环境变量。其中一个关键设置是 LOCAL_DOWN_ONLY

  • LOCAL_DOWN_ONLY=false 时,日志服务器接受远程日志查看请求。这允许 Citrix Director/Monitor 连接到日志服务器并在 Monitor UI 中直接显示 AOT 日志。

  • LOCAL_DOWN_ONLY=true 时,日志服务器将日志访问限制为仅限本地连接。在此模式下,您必须直接连接到日志服务器计算机才能查看日志,并且 Citrix Director Monitor 将无法检索或显示日志

AOT bat file

步骤 2

Web Studio 提供了一个专用设置,允许 Citrix Director 连接到 AOT 日志服务器并在 Monitor 控制台中显示日志。保存 Web Studio 设置后,Delivery Controllers 会更新站点配置,Director 会收到日志服务器详细信息,包括日志服务器地址、端口和身份验证密钥。Director 使用这些设置与日志服务器建立安全连接。

  • 步骤 3

  • 配置后:
  1. 打开 Citrix Director
  2. 左侧导航面板中会出现一个新的“日志”选项。
  3. 选择“日志”,您将看到“入门”页面,单击“关闭”以跳过它,因为我们之前已完成这些设置。
    1. 现在,您将看到 Director 直接从日志服务器检索并显示 AOT 日志。
  • Citrix Director

Director 中的“日志”页面提供了来自 Delivery Controllers、VDA、StoreFront 服务器和其他 Citrix 组件的 AOT 事件的统一视图。您可以实时搜索、筛选和检查日志,以快速排查问题。

自由文本搜索: 在“日志”页面顶部,您会找到一个自由文本搜索栏。您可以键入任何关键字以开始缩小结果范围。应用筛选器后,搜索结果会立即更新。示例包括:

  • 用户名
  • 计算机名称
  • 事件关键字(例如,注册、身份验证、STA)
  • 事务 ID
  • 错误消息或部分字符串

时间筛选器: 使用时间选择器(例如,“最近 5 分钟”、“最近 1 小时”、“最近 24 小时”)查看在特定持续时间内生成的日志。这有助于您快速隔离问题发生确切时间附近的事件。

类别筛选器: “类别”字段允许您根据事件或子系统的类型筛选日志。这有助于您专注于与应用程序启动、注册、VDA 配置、图形、HDX Direct、ICA 连接等相关的日志。

日志类筛选器: “日志类”筛选器按严重性或事件类型对日志进行分组。这使您在排查问题时可以只关注错误或重要事件。常见类别包括:

  • 信息
  • 警告
  • 错误
  • 失败

主机名筛选器: “主机名”筛选器允许您选择特定的计算机,例如 VDA、Delivery Controller、CWA 或 StoreFront 服务器。当您想要深入查看单个端点或 VM 的日志,而不是在整个部署中搜索时,这非常有用。

这种集中式访问通过允许从单个控制台快速检索和分析日志来简化故障排除。在 Director - 日志 中了解有关先决条件和入门的更多信息。

通过日志服务器访问日志

以下内容是生成 AuthKey。要启用对日志的访问,用户需要

  1. 修改 StartLogServer.bat 脚本 LOCAL_DOWN_ONLY=false

  2. 生成 AuthKey

为了确保日志安全,您需要在下载日志之前获取一个 AuthKey。操作步骤如下:

  1. 获取您的 AuthKey – 使用您自己的角色名称/姓名生成它。
  2. 本地运行 – 脚本只能在安装了 Docker 容器的计算机上运行。
  3. Windows 用户 – 使用 GetAuthKey.bat 脚本而不是 shell 脚本。
  4. 下载日志 – 身份验证成功后,您可以安全地检索日志。

生成 AuthKey

适用于 Linux

./GetAuthKey.sh role-name
{"key":"ebac9b7726cb4be597c92c6769134d25","role":"role-name","status":"DONE"}
<!--NeedCopy-->

适用于 Windows

GetAuthKey.bat role-name
{"key":"ebac9b7726cb4be597c92c6769134d25","role":"role-name","status":"DONE"}
<!--NeedCopy-->

请自行保存密钥:ebac9b7726cb4be597c92c6769134d25。这是获取密钥的唯一方法。

列出已将其 AOT 日志发送到日志服务器的计算机名称

该参数是从 GetAuthKey.sh 获取的密钥

适用于 Linux

./ListMachines.sh ebac9b7726cb4be597c92c6769134d25
{"machines":["MachineName"]}
<!--NeedCopy-->

空计算机表示没有日志

适用于 Windows

ListMachines.bat ebac9b7726cb4be597c92c6769134d25
{"machines":["MachineName"]}
<!--NeedCopy-->

对于 LogServer 以 “-e LOCAL_DOWN_ONLY=false” 启动时的 Windows PowerShell:

Invoke-WebRequest -Uri "https://logserver_fqdn:8443/ctxlogserver/Download/ListMachine" -Headers @{ AuthKey = "ebac9b7726cb4be597c92c6769134d25" }
<!--NeedCopy-->

将 logserver_fqdn 替换为日志服务器的实际 FQDN,将 8443 替换为日志服务器的实际端口。在 HTTP 模式下安装时,将 https 替换为 http。

空计算机表示没有日志

按计算机名称和时间范围下载日志。

时间采用 UTC 格式:YYYY-mm-ddTHH:MM:SSZ。

#Usage: ./DownloadLogsByTime.sh [AuthKey] [MachineName] [StartTime|YYYY-mm-ddTHH:MM:SSZ] [EndTime|YYYY-mm-ddTHH:MM:SSZ] [OutputFile]
#Example:
<!--NeedCopy-->

适用于 Linux

./DownloadLogsByTime.sh ebac9b7726cb4be597c92c6769134d25 MachineName 2025-01-01T00:00:00Z 2025-01-02T00:00:00Z logs.csv
<!--NeedCopy-->

适用于 Windows

DownloadLogsByTime.bat ebac9b7726cb4be597c92c6769134d25 MachineName 2025-01-01T00:00:00Z 2025-01-02T00:00:00Z logs.csv
<!--NeedCopy-->

对于 LogServer 以 “-e LOCAL_DOWN_ONLY=false” 启动时的 Windows PowerShell:

Invoke-WebRequest -Uri "https://logserver_fqdn:8443/ctxlogserver/Download/TimeRange?start=2025-01-01T00:00:00Z&end=2025-01-02T00:00:00Z" -Headers @{ AuthKey = "ebac9b7726cb4be597c92c6769134d25" } -OutFile logs.csv
<!--NeedCopy-->

按关键字筛选下载日志。时间采用 UTC 格式

注意:

  • 关键字可以是单个词或词的组合。
  • 关键字可以匹配日志消息中的任何位置。
  • 事务 ID 也可以用作关键字。
#Usage: ./DownloadLogsByWords.sh [AuthKey] [StartTime|YYYY-mm-ddTHH:MM:SSZ] [EndTime|YYYY-mm-ddTHH:MM:SSZ] [SearchWords] [OutputFile]
#Example:
<!--NeedCopy-->

适用于 Linux

./DownloadLogsByWords.sh authkey 2025-01-01T00:00:00.000Z 2025-12-31T23:59:59.999Z "session launch" logs.csv
<!--NeedCopy-->

适用于 Windows

DownloadLogsByWords.bat authkey 2025-01-01T00:00:00.000Z 2025-12-31T23:59:59.999Z "failed vda" logs.csv
<!--NeedCopy-->

对于 LogServer 以 “-e LOCAL_DOWN_ONLY=false” 启动时的 Windows PowerShell:

Invoke-WebRequest -Uri "https://logserver_fqdn:8443/ctxlogserver/Download/SearchLog?start=2025-01-01T00:00:00Z&end=2025-01-02T00:00:00Z&words=failed vda" -Headers @{ AuthKey = "ebac9b7726cb4be597c92c6769134d25" } -OutFile logs.csv
<!--NeedCopy-->

词语之间用空格分隔

查看和使用 AOT 日志