LogParser
Mit dem LogParser stellt Microsoft ein sehr mächtiges Werkzeug bereit, was sich aber erst auf den zweiten Blick erschließt. All zu viele Administratoren scheuen den Zugriff auf eine Kommandozeile, die Eingabe von umfangreichen Kommandozeilen oder SQL-Statements oder gar das Schreiben eigener Scripte und DLLs. Auch wenn das gar nicht schwer ist, so kann LogParser auch ohne umfangreiche Entwicklung genutzt werden. Microsoft liefert ausreichend Beispiele mit, die leicht auf eigene Bedürfnisse angepasst werden können. Dann hingegen können sie z.B.:
- IIS-Logs
Eine Suche auf "verdächtige" URLs (z.B. MSADC) und eine eventuelle Häufung sind einfach zu ermitteln - EVENTLOG
Sie können mit LogParser auch das Eventlog als Quelle nutzen und gezielt bestimmte EventIDs oder Quellen und Meldungen ausgeben lassen. Dies ist besonders hilfreich, wenn Sie keine Überwachungssoftware wie MOM2005 o.ä. einsetzen. - CSV-Dateien
LogParser kann aber auch fast alle anderen tabellarischen Datenquellen als Datei einlesen und auswerten - und viele mehr

Sehr oft hilft LogParser damit, eigene VBScripte zum Parsen verschiedener Textdateien gänzlich zu ersetzen. Allerdings ist der Einsatz aufgrund der umfangreichen Funktion nicht gerade als "einfach" anzusehen, zumal die Steuerung über Kommandozeilen und Skriptaufrufe erfolgt.
LogParser EXE
Die meisten werden LogParser als Kommandozeile einsetzen, d.h. aus einer DOS-Box aufrufen und deren bestehende Protokolldateien laufen lassen. Über die Kommandozeile werden die Parameter angegeben
- Parameter 1: -i:Inputformat
Format der Eingabe. Dies kann z.B. sein:
EVT = Eventlog, ADS = LDAP, IIS = Protokolle des Webserver, REG = Registry, NETMON = Netzwerkmonitor und einige mehr. - Parameter 2: (Optional) Steuerung der Eingabe
z.B.: das Trennzeichen einer Texteingabedatei - Parameter 3: -o:Output Format
CSV = Kommaseparierte Datei
CHART = grafische Aufbereitung als GIF-Bild
SYSLOG, SQL, IIS, XML und einige andere. - Parameter 4: optionale Parameter für die Ausgabe
z.B.: das Trennzeichen einer CSV-Datei - Parameter 5: Abfrage
Hier steckt sicher dann dass "Know-how" eine Abfrage zu finden, die ihre Daten entsprechend aufbereitet
Durch die Nutzung als Kommandozeile eignet sich LogParser natürlich wunderbar für den regelmäßigen Start über den Microsoft Taskplaner zur Erzeugung von konsolidierten Daten. Wer braucht heute schon bei einem Webserver im Protokoll die gesamten Abrufe der Bilder, StyleSheets etc. Diese könnten durch Logparser einfach weggefiltert bzw. durch eine Summenzeile ersetzt werden.
LogParser COM-Objekt
Wenn Sie selbst programmieren, dann können Sie die gleichen Funktionen auch über das ebenfalls mit installierte COM-Objekt aus ihren Programmen nutzen: Im Object Browser sieht dies z.B. wie folgt aus:

