Product Documentation

配置日志记录

Oct 12, 2015
配置日志记录捕获针对数据库的站点配置更改和管理活动。您可以使用记录的内容进行以下操作:
  • 在发生配置更改后诊断问题和故障排除;日志提供导航路径记录
  • 协助变更管理及跟踪配置
  • 报告管理活动

您可以设置配置日志记录首选项,显示配置日志,并从 Citrix Studio 生成 HTML 和 CSV 报告。您可以按日期范围和全文搜索结果过滤显示的配置日志。如果启用强制日志记录,可以阻止进行配置更改,除非这些更改可以记入日志。只要具有适当的权限,即可删除配置日志中的条目。您无法使用配置日志记录功能编辑日志内容。

配置日志记录使用 PowerShell 2.0 SDK 和 Configuration Logging Service。Configuration Logging Service 会在站点中的每个 Controller 上运行;如果某个 Controller 出现故障,另一个 Controller 上的服务将自动处理日志记录请求。

默认情况下,配置日志记录功能处于启用状态,它使用创建站点时所创建的数据库(站点配置数据库)。Citrix 强烈建议您在创建站点后尽快更改配置日志记录数据库的位置。配置日志记录数据库与站点配置数据库支持相同的高可用性功能。

对配置日志记录的访问通过委派管理进行控制,需要具有编辑日志记录首选项和查看配置日志权限。

配置日志会在创建时进行本地化。例如,以英语创建的日志将以英语显示,而无论阅读器的区域设置如何。

记录的内容

通过 Studio、Director 和 PowerShell 脚本启动的配置更改和管理活动都在记录范围之内。记录的配置更改包括对以下项目的处理(创建、编辑、删除和分配):
  • 计算机目录
  • 交付组(包括更改电源管理设置)
  • 管理员角色和作用域
  • 主机资源和连接
  • 通过 Studio 管理的 Citrix 策略
记录的管理更改示例包括:
  • 虚拟机或用户桌面的电源管理
  • Studio 或 Director 向用户发送消息
以下操作不在记录范围之内:
  • 自动操作,如虚拟机的池管理启动。
  • 通过组策略管理控制台 (GPMC) 实施的策略操作;使用 Microsoft 工具查看这些操作的日志。
  • 通过注册表和直接访问数据库进行的更改,或来自 Studio、Director 或 PowerShell 以外的源的更改。
  • 初始化部署后,配置日志记录从在 Configuration Service 中注册首个 Configuration Logging Service 实例时开始可用。因此,早期阶段的配置不会记入日志(例如,获取和应用数据库架构以及初始化虚拟机管理程序期间的更改)。

管理配置日志记录

默认情况下,配置日志记录处于启用状态,强制日志记录处于禁用状态。

默认情况下,配置日志记录使用在您创建站点时所创建的数据库(也称为站点配置数据库)。Citrix 强烈建议您在创建站点后更改用于配置日志记录的数据库(以及用于 Monitoring Service 的数据库,Monitoring Service 默认情况下也会使用站点配置数据库)的位置,原因如下:
  • 配置日志记录数据库的备份策略可能与站点配置数据库的备份策略有所不同。
  • 通过配置日志记录(以及 Monitoring Service)收集的数据量可能会对站点配置数据库的可用空间造成负面影响。
  • 它会针对三个数据库拆分单点故障。

有关详细信息,请参阅更改辅助数据库位置

配置日志记录数据库与站点配置数据库支持相同的高可用性功能。请参阅规划部署中的数据库指导。

启用/禁用配置日志记录和强制日志记录

  1. 从 Citrix Studio,选择左侧窗格中的日志记录
    注意:不支持配置日志记录的版本没有日志记录节点。
  2. 在“操作”窗格中,单击首选项。此时将显示配置日志记录对话框,其中将显示数据库信息,以及配置日志记录和强制日志记录的启用/禁用状态。
    • 启用或禁用配置日志记录:
      • 要启用配置日志记录,请选择启用日志记录单选按钮。此为默认设置。如果无法向数据库写入信息,则日志记录信息将被丢弃,但操作仍继续。
      • 要禁用配置日志记录,请选择禁用日志记录单选按钮。如果先前已启用日志记录,现有的日志仍然可通过 PowerShell SDK 进行读取。
    • 启用或禁用强制日志记录:
      • 要启用强制日志记录,请清除数据库断开连接时允许更改复选框。通常将记入日志的配置更改或管理活动将不被允许,除非可将其写入配置日志记录数据库。
      • 要禁用强制日志记录,请选中数据库断开连接时允许更改复选框。即使配置日志记录的数据库无法访问,也允许执行配置更改和管理活动。此为默认设置。

      强制日志记录选项仅在配置日志记录启用时(即,选择启用配置日志记录单选按钮)可用。如果 Configuration Logging Service 出现故障,并且未使用高可用性,则会使用强制日志记录。在这种情况下,将不会执行通常会记入日志的操作。

更改配置日志记录数据库的位置

  1. 使用支持的 SQL Server 版本创建数据库服务器。
  2. 从 Studio,在左侧窗格中选择日志记录
  3. 在“操作”窗格中,单击首选项。此时将显示配置日志记录对话框。
  4. 单击更改日志记录数据库。此时将显示更改配置日志记录数据库对话框。
  5. 指定新数据库服务器所在服务器的位置(使用下表中的形式之一)以及数据库名称。
    数据库类型 输入内容 使用此数据库配置
    独立或镜像 servername 使用默认实例,SQL Server 使用默认端口。
      服务器名称\实例名称 使用指定的实例,SQL Server 使用默认端口。
      服务器名称,端口号 使用默认实例,SQL Server 使用自定义端口。(需要逗号。)
    其他 群集名称 群集数据库。
      可用性组侦听器 始终开启的数据库。
  6. 如果希望 Studio 创建数据库,请单击确定测试连接。当出现提示时,请单击确定,然后 Studio 会自动创建数据库。Studio 会尝试使用当前 Studio 用户的凭据访问数据库;如果此操作失败,系统会提示您输入数据库用户的凭据。然后,Studio 会将数据库架构上载到数据库。(凭据仅在数据库创建期间保留。)
  7. 如果要手动创建数据库,请单击生成脚本(或使用 PowerShell SDK 中的 Get-LogDBSchema)。生成的脚本包括有关手动创建数据库的说明。在上载架构之前,请确保数据库为空,且至少有一个用户有权访问并更改该数据库。

