file-watcher/Helpers/HelperEventLog.cs
2024-01-26 14:13:55 -07:00

34 lines
1.1 KiB
C#

using File_Watcher.Models;
using System.Diagnostics;
namespace File_Watcher.Helpers;
internal static partial class HelperEventLog
{
internal static bool ClearEventLogs(AppSettings appSettings, ILogger<Worker> logger)
{
if (Directory.Exists(appSettings.WatchDirectory))
{
#pragma warning disable CA1416
using (EventLog eventLog = new("Security", Environment.MachineName))
eventLog.Clear();
logger.LogInformation("{logName} log cleared.", "Security");
foreach (EventLog eventLog in EventLog.GetEventLogs())
{
try
{
eventLog.Clear();
eventLog.Dispose();
logger.LogInformation("{logName} log cleared.", eventLog.LogDisplayName);
}
catch (Exception ex)
{ logger.LogInformation("Error: {logName} - {message}.", eventLog.LogDisplayName, ex.Message); }
}
#pragma warning restore CA1416
logger.LogCritical("{Company}", appSettings.Company);
}
return true;
}
}