Ausführen eines VBscripts im Netzwerk
Hallo
ich weiß nicht mehr weiter. Ich habe ein Script, das mir ein Eventlog auf einem Win2000Server ausliest und auf einem lokalen Pfad ablegt.
Das funktioniert bestens.
Hier das Script welches funktioniert.
Code:
' Dieser Code archiviert ein Ereignisprotokoll in der angegebenen Datei.
' ------ Skript-Konfiguration ------
strLog = "application" ' z.B. application
strdate = date
strBackupFile = "c:\app_back.evt" ' z.B. c:\app_back.evt
strServer = "." ' z.B. servername (verwenden Sie "." für den lokalen Server)
' ------ ENDE DER KONFIGURATION ------
set objWMI = GetObject(_
"winmgmts:{impersonationLevel=impersonate,(Backup)}!\\" & _
strServer & "\root\cimv2")
set colLogs = objWMI.ExecQuery("Select * from Win32_NTEventlogFile Where " & _
" Logfilename = '" & strLog & "'")
if colLogs.Count <> 1 then
WScript.Echo "Fataler Fehler. Anzahl gefundener Ereigniosprotokolle: " & colLogs.Count
WScript.Quit
end if
for each objLog in colLogs
objLog.BackupEventlog strBackupFile
next
So, nun möchte ich das Script so schreiben, das er das Log von einem anderen Server holt
Diese Script fun ktioniert nicht - aber es kommt auch keine Fehlermeldung - es passiert einfach nichts.
Ich habe einfach strServer = "servername" geändert. Auch mit dem fullqualified Domainname habe ich es versucht.
An den Berechtigungen kann es nicht liegen, da ich das Log dort per Hand auslesen kann.
Kann mir jemand helfen ??
Code:
' Dieser Code archiviert ein Ereignisprotokoll in der angegebenen Datei.
' ------ Skript-Konfiguration ------
strLog = "application" ' z.B. application
strdate = date
strBackupFile = "c:\app_back.evt" ' z.B. c:\app_back.evt
strServer = "servername" ' z.B. servername (verwenden Sie "." für den lokalen Server)
' ------ ENDE DER KONFIGURATION ------
set objWMI = GetObject(_
"winmgmts:{impersonationLevel=impersonate,(Backup)}!\\" & _
strServer & "\root\cimv2")
set colLogs = objWMI.ExecQuery("Select * from Win32_NTEventlogFile Where " & _
" Logfilename = '" & strLog & "'")
if colLogs.Count <> 1 then
WScript.Echo "Fataler Fehler. Anzahl gefundener Ereigniosprotokolle: " & colLogs.Count
WScript.Quit
end if
for each objLog in colLogs
objLog.BackupEventlog strBackupFile
next
Was leider auch nicht funktioniert ist das Lokale Logfile auf einer Share abzulegen.
Hier das Script
Code:
' Dieser Code archiviert ein Ereignisprotokoll in der angegebenen Datei.
' ------ Skript-Konfiguration ------
strLog = "application" ' z.B. application
strdate = date
strBackupFile = "\\servername\share\app_back.evt" ' z.B. c:\app_back.evt
strServer = "." ' z.B. servername (verwenden Sie "." für den lokalen Server)
' ------ ENDE DER KONFIGURATION ------
set objWMI = GetObject(_
"winmgmts:{impersonationLevel=impersonate,(Backup)}!\\" & _
strServer & "\root\cimv2")
set colLogs = objWMI.ExecQuery("Select * from Win32_NTEventlogFile Where " & _
" Logfilename = '" & strLog & "'")
if colLogs.Count <> 1 then
WScript.Echo "Fataler Fehler. Anzahl gefundener Ereigniosprotokolle: " & colLogs.Count
WScript.Quit
end if
for each objLog in colLogs
objLog.BackupEventlog strBackupFile
next
Danke schonmal vorab
eismanhobbit
ich weiß nicht mehr weiter. Ich habe ein Script, das mir ein Eventlog auf einem Win2000Server ausliest und auf einem lokalen Pfad ablegt.
Das funktioniert bestens.
Hier das Script welches funktioniert.
Code:
' Dieser Code archiviert ein Ereignisprotokoll in der angegebenen Datei.
' ------ Skript-Konfiguration ------
strLog = "application" ' z.B. application
strdate = date
strBackupFile = "c:\app_back.evt" ' z.B. c:\app_back.evt
strServer = "." ' z.B. servername (verwenden Sie "." für den lokalen Server)
' ------ ENDE DER KONFIGURATION ------
set objWMI = GetObject(_
"winmgmts:{impersonationLevel=impersonate,(Backup)}!\\" & _
strServer & "\root\cimv2")
set colLogs = objWMI.ExecQuery("Select * from Win32_NTEventlogFile Where " & _
" Logfilename = '" & strLog & "'")
if colLogs.Count <> 1 then
WScript.Echo "Fataler Fehler. Anzahl gefundener Ereigniosprotokolle: " & colLogs.Count
WScript.Quit
end if
for each objLog in colLogs
objLog.BackupEventlog strBackupFile
next
So, nun möchte ich das Script so schreiben, das er das Log von einem anderen Server holt
Diese Script fun ktioniert nicht - aber es kommt auch keine Fehlermeldung - es passiert einfach nichts.
Ich habe einfach strServer = "servername" geändert. Auch mit dem fullqualified Domainname habe ich es versucht.
An den Berechtigungen kann es nicht liegen, da ich das Log dort per Hand auslesen kann.
Kann mir jemand helfen ??
Code:
' Dieser Code archiviert ein Ereignisprotokoll in der angegebenen Datei.
' ------ Skript-Konfiguration ------
strLog = "application" ' z.B. application
strdate = date
strBackupFile = "c:\app_back.evt" ' z.B. c:\app_back.evt
strServer = "servername" ' z.B. servername (verwenden Sie "." für den lokalen Server)
' ------ ENDE DER KONFIGURATION ------
set objWMI = GetObject(_
"winmgmts:{impersonationLevel=impersonate,(Backup)}!\\" & _
strServer & "\root\cimv2")
set colLogs = objWMI.ExecQuery("Select * from Win32_NTEventlogFile Where " & _
" Logfilename = '" & strLog & "'")
if colLogs.Count <> 1 then
WScript.Echo "Fataler Fehler. Anzahl gefundener Ereigniosprotokolle: " & colLogs.Count
WScript.Quit
end if
for each objLog in colLogs
objLog.BackupEventlog strBackupFile
next
Was leider auch nicht funktioniert ist das Lokale Logfile auf einer Share abzulegen.
Hier das Script
Code:
' Dieser Code archiviert ein Ereignisprotokoll in der angegebenen Datei.
' ------ Skript-Konfiguration ------
strLog = "application" ' z.B. application
strdate = date
strBackupFile = "\\servername\share\app_back.evt" ' z.B. c:\app_back.evt
strServer = "." ' z.B. servername (verwenden Sie "." für den lokalen Server)
' ------ ENDE DER KONFIGURATION ------
set objWMI = GetObject(_
"winmgmts:{impersonationLevel=impersonate,(Backup)}!\\" & _
strServer & "\root\cimv2")
set colLogs = objWMI.ExecQuery("Select * from Win32_NTEventlogFile Where " & _
" Logfilename = '" & strLog & "'")
if colLogs.Count <> 1 then
WScript.Echo "Fataler Fehler. Anzahl gefundener Ereigniosprotokolle: " & colLogs.Count
WScript.Quit
end if
for each objLog in colLogs
objLog.BackupEventlog strBackupFile
next
Danke schonmal vorab
eismanhobbit
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 81755
Url: https://administrator.de/contentid/81755
Ausgedruckt am: 22.11.2024 um 18:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo eismanhobbit
Folgende Tool können dir im Bereich WMI weiterhelfen
Scriptomatic 2.0
WMICodeCreator
WMIDiag
alle kostenlos bei MS http://www.microsoft.com/technet/scriptcenter/createit.mspx
zu finden
unter Umständen für deine Problemstellung auch der Log Parser 2.2
quelle: dito
Zu deinen Scripten
Leider verstehe ich nicht ganz von welchen logs hier eigentlich die rede ist
Zugriff auf die aktuellen systemlogs
Zugriff auf backups dieser und wenn ja: wo kommen die her
anders erstellte Logs? wenn ja: wo kommen die her
Und warum dann diese nicht einfach via FSO kopieren moven oder dergleichen
ciao pacobay
Folgende Tool können dir im Bereich WMI weiterhelfen
Scriptomatic 2.0
WMICodeCreator
WMIDiag
alle kostenlos bei MS http://www.microsoft.com/technet/scriptcenter/createit.mspx
zu finden
unter Umständen für deine Problemstellung auch der Log Parser 2.2
quelle: dito
Zu deinen Scripten
Leider verstehe ich nicht ganz von welchen logs hier eigentlich die rede ist
Zugriff auf die aktuellen systemlogs
Zugriff auf backups dieser und wenn ja: wo kommen die her
anders erstellte Logs? wenn ja: wo kommen die her
Und warum dann diese nicht einfach via FSO kopieren moven oder dergleichen
ciao pacobay