先前数据库中的配置日志记录数据不会导入新数据库中。检索日志时,不能合并来自两个数据库的日志。新配置日志记录数据库中的第一个日志条目将指明发生了数据库更改,但无法确定先前的数据库。

显示配置日志内容

在发起配置更改和管理活动时,Citrix Studio 和 Citrix Director 创建高级别操作,它们显示在 Studio 中心窗格的上半部分。高级别操作会导致一个或多个服务和 SDK 调用,后者为低级别操作。当在中心窗格的上半部分选择某个高级别操作时,中心窗格的下半部分会显示低级别操作。

如果操作在完成之前失败,可能无法在数据库中完成日志操作;例如,开始记录将没有对应的停止记录。在这种情况下,日志会指出缺少信息。在基于时间范围显示日志时,如果不完整日志中的数据符合条件,则会显示这些不完整的日志。例如,当请求过去五天的所有日志时,如果存在的某个日志的开始时间在过去五天内但没有结束时间,则会包括该日志。

在使用脚本调用 PowerShell cmdlet 时,如果您在创建低级别操作时不指定高级别父操作,则配置日志记录将创建替代的高级别操作。

显示配置日志内容

从 Studio,在左侧窗格中选择日志记录。默认情况下,在中心窗格显示的内容会按时间顺序列出日志内容(最新的条目在最前面),并按日期进行分隔。
显示内容过滤条件 完成此操作
搜索结果 在中心窗格顶部的搜索框中输入文本。过滤的显示内容包括搜索结果的数量。要返回到标准的日志记录显示,请清除搜索框中的文本。
列标题 单击列标题可以按该字段对显示内容排序。
日期范围 从中心窗格顶部的搜索框旁的下拉列表框中选择时间间隔(今天、过去 7 天、过去 28 天、过去 3 个月、过去 6 个月)。

生成配置日志报告

您可以生成包含配置日志数据的 CSV 和 HTML 报告。
  • CSV 报告是指定时间间隔内日志记录数据的数据转储。数据库中的分层数据被简化为单个 CSV 表。所有数据项在此文件中都不具有优先级。不进行任何格式化,也不假定具有可读性。文件(名称为 MyReport)只包含通用格式的数据。CSV 文件通常用于存档数据,或作为报告或数据操作工具(如 Microsoft Excel)的数据源。
  • HTML 报告以便于用户理解的格式提供指定时间间隔内的日志记录数据。它提供层次分明的导航视图,便于检查更改。HTML 报告包括两个文件,名称分别为“摘要”和“详细信息”。“摘要”列出了高级别操作:每个操作发生的时间、执行者和结果。单击每个操作旁边的详细信息链接可转至提供其他信息的“详细信息”文件中的低级别操作。

生成配置日志报告

  1. 从 Citrix Studio,选择左侧窗格中的日志记录
  2. 在“操作”窗格中,单击创建自定义报告
  3. 通过选择预定义的时间间隔或指定自定义时间范围,选择报告的日期范围。
  4. 选择报告格式:CSVHTMLBoth CSV and HTML(CSV 和 HTML 二者)。
  5. 浏览到报告的保存位置。
  6. 摘要页面中检查您的选择,然后单击完成

删除配置日志内容

要删除配置日志,必须具有特定的委派管理和 SQL Server 数据库权限。
  • 委派管理 — 必须具有允许读取部署配置的委派管理角色。内置的完全权限管理员角色具有此权限。自定义角色必须具有在“其他权限”类别中选择的“只读”或“管理”权限。

    要在删除配置日志记录数据之前为其创建备份,自定义角色还必须具有在“日志记录权限”类别中选择的“只读”或“管理”权限。

  • SQL Server 数据库 — 必须具备拥有可从数据库中删除记录权限的 SQL Server 登录。有两种方式实现此要求:
    • 使用具有 sysadmin 服务器角色的 SQL Server 数据库登录名,该角色允许在数据库服务器上执行任何活动。此外,serveradmin 或 setupadmin 服务器角色还允许执行删除操作。
    • 如果部署需要更高的安全性,请使用映射到具有从数据库中删除记录权限的数据库用户的非 sysadmin 数据库登录名。
      1. 在 SQL Server Management Studio 中,以“sysadmin”以外的服务器角色创建 SQL Server 登录名。
      2. 将登录名映射到数据库中的某个用户;SQL Server 将自动在数据库中以登录名创建用户。
      3. 在数据库角色成员身份中,为数据库用户至少指定一种角色成员身份:ConfigurationLoggingSchema_ROLE 或 dbowner。

      有关更多信息,请参阅 SQL Server Management Studio 文档。

删除配置日志

  1. 从 Studio,在左侧窗格中选择日志记录
  2. 在“操作”窗格中,单击删除日志
  3. 在删除日志前,系统会询问是否要创建日志备份。如果选择创建备份,请浏览到应保存备份存档的位置。备份将创建为 CSV 文件。
  4. 摘要页面中检查您的选择,然后单击完成

在清除配置日志后,日志删除是发布到空日志的第一项活动。该条目将提供有关删除日志的用户以及时间的详细信息。