我有一个 Powershell 脚本,它收集一系列性能计数器并将它们存储在 SQL 服务器的日志文件中。
目前该日志的输出包括以下列:PDHCSV40EasternDaylightTime240
这会将 MM:SS.ms 推送到该列中,但没有给出小时或日期,这样一小时后收集的任何计数器都变得毫无价值。
有什么方法可以更改 Powershell 脚本中该列的格式?最终,日志存储在 .csv 中,然后我使用调用 LogParser 2.2 的 .bat 文件对其进行清理并输入 SQL,因此我可以使用 SQL 脚本来创建基于 RowNumber 的日期时间。
以下是实际创建日志的代码:
$Folder="C:\Perflogs\SQLLogs" # Change the bit in the quotation marks to whatever directory you want the log file stored in
$Computer = $env:COMPUTERNAME
$1GBInBytes = 1GB
$p = "TONS OF COUNTERS";
# If you want to change the performance counters, change the above list. However, these are the recommended counters for a SQL machine.
$date = Get-Date -Format 'MM_dd_yyyy HH_mm_ss'
$file = "$Folder\SQL_log_$date.csv"
if( !(test-path $folder)) {New-Item $Folder -type directory}
Get-Counter -counter $p -SampleInterval 60 -Continuous | export-counter -Path $File -FileFormat CSV