LogParser从最后一小时获得结果

pal*_*all 1 logparser

我有cpu监视器不断在我的计算机上工作.我想记录解析器只解析过去一小时的结果.有谁知道这是怎么做到的吗?

SELECT TO_STRING(QUANTIZE(TO_TIMESTAMP(Field1, 'mm/dd/yyyy HH:mm:ss.ll'),10 ), 'hh:mm:ss') AS Time, AVG(TO_REAL(Field2)) AS Cpu
INTO .\output\cpu.csv
FROM .\logs\*.csv   
WHERE Time >= SUB( TO_LOCALTIME(SYSTEM_TIMESTAMP()), TIMESTAMP('0000-01-02', 'yyyy-MM-dd') )
Run Code Online (Sandbox Code Playgroud)

最后一行导致错误.有谁知道我该怎么做?谢谢!

Jam*_*emp 5

你的WHERE子句是错误的; 而不是拉1个小时,你拉1天.

以下是IIS日志的工作原理:

SELECT TO_STRING(QUANTIZE(TO_TIMESTAMP(date, time),10 ), 'hh:mm:ss') AS Time
INTO asdf.csv
FROM W3SVC5\*ex*.log
WHERE TO_LOCALTIME(TO_TIMESTAMP(date, time)) >= SUB( TO_LOCALTIME(SYSTEM_TIMESTAMP()), TIMESTAMP('0000-01-01 01:00', 'yyyy-MM-dd HH:mm') )
Run Code Online (Sandbox Code Playgroud)

对于您的特定情况,您应该安全地使用WHERE子句的这一位:

SUB( TO_LOCALTIME(SYSTEM_TIMESTAMP()), TIMESTAMP('0000-01-01 01:00', 'yyyy-MM-dd HH:mm') )
Run Code Online (Sandbox Code Playgroud)