Top-Themen

Aktuelle Themen (A bis Z)

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

gelöst Variable Abfrage der Eventlogs mit Powershell 1.0

Mitglied: Feuerstein08

Feuerstein08 (Level 1) - Jetzt verbinden

06.04.2010, aktualisiert 14:58 Uhr, 7474 Aufrufe, 7 Kommentare

Ich verstehe den Unterschied nicht ...

Um Abfragen der Eventlogs flexibel zu gestalten, wollte ich die zu suchenden Events mittels einer Variable übergeben.

Beispiel:
01.
get-eventlog -logname system | where-object {($_.Eventid -eq 6005)} | select Index, EventID, Source, Message
02.

03.
                        Index                       EventID Source                        Message
04.
                        -----                       ------- ------                        -------
05.
                         8824                          6005 EventLog                      The Event log service was ...
06.
                         8693                          6005 EventLog                      The Event log service was ...
07.
                         8550                          6005 EventLog                      The Event log service was ...
08.
                         8413                          6005 EventLog                      The Event log service was ...
09.
                         8169                          6005 EventLog                      The Event log service was ...
Packe ich die Abfrage in eine Variable und teste damit die Ausgabe, dann sieht das so aus:
01.
$query = '($Eventid -eq 6005)'
02.
get-eventlog -logname system | where-object { $query } |select EventID, Source, Message
03.

04.
                        Index                       EventID Source                        Message
05.
                        -----                       ------- ------                        -------
06.
                         9028                          7036 Service Control Manager       The description for Event ...
07.
                         9027                            19 Microsoft-Windows-WindowsU... The description for Event ...
08.
                         9026                          7036 Service Control Manager       The description for Event ...
09.
                         9025                          7036 Service Control Manager       The description for Event ...
10.
                         9024                          7040 Service Control Manager       The description for Event ...
11.
                         9023                          4383 Microsoft-Windows-Servicing   Windows Servicing complete...
12.
                         9022                          4373 Microsoft-Windows-Servicing   Windows Servicing successf...
13.
...
Warum, oder besser: wie kann ich die Abfrage korrekt mit meiner Variablen gestalten?

Für jede gute Idee ist Willkommen ..
Feuerstein08
Mitglied: Snowman25
06.04.2010 um 13:50 Uhr
Hallo Feuerstein08,

Reicht dir CSCRIPT EVENTQUERY.vbs <arguments> nicht?
Wenn du das Skript nicht hast (k.A. ob das von PS 1.0 kommt oder bei XP Pro schon dabei ist etc..) kann ich es dir gerne schicken.
Normalerweise befindet es sich in %windir%/System32

Greetz
Snow
Bitte warten ..
Mitglied: Feuerstein08
06.04.2010 um 14:11 Uhr
Hallo Snow,

danke für deine Antwort, aber das ist nicht das gesuchte ...

Ich möchte diesen Teil gerne mit Powershell lösen, da dies nur ein kleiner Teil eines größeren Powershell-Skripts ist.

... und ich möchte den Unterschied - das Problem verstehen ...

Feuerstein08
Bitte warten ..
Mitglied: Snowman25
06.04.2010 um 14:42 Uhr
Zitat von Feuerstein08:
Beispiel:

get-eventlog -logname system | where-object {($_.Eventid -eq 6005)} | select Index, EventID, Source, Message
vergleiche dazu:
Zitat von Feuerstein08:
$query = '($Eventid -eq 6005)'
get-eventlog -logname system | where-object { $query } |select EventID, Source, Message

Da fehlt ein _. vor Eventid, oder?
Bitte warten ..
Mitglied: Feuerstein08
06.04.2010 um 15:52 Uhr
Hallo Snow,

schade ... ich dachte du hättest den "blöden" Fehler gefunden. Leider ist dieser Fehler nur hier durch einen "Copy & Paste" Fehler reingekommen.

Du hast aber Recht, da gehört ein "_." rein. Aber auch damit bekomme ich die falsche Ausgabe:

$query = '($_.Eventid -eq 6005)'
get-eventlog -logname system | where-object { $query } |select EventID, Source, Message

EventID Source Message
------- ------ -------
7036 Service Control Manager The description for Event ID '107374...
7036 Service Control Manager The description for Event ID '107374...
7036 Service Control Manager The description for Event ID '107374...
10029 DCOM The description for Event ID '-10737...
Bitte warten ..
Mitglied: Snowman25
06.04.2010 um 16:20 Uhr
Hallo Feuerstein08,
Habs jetzt mal ausprobiert..
Geschweifte Klammern um einen Text bewirken, dass der Inhalt NICHT ausgewertet wird. So steht bei der Ausführung eben immer noch where-object $query zwischen den Pipes.
Zwar könnte man die geschweiften Klammern auch in $query reinschreiben ($query= '{($_.Eventid-eq 6005)}'). Bringt aber nichts:
Zitat von powershell
PS U:\> get-eventlog -logname system|where-object $query|select Index, EventID, Source, Message
Where-Object : A parameter cannot be found that matches parameter name '{($_.Eventid -eq 6005)}'.
At line:1 char:42
+ get-eventlog -logname system|where-object <<<< $query|select Index, EventID, Source, Message

