Это фрагмент кода из библиотеки MSDN, посмотрите, ищите ли вы его.
string logName;
if (EventLog.SourceExists("MySource"))
{
// Find the log associated with this source.
logName = EventLog.LogNameFromSourceName("MySource", ".");
// Make sure the source is in the log we believe it to be in.
if (logName != "MyLog")
return;
// Delete the source and the log.
EventLog.DeleteEventSource("MySource");
EventLog.Delete(logName);
Console.WriteLine(logName + " deleted.");
}
else
{
// Create the event source to make next try successful.
EventLog.CreateEventSource("MySource", "MyLog");
}
Также для меня работало создание источника событий для моего приложения с использованием
if (!EventLog.SourceExists(source))
{
EventLog.CreateEventSource(source, additional);
}
и запись всех деталей там с помощью
EventLog.WriteEntry(Source, error, EventLogEntryType.Error);
и затем, когда я хочу очистить свои журналы, я использую
EventLog myEventLog = new EventLog(Constants.EventSource);
myEventLog.Clear();
Это очистит только те журналы, которые вы зарегистрировали под своим источником. Надеюсь, это поможет :)