Log Parserを利用してIISのログからレスポンス時間の長いリクエストを列挙する
Log Parserを利用してレスポンス時間の長いリクエストを列挙する手順を紹介します。
概要
IISのWebサーバーでレスポンスに時間がかかっていたページのログを抜き出したいことがあります。
この記事では、Log Parserを利用してサーバーからのレスポンスに時間がかかっているログを抽出します。
事前準備
Log Parserをインストールします。インストール手順は
こちらの記事を参照して下さい。
手順
次のクエリファイルを準備します。
Select Top 100
LogRow as [Line Number],
date as [Date],
time as [Time],
c-ip as [Client-IP],
s-ip as [Server IP],
s-port as [Server Port],
cs-method as [Request Verb],
cs-uri-stem as [Request URI],
sc-bytes as [Bytes sent],
sc-status as [Status],
sc-substatus as [Sub-status],
sc-win32-status as [Win 32 Status],
time-taken as [Time Taken]
From
(IISのログファイル名)
Order by time-taken desc
IISのログファイルで複数のログファイルから抽出する場合は
*
(ワイルドカード)文字が利用できます。
また、複数のファイルを指定する場合は、
,
で区切り複数のファイルを記述できます。
Select Top 50
LogRow as [Line Number],
date as [Date],
time as [Time],
c-ip as [Client-IP],
s-ip as [Server IP],
s-port as [Server Port],
cs-method as [Request Verb],
cs-uri-stem as [Request URI],
sc-bytes as [Bytes sent],
sc-status as [Status],
sc-substatus as [Sub-status],
sc-win32-status as [Win 32 Status],
time-taken as [Time Taken]
From
C:\inetpub\logs\LogFiles\W3SVC2\u_ex210906.log
Order by time-taken desc
Select Top 50
LogRow as [Line Number],
date as [Date],
time as [Time],
c-ip as [Client-IP],
s-ip as [Server IP],
s-port as [Server Port],
cs-method as [Request Verb],
cs-uri-stem as [Request URI],
sc-bytes as [Bytes sent],
sc-status as [Status],
sc-substatus as [Sub-status],
sc-win32-status as [Win 32 Status],
time-taken as [Time Taken]
From
C:\inetpub\logs\LogFiles\W3SVC9\*.*
Order by time-taken desc
Select Top 50
LogRow as [Line Number],
date as [Date],
time as [Time],
c-ip as [Client-IP],
s-ip as [Server IP],
s-port as [Server Port],
cs-method as [Request Verb],
cs-uri-stem as [Request URI],
sc-bytes as [Bytes sent],
sc-status as [Status],
sc-substatus as [Sub-status],
sc-win32-status as [Win 32 Status],
time-taken as [Time Taken]
From
C:\inetpub\logs\LogFiles\W3SVC2\u_ex210906.log,
C:\inetpub\logs\LogFiles\W3SVC2\u_ex210907.log,
C:\inetpub\logs\LogFiles\W3SVC2\u_ex210908.log,
C:\inetpub\logs\LogFiles\W3SVC2\u_ex210909.log,
C:\inetpub\logs\LogFiles\W3SVC2\u_ex210910.log,
C:\inetpub\logs\LogFiles\W3SVC2\u_ex210911.log
Order by time-taken desc
問い合わせ用のファイルが作成できたら次のコマンドを実行します。
.\LogParser.exe -i:IISW3C file:(クエリファイル名) -o:DataGrid -q:off
.\LogParser.exe -i:IISW3C file:query.sql -o:DataGrid -q:off
.\LogParser.exe -i:IISW3C file:c:\data\query-example1.sql -o:DataGrid -q:off
実行結果
コマンドを実行すると新しくウィンドウが表示され、ログを検索した結果が表示されます。
ウィンドウ表示直後は10件しか結果が表示されていません。検索結果をさらに表示する場合は、ウィンドウ右下の[All rows]ボタンをクリックします。
[All rows]ボタンをクリックすると、全件の結果が表示されます。
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。