C# 查询自定义事件日志以搜索事件ID
[免责声明]我是C#的新手,我不是程序员![/免责声明] 我遵循位于此处()的示例在自定义事件日志中搜索给定的eventid 该示例中的代码是:C# 查询自定义事件日志以搜索事件ID,c#,.net,event-log,C#,.net,Event Log,[免责声明]我是C#的新手,我不是程序员![/免责声明] 我遵循位于此处()的示例在自定义事件日志中搜索给定的eventid 该示例中的代码是: string eventID = "5312"; string LogSource = "Microsoft-Windows-GroupPolicy/Operational"; string sQuery = "*[System/EventID=" + eventID + "]"; var elQuery = new EventLogQuery(
string eventID = "5312";
string LogSource = "Microsoft-Windows-GroupPolicy/Operational";
string sQuery = "*[System/EventID=" + eventID + "]";
var elQuery = new EventLogQuery(LogSource, PathType.LogName, sQuery);
var elReader = new System.Diagnostics.Eventing.Reader.EventLogReader(elQuery);
List<EventRecord> eventList = new List<EventRecord>();
for (EventRecord eventInstance = elReader.ReadEvent();
null != eventInstance; eventInstance = elReader.ReadEvent())
{
eventList.Add(eventInstance);
}
string eventID=“5312”;
字符串LogSource=“Microsoft Windows GroupPolicy/Operational”;
字符串sQuery=“*[System/EventID=“+EventID+”]”;
var elQuery=neweventlogquery(LogSource,PathType.LogName,sQuery);
var elReader=new System.Diagnostics.Eventing.Reader.EventLogReader(elQuery);
List eventList=新列表();
for(EventRecord eventInstance=elReader.ReadEvent();
null!=eventInstance;eventInstance=elReader.ReadEvent()
{
添加(eventInstance);
}
在我的应用程序中,我创建了一个名为“SMCLogs”的事件日志,日志源是“SAM2_SMCLogs”,因此我更改为上述代码,如下所示:
string eventID = "330";
string LogSource = "SAM2_SMCLogs";
string sQuery = "*[SMCLogs/EventID=" + eventID + "]";
var elQuery = new EventLogQuery(LogSource, PathType.LogName, sQuery);
var elReader = new System.Diagnostics.Eventing.Reader.EventLogReader(elQuery);
List<EventRecord> eventList = new List<EventRecord>();
for (EventRecord eventInstance = elReader.ReadEvent();
null != eventInstance; eventInstance = elReader.ReadEvent())
{
eventList.Add(eventInstance);
}
string eventID=“330”;
字符串LogSource=“SAM2\u SMCLogs”;
字符串sQuery=“*[SMCLogs/EventID=“+EventID+”]”;
var elQuery=neweventlogquery(LogSource,PathType.LogName,sQuery);
var elReader=new System.Diagnostics.Eventing.Reader.EventLogReader(elQuery);
List eventList=新列表();
for(EventRecord eventInstance=elReader.ReadEvent();
null!=eventInstance;eventInstance=elReader.ReadEvent()
{
添加(eventInstance);
}
但我得到错误:“找不到指定的通道。请检查通道配置”
我做错了什么?首先,您需要确保您的事件日志和事件源存在 检查此问题的快速方法:
- 赢+R
- 类型eventvwr.msc
- 在“事件查看器”树中的“自定义视图”文件夹上单击鼠标右键
- 创建自定义视图
- 列表项
- 选择“按日志”单选按钮
- 在下拉列表中,尝试在“应用程序和服务日志”下搜索您的日志
现在检查日志下是否存在事件源,执行步骤,但现在选择“按源”而不是“按日志”单选按钮,然后查看是否可以在那里找到事件源。首先,您需要确保事件日志和事件源存在 检查此问题的快速方法:
- 赢+R
- 类型eventvwr.msc
- 在“事件查看器”树中的“自定义视图”文件夹上单击鼠标右键
- 创建自定义视图
- 列表项
- 选择“按日志”单选按钮
- 在下拉列表中,尝试在“应用程序和服务日志”下搜索您的日志