リモートマシン上のアプリケーションイベントログを照会したいのですが、EventLogで必要なイベントを見つけるのに時間がかかるため、EventLogではなくEventLogReaderを使用しました。しかし、EventLogReaderを使うとイベントがはるかに高速になっても、必要な情報がこのオブジェクト、特にメッセージにどこにあるのかわかりません。EventLogReaderとEventRecord:メッセージはどこですか?
public static void Load()
{
string query = "*[System/Provider/@Name=\"SQLSERVERAGENT\"]";
EventLogQuery elq = new EventLogQuery("Application", PathType.LogName, query);
elq.Session = new EventLogSession("x.x.x.x");
EventLogReader elr = new EventLogReader(elq);
_logEntries = new List<SqlEventEntry>();
EventRecord entry;
while ((entry = elr.ReadEvent()) != null)
{
var Message = entry.???
// I want process the message in the event here,
// but I can't find a property anywhere that contains the message??
}
}
再び救助のイベントビューア。 1つまたは複数の 'entry.EventData'プロパティ(' Data'という名前の列挙型か複数の名前付きプロパティのみ)がありますか?私は暗闇の中で少し刺すようですが、eventvwr.mscを開き、ランダムなイベントを開き、XMLビューを見ることもできます。 –
@lc。私はちょうどそれを考え出し答えを投稿しました。ご協力いただきありがとうございます。 –
ええ、それはMSDNでこれについてのドキュメントがあまりにも悪いです。暗闇の中でしか刺すだけで申し訳ありません: - P –