개발/C#
이벤트 로그 작성하는 방법
다물칸
2024. 4. 25. 10:20
728x90
반응형
윈도우의 이벤트 로그의 Application카테고리에 내가 만든 프로그램의 로그를 써보자.
public static void WriteEventLogEntry(System.Diagnostics.EventLogEntryType LogType, string message, string AppName = "Spider")
{
// Create an instance of EventLog
System.Diagnostics.EventLog eventLog = new System.Diagnostics.EventLog();
// Check if the event source exists. If not create it.
if (!System.Diagnostics.EventLog.SourceExists(AppName))
{
System.Diagnostics.EventLog.CreateEventSource(AppName, "Application");
}
// Set the source name for writing log entries.
eventLog.Source = AppName;
// Create an event ID to add to the event log
// 에러코드를 정의해서 넣을 수도 있을 것 같다.
int eventID = 8;
// Write an entry to the event log.
eventLog.WriteEntry(message, LogType, eventID, 10);
// Close the Event Log
eventLog.Close();
}
사용예)
WriteEventLogEntry(System.Diagnostics.EventLogEntryType.Error, ex.Message, "[Application Name]");
닷넷 프레임워크에서는 기본적으로 " System.Diagnostics"에 EventLog가 포함되어 있지만 .NET6 등의 코어에서는 포함되어 있지 않다. 하지만 Nuget에 " System.Diagnostics.EventLog" 패키지를 설치하면 해결된다.
반응형