2

私のコンピューターでは常にCPUモニターが動作しています。過去 1 時間の結果のみを解析するログ パーサーが必要です。誰もそれを行う方法を知っていますか?

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

最後の行はエラーになります。どうすればそれができるか知っていますか?ありがとう!

4

1 に答える 1

7

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') )
于 2011-07-30T20:20:48.253 に答える