"ELR\[Daten]" für "EventLogRead", "ELW\[Daten]" für "EventLogWrite", "ELE\[Daten]" für "EventLogEmpty", "IEL\[Daten]" für "IfExistsLogentry", "EEL\" für "EndExistsLogentry". Siehe auch: "Abfragen".
Mit diesen Befehlen können Sie unter NT-basiertem Windows Einträge der
Ereignisprotokolle lesen und schreiben. Unter Win9X werden die Befehle
ignoriert.
"ELR\"
liest einen bestimmten Logeintrag, den Sie im Datenteil durch Angabe des Logs und der Eintragsnummer spezifizieren
müssen, wobei diese Angaben mittels
eines nichtnumerischen Zeichens (Komma, Semikolon, Senkrechtstrich ...)
getrennt werden, z.B. ELR\2,23 Log: 1 = Application, 2 = System, 3 = Security. Eintragsnummer: Ein numerischer Wert, der die Nummer der Eintrags
in der Eintragsliste angibt.
Der älteste Eintrag in der Liste hat die Nummer 1,
und alle weiteren Einträge bis
zum jüngsten werden fortlaufend numeriert. Das gilt allerdings nur, wenn im
Viewer nicht eine Begrenzung der Log-Einträge und Überschreiben der Einträge
eingestellt ist. Ist diese Option gewählt, kann der älteste Eintrag in der Liste die
Nummer 1000 haben. Deshalb ist es wenig sinnvoll, die absolute
Eintragsnummer anzugeben, es sei denn, es ist sichergestellt, daß das Logfile
tatsächlich alle Einträge von Anfang an enthält. Die nachstehende Variante ist zu
bevorzugen. ELR\2,23 '# Liest den Eintrag mit der Nummer 23 (vom ältesten an
gerechnet) Wenn Sie einen bestimmten Eintrag vom Ende der Liste
(vom jüngsten Eintrag)
an gerechnet lesen wollen, geben Sie diese Nummer als negativen Wert an: ELR\2,-5 '# Liest den fünftjüngsten Eintrag (den 5. von oben)
Beim Lesen des Eintrags werden dessen Informationen in programminternen
Variablen gespeichert, auf die Sie mit den nachstehenden Zeichenfolgen Zugriff
haben: $eltp$ = Ereignis-Typ (numerischer Wert), $elsc$ = Ereignis-Source (Zeichenfolge), $elcy$ = Ereignis-Kategorie (numerischer Wert), $elid$ = Ereignis-ID (numerischer Wert), $eltx$ = Ereignis-Text (Zeichenfolge), $eldt$ = Ereignis-Datum (Zeichenfolge), $eltm$ = Ereignis-Zeit (Zeichenfolge).
Ereignis-Typ: 1 = Fehler, 2 = Warnung, 4 = Information, 8 = Audit Success, 16 = Audit Failure. Ereignis-Source: Applikationsspezifische Zeichenfolge, z.B. "eventlog". Ereignis-Kategorie: Applikationsspezifischer numerischer Long-Wert. Ereignis-ID: Applikationsspezifischer numerischer Long-Wert. Ereignis-Text: Applikationsspezifische Zeichenfolge, z.B. "Der Ereignisprotokolldienst wurde
gestartet.". In der Ereignisanzeige wird diese Zeichenfolge nach Doppelklick auf den
jeweiligen Eintrag sichtbar, ggf. ergänzt durch verbindende Worte. Ereignis-Datum: Eine das Erstellungsdatum des Ereignis-Eintrags repräsentierende Zeichenfolge,
z.B. "26.08.2002". Die Formatierung der Zeichenfolge ist abhängig von der Systemlokalisierung. Ereignis-Zeit: Eine die Erstellungszeit des Ereignis-Eintrags repräsentierende Zeichenfolge, z.B.
"15:22:30". Die Formatierung der Zeichenfolge ist abhängig von der Systemlokalisierung.
Sie können diese programminternen Variablen externen Variablen zuordnen und
dann auswerten bzw. weiterverarbeiten: VAR\$$111=$eltp$ VAR\$$112=$elsc$ VAR\$$113=$elcy$ VAR\$$114=$elid$ VAR\$$115=$eltx$ VAR\$$116=$eldt$ VAR\$$117=$eltm$
Mit "ELW\..."
können Sie einen Eintrag in ein Ereignislog schreiben, wobei im
Datenteil die nachstehenden Werte präzisiert werden können: - Log (numerischer Wert), - Ereignis-Source (Zeichenfolge), - Ereignis-ID (numerischer Wert), - Ereignis-Text (Zeichenfolge). Log: 1 = Application, 2 = System, 3 = Security. Ereignis-Source: Applikationsspezifische Zeichenfolge, z.B. "eventlog". Diese Zeichenfolge wird als "Quelle" angezeigt. Ereignis-ID: Applikationsspezifischer numerischer Long-Wert, siehe "HINWEISE". Ereignis-Text: Applikationsspezifische Zeichenfolge, z.B. "Server-Update 2/225 durchgeführt.". In der Ereignisanzeige wird diese Zeichenfolge nach Doppelklick auf den
jeweiligen Eintrag nach dem durch die Event-ID festgelegten Einleitungstext
sichtbar (siehe "HINWEISE").
Die entsprechenden Werte sind im Datenteil des Befehls durch einen
Senkrechtstrich getrennt einzutragen: ELW\2|Remote|9|Testeintrag
HINWEISE: 1. In das "Security"-Log
können Sie nur schreiben, wenn Sie entsprechende
Rechte haben. Die Rechte als Administrator sind dazu nicht ausreichend. 2. Für die Darstellung von Messagetexten stehen
folgende Einleitungen zur
Verfügung, die den angegebenen Ereignis-IDs zugeordnet sind. Daran
anschließend wird der Ereignistext angezeigt: Ereignis-ID Einleitung 1 FEHLER: 2 WARNUNG: 3 INFORMATION:
4 Die aktuelle REM-Datei hat folgenden FEHLER generiert: 5 Die aktuelle REM-Datei hat folgende WARNUNG generiert: 6 Die aktuelle REM-Datei hat folgende INFORMATION generiert:
7 Die Ereignisquelle hat folgenden FEHLER generiert: 8 Die Ereignisquelle hat folgende WARNUNG generiert: 9 Die Ereignisquelle hat folgende INFORMATION generiert:
Wenn die Spracheinstellung nicht "deutsch" ist, wird zu der Ereignis-ID der Wert
100 addiert, und die Meldungen werden englischsprachig angezeigt. Diese
Tatsache müssen Sie berücksichtigen, wenn Sie mittels "IEL\" nach einem
"selbstgeschriebenen" Eintrag suchen und sich dabei an der Ereignis-ID
orientieren wollen. Sie können dazu den Befehl "ILI\..." benutzen.
Aus der gewählten Ereignis-ID wird programmintern der Typ des Eintrags
festgelegt: 1, 4, 7 = Fehlersymbol, 2, 5, 8 = Warnungssymbol, 3, 6, 9 = Informationssymbol.
Bei den Ereignis-IDs von 4 bis 6 brauchen Sie keine Source
anzugeben; es wird
dann immer der Name der aktuellen Remote-Datei (ohne Endung ".rem") als
Source benutzt. Um sicherzustellen, daß die Sourcen eventlog-übergreifend
eindeutig sind,
werden alle Sourcen mit einem Anhang versehen, der auf das jeweilige Log
verweist: Applikation: "-APP", System: "-SYS", Security: "-SEC". In der Ereignisanzeige ist
dieser Anhang unter "Quelle" sichtbar, und er muß auch
bei der Suche nach "selbstgeschriebenen" Einträgen berücksichtigt werden, wenn
Sie die Source als Suchkriterium heranziehen.
Mit "ELE\..."
leeren Sie die entsprechende Ereignisliste. Gleichzeitig wird eine
Backup-Datei angelegt im Verzeichnis "%SysDir%\config\" mit der Bezeichnung
"AppEvent?.bak", "SysEvent?.bak" bzw. "SecEvent?.bak" je nach Log. Das
Fragezeichen steht für eine Nummer von 0 bis 9, die in aufsteigender Weise
belegt wird, d.h die Datei mit der höchsten Nummer ist die jüngste. Sind alle
Nummern ausgeschöpft, wird die älteste (0) gelöscht, und die anderen werden
mit der jeweils niedrigeren Nummr versehen und umbenannt. Die neue Datei
erhält die Nummer 9. Im Datenteil des Befehl ist dazu lediglich das Log anzugeben. Log: 1 = Application, 2 = System, 3 = Security.
Der Befehl "IEL\..."
in Verbindung mit "EEL\" ermöglicht die Prüfung, ob ein
bestimmter Logeintrag existiert. Standardmäßig wird dazu die gesamte Liste
durchsucht. Sie können die Suche auf die letzten X Einträge beschränken, indem
Sie im Datenteil als erstes die zu durchsuchende Anzahl X gefolgt von einem Backslash ("\")eintragen,
wobei die Anzahl die jüngsten Einträge umfaßt, z.B. IEL\25\2|2|dhcp'# Letzte 25 Einträge im Systemlog|Warnung|Source: Dhcp '... EEL\
Als Suchkriterien können
Sie folgende Vorgaben machen, die jeweils durch einen
Senkrechtrich ("|")zu trennen sind: - Log, - Ereignis-Typ, - Ereignis-Source, - Ereignis-Kategorie, - Ereignis-ID, - Ereignis-Text, - Ereignis-Datum, - Ereignis-Zeit. Zur Erläuterung der entsprechenden Werte siehe oben.
Wenn Sie einzelne Werte nicht belegen wollen, werden Defaultwerte wirksam,
jedoch müssen Sie immer alle Trennzeichen vor Ihrem letzten Eintrag angeben. Die Befehle zwischen "IEL\"
und "EEL\" werden nur dann ausgeführt, wenn ein
entsprechender Eintrag gefunden wurde. Die Suche beginnt immer
beim jüngsten Eintrag und wird dann "nach unten"
fortgesetzt. Sie endet, wenn ein entsprechender Eintrag gefunden wurde oder
wenn das Ende der Liste bzw. die vorgegebene Eintragsanzahl erreicht ist. Wenn ein Eintrag gefunden wurde, der den angegebenen Kriterien entspricht, ist
das immer der jüngste Eintrag dieser Art. Die Datensatznummer des Eintrags
wird in einer programminternen Variablen gespeichert, auf die Sie mit der
Zeichenfolge "$elrn$" zugreifen können, z.B. VAR\$$lrn=$elrn$ Die Variable "$$lrn"
beinhaltet jetzt die "echte" (von unten gezählte)
Datensatznummer, die Sie z.B. im Befehl "ELR\..." verwenden können, um
Details über den Eintrag zu ermitteln. Weiterhin wird eine zweite
programminterne Variable mit dem von oben gezählten Wert für die Position des
Datensatzes belegt, auf die Sie mit der Zeichenfolge "$elrc$" zugreifen können: VAR\$$lrc=$elrc$ Diesen Wert können Sie z.B. benutzen, um eine neue Bereichsabfrage zu starten,
die sich nun auf die Einträge nach (zeitlich) dem gefundenen beschränkt: DVV\1 IEL\2|2|dhcp '# alle Einträge im Systemlog|Warnung|Source: Dhcp VAR\$$lrc=$elrc$ '# Inverse Datensatznummer (von oben gezählt) IEL\$$lrc\2|4|Application Popup '# letzte $$lrc
Einträge|Systemlog|Info|Source: Appl. Popup 'IEL\$elrc$\2|4|Application Popup '# Alternative Angabe ohne Variable VAR\$$lrn=$elrn$ '# echte Datensatznummer (von unten gezählt) ELR\2,$$lrn '# Datensatz lesen 'ELR\2,$elrn$ '# Datensatz lesen; alternative Angabe ohne Variable VAR\$$111=$eltp$ '# Diverse Variable mit gelesenen Werten belegen VAR\$$112=$elsc$ VAR\$$113=$elcy$ VAR\$$114=$elid$ VAR\$$115=$eltx$ VAR\$$116=$eldt$ VAR\$$117=$eltm$ EEL\ EEL\
© 2006 by Delphin Software
|