(Erstellt mit dem Object Browser von Visual Basic 2005 Express)
Es gib ein Objekt mit dem Namen "MSUtil.LogQuery", welches Sie instanzieren und mit den Parametern für die Eingabe und Ausgeben (Ebenfalls Objekte) füttern, ehe Sie am Ende dann die "ExecuteBatch"-Methode aufrufen. Beispiele dazu finden Sie in Hilfe von Logparser (c:\programme\logparser 2.2\Logparser.chm)
Logparser GUIs
Die Kommandozeilen und SQL-Statements sind nicht jedermanns Sache
- Visual Log Parser
http://visuallogparser.codeplex.com/ - Log Parser Lizard GUI - FREE Query Software
http://www.lizard-labs.net/log_parser_lizard.aspx
Beispiele
Benutzer von OWA
(Quelle: TechNet)
logparser.exe "SELECT TO_STRING(time, 'HH') AS Hour, COUNT(*) AS Hits INTO hitPerSecond.jpg FROM ex*.log GROUP BY Hour ORDER BY Hour ASC" -i:IISW3C -o:CHART -chartType:ColumnClustered -chartTitle:"Hourly Hits" -groupSize:420x280
Bandbreitennutzung durch OWA
logparser file:QDailyHits.sql -i:IISW3C -o:CHART
-chartType:ColumnClustered -chartTitle:"owa.msxfaq.de - Volumen in KB pro Stunde"
-groupSize:420x280
Inhalt von QDailyHits.sql:
SELECT
TO_STRING(time, 'HH') AS Hour,
DIV(Sum(cs-bytes),1024) AS Incoming(K),
DIV(Sum(sc-bytes),1024) AS Outgoing(K)
INTO %chartname%
FROM %source%
GROUP BY Hour
Auswertung von SMTP-Logs und Mssagetracking Logs
LogParser kann auch die Exchange Logs und
LogParser.exe" -i:W3C -o:TSV "select TO_TIMESTAMP( STRCAT( '2006-10-15', STRCAT(' ', STRREV( SUB( STRREV( TIME ) , 'TMG ') ))),'yyyy-MM-dd h:m:s') AS DateTime, Recipient-Address AS RcptAddress, MSGID, total-bytes AS TotalBytes, Number-Recipients AS NumRcpts, Sender-Address AS Sender from c:\Programme\exchsrvr\log\20061015.log to test.tab WHERE recipient-Address LIKE '%%@%%' GROUP BY DateTime, MSGID, Recipient-Address, total-bytes, Number-Recipients, Sender-Address" -filemode:1
Auswertung der Nutzung von ActiveSync
Die Auswertung von ActiveSync ist sicher besonders interessant, da so eine Übersicht der Nutzung (und auch zu erwartenden Kosten) zu erhalten ist.
- Exchange 2003 - Active Sync reporting
http://blogs.technet.com/b/exchange/archive/2006/02/14/419562.aspx - More on Exchange ActiveSync Reporting with Log Parser - COM object
available
http://msexchangeteam.com//archive/2006/03/03/421149.aspx
Diesmal mit einem COM-Objekt, um das Parsen der IIS-URLs auszulagern -
IT's Showtime: IIS Data Mining with Log Parser 2.X
http://www.Microsoft.com/emea/itsshowtime/sessionh.aspx?videoid=265
Auf diesen Webseiten finden Sie sehr viele Beispiele. Besonders interessant ist hierbei eine DLL "lpeas.dll ", die bei der Auswertung von IIS_Logs die Besonderheiten von EAS genauer auseinander nimmt.
Weitere Links
- Logparser 2.2 Download
http://www.Microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07&displaylang=en - Professor Windows - May 2005 How
Log Parser 2.2 Works
http://www.Microsoft.com/technet/community/columns/profwin/pw0505.mspx - Log Parser 2.2
http://www.Microsoft.com/technet/scriptcenter/tools/logparser/default.mspx - Logparser als COM-Object verwenden
http://www.microsoft.com/technet/scriptcenter/resources/tales/sg0105.mspx - TechNet Log Parser Examples
http://www.Microsoft.com/technet/scriptcenter/tools/logparser/lpexamples.mspx - LogParser Advanced Exchange 2007 Transport Logs Troubleshooting using
Log Parser - Part 1+2
http://blogs.technet.com/b/exchange/archive/2007/11/12/447515.aspx
http://blogs.technet.com/b/exchange/archive/2007/11/28/447598.aspx - "Unofficial Support Site"
http://www.logparser.com/ - More on Exchange ActiveSync Reporting with Log Parser - COM object
available
http://msexchangeteam.com//archive/2006/03/03/421149.aspx - More fun with Logparser and Exchange logs
http://blogs.technet.com/b/exchange/archive/2007/09/12/446982.aspx - LogParser und RRDTool
http://geekswithblogs.net/woodenshoe/archive/2005/09/17/54194.aspx - Auswertung on BLOG-Logs mit Logparser samt grafischer Ausgabe
http://www.xenopz.com/blog/bartdeboeck/PermaLink,guid,04befb52-cfb3-4df8-98d2-f4640a2b6dae.aspx - LogParser Commandline Creator
http://www.anonymoos.com/logparser.php - Logparser Forum
http://www.logparser.com/instantforum33/default.aspx - Reporting on OWA Usage
http://www.msd2d.com/Content/Tip_viewitem_03NoAuth.aspx?id=d8f61600-172e-4ad4-a5b2-5e9526890cca§ion=Exchange - Monitoring IIS with Logparser and the RRDtool
http://geekswithblogs.net/woodenshoe/archive/2005/09/17/54194.aspx
Siehe dazu auch RRDTool -
http://www.anonymoos.com/logparser.php
Webseite zum Generieren von Logparser Kommandozeilen - Monitoring IIS with Logparser and the RRDtool
http://geekswithblogs.net/woodenshoe/archive/2005/09/17/54194.aspx - Coding Horror - Microsoft LogParser
http://www.codinghorror.com/blog/2005/08/microsoft-logparser.html - Forensic Log Parsing with Microsoft's LogParser
http://www.symantec.com/connect/articles/forensic-log-parsing-microsofts-logparser - Artikel zu Logparser von Marc Grothe
http://www.msexchange.org/tutorials/Using-Logparser-Utility-Analyze-ExchangeIIS-Logs.html - Parsing my IIS Log Files with LogParser 2.2 to learn more about Blogs
stats from NewsGator and NewsGatorOnline
http://www.hanselman.com/blog/ParsingMyIISLogFilesWithLogParser22ToLearnMoreAboutBlogsStatsFromNewsGatorAndNewsGatorOnline.aspx









