relog

适用范围:Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012

将性能计数器日志中的性能计数器提取为其他格式,例如 text-TSV(适合制表符分隔的文本)、text-CSV(适合逗号分隔的文本)、binary-BIN 或 SQL。

注意

若要详细了解如何将 relog 合并到 Windows Management Instrumentation (WMI) 脚本,请查看脚本博客

语法

relog [<filename> [<filename> ...]] [/a] [/c <path> [<path> ...]] [/cf <filename>] [/f  {bin|csv|tsv|SQL}] [/t <value>] [/o {outputfile|DSN!CounterLog}] [/b <M/D/YYYY> [[<HH>:] <MM>:] <SS>] [/e <M/D/YYYY> [[<HH>:] <MM>:] <SS>] [/config {<filename>|i}] [/q]

参数

参数 说明
filename [filename ...] 指定现有性能计数器日志的路径名。 可指定多个输入值。
-a 追加输出文件,而不是覆盖。 此选项不适用于默认始终追加的 SQL 格式。
-c path [path ...] 指定要记录的性能计数器路径。 若要指定多个计数器路径,请用空格分隔它们,并将计数器路径用引号引起来(例如 "path1 path2")。
-cf filename 指定文本文件的路径名称,该文件列出要包含在 relog 文件中的性能计数器。 使用此选项可列出输入文件中的计数器路径,每行一个。 默认设置是重新记录原始日志文件中的所有计数器。
-f {bin | csv | tsv | SQL} 指定输出文件格式的路径名。 默认格式为 bin。 对于 SQL 数据库,输出文件指定 DSN!CounterLog。 可使用 ODBC 管理器配置 DSN(数据库系统名称)来指定数据库位置。
-t value 指定 n 条记录中的采样间隔。 包含 relog 文件中全部第 n 个数据点。 默认值为每个数据点。
-o {Outputfile | SQL:DSN!Counter_Log} 指定要在其中写入计数器的输出文件或 SQL 数据库的路径名。

注意:对于 64 位和 32 位版本的 relog.exe,必须在系统上的 ODBC 数据源中定义 DSN(分别定义 64 位和 32 位)。 使用“SQL Server”ODBC 驱动程序定义 DSN。

-b <M/D/YYYY> [[<HH>:]<MM>:]<SS>] 指定从输入文件复制第一条记录的开始时间。 日期和时间必须采用 M/D/YYYYHH:MM:SS 这一确切格式。
-e <M/D/YYYY> [[<HH>:]<MM>:]<SS>] 指定从输入文件复制最后一条记录的结束时间。 日期和时间必须采用 M/D/YYYYHH:MM:SS 这一确切格式。
-config {filename | i} 指定包含命令行参数的设置文件的路径名。 如果使用配置文件,可以使用 -i 作为可放置在命令行上的输入文件列表的占位符。 如果使用命令行,请不要使用 -i。 还可使用通配符(例如 *.blg)来一次指定多个输入文件名。
-q 显示输入文件中指定的日志文件的性能计数器和时间范围。
-y 对所有问题回答“是”来绕过提示。
/? 在命令提示符下显示帮助。

注解

  • 计数器路径的常规格式如下:[\<computer>] \<object>[<parent>\<instance#index>] \<counter>],其中格式的父级、实例、索引和计数器组件可能包含有效名称或通配符。 并非所有计数器都需要计算机、父级、实例和索引组件。

  • 根据计数器本身确定要使用的计数器路径。 例如,LogicalDisk 对象具有 实例 <index>,因此必须提供 <#index> 或通配符。 因此,可使用以下格式:\LogicalDisk(*/*#*)\\*

  • 相比之下,Process 对象不需要实例 <index> 因此,可使用以下格式:\Process(*)\ID Process

  • 如果在父级名称中指定通配符,则将返回与指定实例和计数器字段匹配的指定对象的所有实例。

  • 如果在实例名称中指定通配符,则当与指定索引对应的所有实例名称都与通配符匹配时,将返回指定对象和父对象的所有实例。

  • 如果在计数器名称中指定通配符,则返回指定对象的所有计数器。

  • 不支持计数器路径字符串部分匹配(例如 pro*)。

  • 计数器文件是列出现有日志中一个或多个性能计数器的文本文件。 复制日志或 /q 输出中的完整计数器名称(<computer>\<object>\<instance>\<counter> 格式)。 在每一行上列出一个计数器路径。

  • 运行时,relog 命令会从输入文件中的每条记录复制指定的计数器,并在必要时转换格式。 允许在计数器文件中使用通配符路径。

  • 使用 /t 参数指定输入文件按每 nth 条记录的间隔插入到输出文件中。 默认情况下,从每条记录重新记录数据。

  • 可指定输出日志包含开始时间(即 /b)之前的记录,以便为需要格式化值的计算值的计数器提供数据。 输出文件将包含输入文件中时间戳小于 /e(即,结束时间)参数的最后几条记录。

  • 与 /config 选项一起使用的设置文件的内容应采用以下格式:<commandoption>\<value>,其中 <commandoption> 是命令行选项,<value> 指定其值。

##Q# 示例

若要以固定间隔 30 重新采样现有跟踪日志,列出计数器路径、输出文件和格式,请键入:

relog c:\perflogs\daily_trace_log.blg /cf counter_file.txt /o c:\perflogs\reduced_log.csv /t 30 /f csv

若要以固定间隔 30 重新采样现有跟踪日志,列出计数器路径和输出文件,请键入:

relog c:\perflogs\daily_trace_log.blg /cf counter_file.txt /o c:\perflogs\reduced_log.blg /t 30

若要将现有跟踪日志重新采样到数据库中,请键入:

relog "c:\perflogs\daily_trace_log.blg" -f sql -o "SQL:sql2016x64odbc!counter_log"