Kurz:
SO wird das nichts... aber da gibts sicherlich auch 'nen workaround.

Greetz
Snow
Bitte warten ..
Mitglied: Feuerstein08
07.04.2010 um 12:07 Uhr
Hallo Snow,

ich habe eine Lösung für das Problem erhalten.

Nachdem die $query zusammengebastelt ist, das ganze noch einmal "einpacken"?:

$sb = [ScriptBlock]::Create($query)

dann klappt auch die Where-Object Abfrage wieder:

get-eventlog -logname system | Where-Object $sb |select EventID, Source, Message

Was genau hinter diesem Befehl "$sb = [ScriptBlock]::Create($query)" steckt muss ich noch herausfinden (will ja schließlich auch was lernen )

Gruß
Feuerstein08
Bitte warten ..
Mitglied: Snowman25
07.04.2010 um 12:13 Uhr
Zitat von Feuerstein08:
Hallo Snow,

ich habe eine Lösung für das Problem erhalten.

schön zu hören

Was genau hinter diesem Befehl "$sb = [ScriptBlock]::Create($query)" steckt muss ich noch herausfinden (will ja
schließlich auch was lernen )

Gute Frage. ich weiß selbst nicht, was das nun genau bewirkt... Bin nicht so der Powershell-Profi bzw. überhaupt so Powershellbenutzer. Aber ein paar debugging-skills und die Fähigkeit zu lesen hilft oft schon wunder

Gruß
Feuerstein08

Gruß
Snowman25
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

PowerShell EventLog informationen filtern

gelöst Frage von derhoeppiBatch & Shell1 Kommentar

Hallo, mit Hilfe von Get-EventLog hole ich mir bestimmte Einträge in ein Array. Das Array verfügt über drei für ...

Batch & Shell

PowerShell - Get-Eventlog mit EventData

gelöst Frage von emeriksBatch & Shell5 Kommentare

Hi, ich versuche, mit PowerShell Eventlog-Einträge auszulesen. Allerdings komme ich da nicht an die Ereignisdaten ran. Ich könnte zwar ...

Sicherheit

SMB 1.0 - neue Lücken

Information von DerWoWussteSicherheit3 Kommentare

und, waren wir alle brav und haben SMB 1 vorsorglich abgeschaltet? ->die nächsten Lücken: Edit - ups, letztere ist ...

Windows Server

Eventlog DFS-Replikation

gelöst Frage von voelkemlWindows Server

Hallo zusammen, ich habe folgendes Problem (vielleicht ist es gar kein Problem und ich habe nur irgendwo ein Häkchen ...

Neue Wissensbeiträge
Internet
EU-Urheberrechtsreform: Zusammenfassung
Information von Frank vor 1 TagInternet1 Kommentar

Auf golem.de gibt es eine Analyse von Friedhelm Greis, der das Thema EU-Urheberrechtsreform gut und strukturiert zusammenfasst. Zwar haben ...

Microsoft Office

Office365 Schwachstellen bei Sicherheit und Datenschutz

Information von Penny.Cilin vor 2 TagenMicrosoft Office7 Kommentare

Auf Heise+ gibt es einen Artikel bzgl. Office365 Schwachstellen. Das ist noch ein Grund mehr seine Daten nicht in ...

Sicherheit
Schwachstellen in VPN Clients
Tipp von transocean vor 4 TagenSicherheit2 Kommentare

Moin, es gibt Sicherheitslücken bei VPN Clients namhafter Hersteller, wie man hier lesen kann. Gruß Uwe

Sicherheit

Wikileaks-Gründer Julian Assange wurde festgenommen

Information von Frank vor 7 TagenSicherheit3 Kommentare

Wikileaks-Gründer Julian Assange wurde heute in London festgenommen. Die Botschaft Ecuadors, in der er seit sieben Jahren lebte, hat ...

Heiß diskutierte Inhalte
Tipps & Tricks
Verdammt voll erwischt
Frage von AlchimedesTipps & Tricks23 Kommentare

Folgende Mail habe ich auf meinem Freenet Account erhalten: Nun folgendes Problem: 1) Ich besuche Porno Seiten yep hat ...

Drucker und Scanner
Xerox 7328 muss jeden Tag neu installert werden
Frage von PN-SchrauberDrucker und Scanner20 Kommentare

hallo, ich habe in Problem mit einem unserer Drucker. Vorweg, die meisten unserer Netzwerkdrucker laufen über einen Druckserver, dieser ...

HTML
Google maps
Frage von jensgebkenHTML20 Kommentare

Hallo Gemeinschaft, hab mal ne Frage zu Maps - habe es hinbekommen, dass ich einen iframe link erstellen kann ...

Switche und Hubs
PC Verursach Probleme im Netzwerk
gelöst Frage von spoboeSwitche und Hubs16 Kommentare

Hallo zusammen, folgene Situation macht mich inzwischen ratlos: In unserem Betrieb ist ein Rechner über die Hausverkabelung an einem ...