이벤트 로깅 작업
OpenEventLog, OpenBackupEventLog, RegisterEventSource, DeregisterEventSource 및 CloseEventLog 함수는 이벤트 로그 핸들을 열고 닫습니다.
다음 표에서는 열린 이벤트 로그에서 수행할 수 있는 작업과 각 작업에 대한 해당 함수를 보여 줍니다.
작업 | 함수 |
---|---|
Backup | BackupEventLog |
지우기 | ClearEventLog |
Monitor | NotifyChangeEventLog |
쿼리 | GetOldestEventLogRecord, GetNumberOfEventLogRecords |
읽기 | ReadEventLog |
쓰기 | ReportEvent |
OpenEventLog 및 ReportEvent 함수는 선택적 서버 이름을 매개 변수로 사용하여 원격 서버에서 작업을 수행할 수 있습니다. 로그에서 관리 작업(백업, 지우기, 모니터링 및 쿼리)을 읽거나 수행하려면 OpenEventLog 를 사용하고 로그에 쓰기 위해 RegisterEventSource 를 사용합니다.
이벤트 로깅 함수에 대한 각 호출은 원자성 작업입니다. 이벤트 로그에서 읽으면 전체 이벤트 레코드만 반환됩니다. 이벤트 로그에 쓸 때 각 이벤트 레코드는 로그의 전체 레코드로 순차적으로 기록되도록 보장됩니다. 다음 목록에서는 이벤트 로깅 서비스가 특수 조건을 처리하는 방법을 설명합니다.
- 이벤트 로깅 서비스는 읽기 작업과 쓰기 작업을 동시에 받습니다. 읽기 위치가 파일 끝에 있는 경우 읽기 작업이 "파일 끝" 상태 실패하거나(쓰기 작업이 완료되지 않은 경우) 새 레코드를 반환합니다(쓰기 작업이 완료된 경우).
- 이벤트 로깅 서비스는 읽기 작업을 받기 전에 명확한 작업을 완료합니다. "파일 끝" 상태 읽기 작업이 실패합니다.
- 이벤트 로깅 서비스는 쓰기 작업을 받기 전에 명확한 작업을 완료합니다. 지우기 작업은 로그를 잘린 다음 쓰기 작업은 로그 시작 부분에 새 레코드를 추가합니다.