LogParser получает результаты за последний час

На моем компьютере постоянно работают мониторы процессора. Я хотел бы, чтобы синтаксический анализатор журнала анализировал результаты только за последний час. Кто-нибудь знает как это сделать?

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') )

последняя строка приводит к ошибке. Кто-нибудь знает, как я могу это сделать? Спасибо!


person pall    schedule 12.07.2011    source источник


Ответы (1)


Ваше предложение 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') )

В вашем конкретном случае вы должны быть в безопасности, просто используя этот бит предложения WHERE:

SUB( TO_LOCALTIME(SYSTEM_TIMESTAMP()), TIMESTAMP('0000-01-01 01:00', 'yyyy-MM-dd HH:mm') )
person James Skemp    schedule 30.07.2011