「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>ログ収集いろいろ]]

* 目次 [#w5c5a79a]
#contents

*概要 [#a54487d8]
LogParserの機能は、ログの加工・分析を支援する。

*入出力形式 [#g6ff0939]
Log Parser 2.2が扱える主な入出力形式
|入力形式|出力形式|h
|IIS W3C拡張ログ形式|W3C拡張ログ形式|
|Microsoft IISログ・ファイル形式|SQL Serverへのデータ送信|
|NCSA共通ログ・ファイル形式|SYSLOGサーバへのデータ送信|
|集中バイナリ・ログ|チャート形式|
|HTTPエラー・ログ|テンプレートを利用したHTML形式|
|ODBCログ|XML形式|
|FTPログ・ファイル|CSV形式|
|SMTPログ・ファイル|タブ区切りテキスト形式|
|Windowsイベント・ログ|汎用的なテキスト形式|
|Windowsレジストリ||
|Active Directoryオブジェクト||
|ファイルとディレクトリ情報||
|NetMon.capキャプチャ・ファイル||
|拡張または結合されたNCSAログ・ファイル||
|W3C拡張ログ形式||
|ETW(Event Tracing for Windows)トレース||
|XML形式||
|CSV形式||
|タブ区切りテキスト形式||
|汎用的なテキスト形式||
|独自の入力形式(COM入力形式のCOM+プラグインの作成が必要)||

*データ変換や集計 [#r74d9dd3]
Log Parserには、上記入出力形式を変換するための~
専用のSQL形式エンジン・コアが実装されている。~
このためLog Parserを利用したデータ変換や集計では、~
-一般的なSQL句(SELECT、WHERE、GROUP BY、HAVING、ORDER BYなど)や、
-集計関数(SUM、COUNT、AVG、MAX、MINなど)、
-およびその豊富な関数(TO_STRING、SUBSTR、CASEなど)を

利用可能である。

*コマンド例 [#dcefe9c1]

-対象
--System
--Application
--Security

-抽出時間帯
--<時間帯フラグ>:対象時間帯
+++:前日16時~当日0時未満
+++:当日0時以降~当日7時未満
+++:当日7時以降~当日16時未満	

-コマンド
--前日16時~当日0時未満
 LogParser
  "SELECT EventLog,TimeGenerated,EventID,EventTypeName,EventCategoryName,SourceName, ComputerName,SID,Message
   INTO 出力PATH + <サーバ名>_<ログ種別ID>_<年月日>_1.log
   FROM System
   WHERE TO_DATE(TimeGenerated) = SUB(TO_TIMESTAMP('引数の<日付>','yyyy/MM/dd'), TIMESTAMP('2','d'))
    AND TO_TIME(TimeGenerated) >= TIMESTAMP('16','h')"
  -i:EVT -o:CSV -q:ON -resolveSIDs:ON

--当日0時以降~当日7時未満				
 LogParser
  "SELECT EventLog, TimeGenerated, EventID,EventTypeName, EventCategoryName, SourceName, ComputerName, SID, Message
   INTO 出力PATH + <サーバ名>_<ログ種別ID>_<年月日>_1.log
   FROM System
   WHERE TO_DATE(TimeGenerated) = TO_TIMESTAMP('引数の<日付>','yyyy/MM/dd')
    AND TO_TIME(TimeGenerated) < TIMESTAMP('7','h')"
 -i:EVT -o:CSV -q:ON -resolveSIDs:ON

--当日7時以降~当日16時未満
 LogParser
  "Select EventLog, TimeGenerated, EventID, EventTypeName, EventCategoryName, SourceName, ComputerName, SID, Message
   INTO 出力PATH + <サーバ名>_<ログ種別ID>_<年月日>_1.log
   FROM System
   WHERE TO_DATE(TimeGenerated) = TO_TIMESTAMP('引数の<日付>','yyyy/MM/dd')
    AND TO_TIME(TimeGenerated) >= TIMESTAMP('7','h')
    AND TO_TIME(TimeGenerated) < TIMESTAMP('16','h')"
  -i:EVT -o:CSV -q:ON -resolveSIDs:ON
 ※ "From System" の部分は、"From Application"、"From Security"にも対応
 ※ 日付の部分は、引数の値に変更する。

*参考 [#rc0acebb]
-Log Parserの概要 - @IT~
http://www.atmarkit.co.jp/fwin2k/operation/logparser1/logparser1_01.html
++Log Parserで何ができるのか~
http://www.atmarkit.co.jp/fwin2k/operation/logparser1/logparser1_02.html
++Log Parserの入手とインストール~
http://www.atmarkit.co.jp/fwin2k/operation/logparser1/logparser1_03.html
++Log ParserをWSHスクリプトから使う~
http://www.atmarkit.co.jp/fwin2k/operation/logparser1/logparser1_04.html

----
Tags: [[:Windows]], [[:障害対応]], [[:性能]], [[:テスト]], [[:デバッグ]], [[:ツール類]]
Tags: [[:Windows]], [[:障害対応]], [[:性能]], [[:デバッグ]], [[:テスト]], [[:ツール類]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS