Sapphire Geschrieben 28. September 2005 Geschrieben 28. September 2005 Hi @all, ich brauch ein Skript (vorzugsweise Perl oder VB Skript, a´ndere Sprachen sind aber auch ok, ich kanns übersetzen^^) über das ich die Eventlogs (Security, Application und System Logfiles) von Windows 2003 Servern auf einen anderen Host sammeln kann und in diesen logfiles nach einem Bestimmten String (nach der ID6008 suchen) kann. Könnt ihr mir da helfen? Im Grunde sollte das Skript so ähnlich wie das Windows 2000 Resource Kit Programm "dumpler" die Logfiles vom Server abholen und an eine andere Stelle (Server) kopieren. Die Server von denen die Logs kommen sollen stehen in einer Serverlist.txt Datei die jede Nacht aktualisiert wird. Der Servername in dessen Log die ID 6008 vorkommt soll in eine andere textdatei geschrieben werden, zur auswertung. hat jemand erfahrung mit skripten die loggfiles abholen können oder kennt jemand die schnittstelle oder wie ich den server ansprechen muss um an die loggfiles zu gelangen? wenn jemand sagt er wüsste eventuell wie es gehen könnte, dann kann ich es auch nochmal besser erläutern, war jetzt nur nen schnelldurchgang^^ schonmal thx greez Sapph Zitieren
etreu Geschrieben 29. September 2005 Geschrieben 29. September 2005 Wenn du jetzt noch verrätst, wie du auf die Logfiles zugreifst (Dateisystem, HTTP, FTP, ...) dann könnte man dir bestimmt weiterhelfen. Denn soweit wie du es bisher beschreiben hast, stellt keine wirkliche Herausforderung dar. Zitieren
Amstelchen Geschrieben 29. September 2005 Geschrieben 29. September 2005 scripte für eventlog-dateien auf windows gibts ja verschiedene. ob du das jetzt mit vb, vbs, php oder perl machst, solltest du dir vieleicht trotzdem vorher überlegen. ausserdem bleibt zu entscheiden, ob du die logdateien direkt über die windows-api ausliest, oder aber aus dem dateisystem nimmst und binär öffnest. die schnittstelle besteht im grunde darin, folgende struktur auszulesen und darzustellen: typedef struct _EVENTLOGRECORD { DWORD Length; DWORD Reserved; DWORD RecordNumber; DWORD TimeGenerated; DWORD TimeWritten; DWORD EventID; WORD EventType; WORD NumStrings; WORD EventCategory; WORD ReservedFlags; DWORD ClosingRecordNumber; DWORD StringOffset; DWORD UserSidLength; DWORD UserSidOffset; DWORD DataLength; DWORD DataOffset; } s'Amstel Zitieren
Sapphire Geschrieben 29. September 2005 Autor Geschrieben 29. September 2005 Wenn du jetzt noch verrätst, wie du auf die Logfiles zugreifst (Dateisystem, HTTP, FTP, ...) dann könnte man dir bestimmt weiterhelfen. Denn soweit wie du es bisher beschreiben hast, stellt keine wirkliche Herausforderung dar. Also das wichtigste im Moment ware: Ein Skript das aus einer Serverliste Servernamen Zeilenweise ausliest, und von diesen Servern die Eventlogs (Security, Application und System Logs) auf einen anderen Server in einen bestimmten Ordner kopiert. Wenn alle Logfiles eingesammelt sind soll nach einem bestimmten String (z.B der Prozess ID6008) gesucht werden. Tritt die Prozess ID6008 auf einem Server aus wird dieser Servername in eine TextFile geschrieben. Also am besten in Perl, falls das zu realisieren ist. Aber VBSkript würde auch gehen. Ich weiß nur nicht wie ich an die Loggs komme. Am besten wäre es mit einer Art Netmap von jedem Server das Verzeichniss C:\WINNT\system32\config zu mappen und die Eventlogs einfach mit einem copy Befehl auf einen anderen host zu kopieren. Is des irgendwie Möglich? greez Sapph Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.