我正在Windows Server 2012上使用事件日志和任务计划程序来运行基于事件的脚本。此应用程序不能很好地写入事件日志。事件ID只有0或1,而事件数据是唯一要查询的唯一事物。我想知道我的问题是否与冒号和/或间距有关?
这是事件日志中需要查找的XML数据:
<EventData>
<Data>in Tgo_iadminCommon.CommitTransaction: Error ending transaction... MSG is: General SQL error. ORA-03114: not connected to ORACLE</Data>
</EventData>
这是我的查询,带有事件数据的剪切和粘贴:
<QueryList>
<Query Id="0" Path="Application">
<Select Path="Application">*[EventData[Data='in Tgo_iadminCommon.CommitTransaction: Error ending transaction... MSG is: General SQL error. ORA-03114: not connected to ORACLE']]</Select>
</Query>
</QueryList>
没有结果。但是,当这是我的查询时,它可以正常工作,所以我想知道是否与间距和/或冒号有关?
<QueryList>
<Query Id="0" Path="Application">
<Select Path="Application">*[EventData[Data='in TWTHL7Service.ServiceStart, Error Calling Create Objects']]
</Select>
</Query>
</QueryList>
我想做类似powershell的事情,我不太熟悉,所以我还没有走这条路。我知道事件日志过滤器在执行查询时不能使用通配符或“包含”。有什么建议么?
[如果其他人偶然发现了这个问题,我(很高兴)使用Powershell解决了这个问题,它允许查询消息中包含的文本。If(Get-EventLog -After(get-Date).AddMinutes(-5)-LogName应用程序-Source'WTHL7'-Message'未连接到ORACLE')