Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Ausführen eines VBscripts im Netzwerk

Frage Entwicklung VB for Applications

Mitglied: GQHDirigent

GQHDirigent (Level 1) - Jetzt verbinden

27.02.2008, aktualisiert 10.03.2008, 3456 Aufrufe, 2 Kommentare

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
Mitglied: pacobay
03.03.2008 um 19:00 Uhr
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
Bitte warten ..
Mitglied: GQHDirigent
10.03.2008 um 09:02 Uhr
Hallo nochmal

ich gebe zu das ist alles etwas kompliziert erklärt, obwohl es das gar nicht ist.

Also:
Ich möchte die original Logfiles von allen Servern jede Nacht auslesen und zentral abspeichern.
Es ist mir bereits gelungen die Files jede Nacht in eine Datenbank bzw. in eine *.csv-Datei zu schreiben.
Was ich nicht hinbekomme ist (um doppöelte Einträge zu vermeiden) das Logfile nach dem Export zu löschen bzw. es vorher auch nochmal in das *.evt-Format zu exportieren.

Wenn ich die Scripts lokal auf dem Server ausführe, auf dem das Logfile ausgelesen wird und auch geschrieben wird, dann funktioniert es. (also alles lokal)
Ich möchte aber von einem Server alle anderen auslesen und auf diesen einen Server alle Logfiles speichern - und das gelingt mir nicht. (also das Script läuft auf einem Server, der die Logfiles über Netzwerk ausliest und bei auf einem anderen Server´über Netzwerk abspeichert)

Hier nochmals die Scripts:

auslesen:

' Dieser Code archiviert ein Ereignisprotokoll in der angegebenen Datei.
' ------ Skript-Konfiguration ------
strLog = "Application" ' z.B. Anwendung
strdate = date
strBackupFile = "c:\app_" & year(strdate) & right("0" & month(strdate),2) & right("0" & day(strdate),2) & ".evt" ' z.B. c:\app_back.evt
strServer = "Servername" ' z.B. tokyo (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
WScript.Echo strLog & " gesichert in " & strBackupFile
next


löschen:

' Dieser Code löscht alle Ereignisse im festgelegten Ereignisprotokoll
' ------ Skript-Konfiguration ------
strLog = "system" ' z.B. Application
strServer = "Servername" ' z.B. tokyo (verwenden Sie "." für den lokalen Server)
' ------ ENDE DER KONFIGURATION ------
set objWMI = GetObject("winmgmts:\\" & 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 Ereignisprotokolle: " & colLogs.Count
WScript.Quit
end if
for each objLog in colLogs
objLog.ClearEventLog
next

Es funktioniert also lokal aber nicht übers Netzwerk
Kann mir jemand helfen

Danke
eismanhobbit
Bitte warten ..
Ähnliche Inhalte
Windows Server
gelöst exe aus Netzwerk über Client ausführen (Windows Server 2012 R2) (6)

Frage von peterpa zum Thema Windows Server ...

LAN, WAN, Wireless
Telekom CompanyConnect mit 27er-Netzwerk an Sophos UTM (17)

Frage von denny86 zum Thema LAN, WAN, Wireless ...

Router & Routing
Endgerät Routing über Netzwerk und VPN ins Internet (2)

Frage von amuelkx zum Thema Router & Routing ...

LAN, WAN, Wireless
gelöst Kein Zugriff auf Netzwerk über WLAN Windows 10 (mit iPad und iPhone schon) (2)

Frage von mimaxx zum Thema LAN, WAN, Wireless ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (31)

Frage von FA-jka zum Thema Windows 10 ...

LAN, WAN, Wireless
Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (15)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

Backup
Backup Wochen- Monats- Jahressicherung (13)

Frage von Meterpeter zum Thema Backup ...

RedHat, CentOS, Fedora
Fedora, RedHat, Centos: DNS-Search Domain setzen (13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...