0

perfmon を実行できないため、logparer を使用して Web サービスの実行時間を監視する必要がある状況があります。これは、私のクライアントの不当な要求のせいです。

クエリを文書化しましたが、常に最新のファイルを監視したいので、u_ex110713.log を動的ファイル名に置き換えたいと考えています。どうすれば実現できますか。私はdosバッチファイルを使用することにオープンであるため、それをスケジュールして、しきい値が30秒に増加した場合に警告する別のバッチに結果をパイプできます。

select  TO_STRING(TO_LOCALTIME(TO_TIMESTAMP(date, time)), 'yyyy-MM-dd HH:mm')  as timestamps,
count(timestamps),avg(div(time-taken,1000)),max(div(time-taken,1000)),min(div(time-taken,1000))
from  \\server.qc.cgo.ca\c$\inetpub\logs\LogFiles\W3SVC1\u_ex110713.log

group by timestamps
order by timestamps asc
4

1 に答える 1

1

正直なところ、私があなたの立場だったら、*ex*.logログを毎月圧縮して削除するプロセスが整っていることを知って、ディレクトリでクエリを実行することになります。

現在のシステム時刻を取得し、それを使用して FROM ステートメントを作成することもできますが、残念ながら私の知識はそれほど多くないため、システム時刻を UTC で取得する方法を知りません (これは、 IIS の既定値を使用している場合は、ファイルのロールオーバーが必要になります)。

とはいえ、ログを使用してタイミング結果をトリガーすることが最善の策であるかどうかはわかりません。これはシステム自体に組み込むべきではありませんか?

于 2011-07-30T20:47:09.583 に答える