Ereignisprotokollierungsvorgänge
Die Funktionen OpenEventLog, OpenBackupEventLog, RegisterEventSource, DeregisterEventSource und CloseEventLog öffnen und schließen Ereignisprotokollhandles.
Die folgende Tabelle zeigt die Vorgänge, die für ein geöffnetes Ereignisprotokoll ausgeführt werden können, und die entsprechende Funktion für jeden Vorgang.
Vorgang | Funktion |
---|---|
Backup | BackupEventLog |
Clear | ClearEventLog |
Monitor | NotifyChangeEventLog |
Abfrage | GetOldestEventLogRecord, GetNumberOfEventLogRecords |
Lesen | ReadEventLog |
Schreiben | ReportEvent |
Die Funktionen OpenEventLog und ReportEvent verwenden einen optionalen Servernamen als Parameter, damit die Vorgänge auf dem Remoteserver ausgeführt werden können. Verwenden Sie OpenEventLog zum Lesen oder Ausführen von verwaltungstechnischen Vorgängen (Sicherung, Clear, Überwachung und Abfrage) für das Protokoll, und verwenden Sie RegisterEventSource zum Schreiben in das Protokoll.
Jeder Aufruf einer Ereignisprotokollierungsfunktion ist ein atomarer Vorgang. Wenn Sie aus dem Ereignisprotokoll lesen, werden nur ganze Ereignisdatensätze zurückgegeben. Wenn Sie in das Ereignisprotokoll schreiben, wird garantiert, dass jeder Ereignisdatensatz sequenziell als vollständiger Datensatz im Protokoll geschrieben wird. In der folgenden Liste wird beschrieben, wie der Ereignisprotokollierungsdienst besondere Bedingungen behandelt:
- Der Ereignisprotokollierungsdienst empfängt einen Lese- und einen Schreibvorgang gleichzeitig: Wenn sich die Leseposition am Ende der Datei befindet, schlägt entweder der Lesevorgang mit einem "Ende der Datei" status fehl (wenn der Schreibvorgang nicht abgeschlossen wurde), oder er gibt den neuen Datensatz zurück (wenn der Schreibvorgang abgeschlossen wurde).
- Der Ereignisprotokollierungsdienst führt einen eindeutigen Vorgang aus, bevor er einen Lesevorgang empfängt: Der Lesevorgang schlägt mit "Ende der Datei" status fehl.
- Der Ereignisprotokollierungsdienst schließt einen eindeutigen Vorgang ab, bevor er einen Schreibvorgang empfängt: Der Clear-Vorgang schneidet das Protokoll ab, dann fügt der Schreibvorgang den neuen Datensatz am Anfang des Protokolls hinzu.