如何配置 Windows Performance DataCollectors 以正确记录 DST?

Mic*_*ael 5 windows performancecounter

作为应用程序的一部分,我正在尝试使用 Windows 性能计数器来监视机器运行状况。我有一些 DataCollector 配置为将数据写出为 CSV 或 BLG 格式。但是,我注意到时间戳没有每个样本时间戳的 TZ 信息,每个文件只有一次。这意味着在单个数据文件中,我将看到以下内容:

"(PDH-CSV 4.0) (GMT Standard Time)(-60)","\\MACHINE-NAME\% C2 Time"
"10/29/2017 01:59:44.562","88.359340674585567"
"10/29/2017 01:59:59.562","93.754278507632279"
"10/29/2017 01:00:14.562","89.834673388599242"
"10/29/2017 01:00:29.563","94.014449309223536"
Run Code Online (Sandbox Code Playgroud)

类似地,在转换中,您会看到丢失了一个小时的数据(与该小时离线的机器相比,这更难消除歧义)。

我认为二进制数据可能会存储更多信息,因此我也以 BLG 格式创建了相同的指标,并使用 PowerShell 读取信息。但是,在这种情况下,我仍然无法获取每个时间戳的时区信息。例如,

# $counters = Import-Counter -Path mysamples.blg

# $counters[10].Timestamp
29 October 2017 01:59:59

# $counters[11].Timestamp
29 October 2017 01:00:14

# $counters[10].Timestamp.IsDaylightSavingTime()
False
# $counters[11].Timestamp.IsDaylightSavingTime()
False

# $counters[10].Timestamp.ToFileTimeUtc()
131537159995620000
# $counters[11].Timestamp.ToFileTimeUtc()
131537124145620000
Run Code Online (Sandbox Code Playgroud)

有没有办法获得与性能计数器数据中的时间戳相关联的正确 TZ 信息,或者是否有办法将 UTC 时间添加到日志而不是 TZ 偏移时间戳?