問題タブ [event-log]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
event-log - EventMessageFile なしで Windows イベント ログを読み取る方法は?
Windows イベント ログを読み取るコードがあります。OpenEventLog、ReadEventLog を使用して、イベント ソースとイベント ID を取得します。次に、以下のソースを検索します。
キーを使用して、リストされている内容に従って適切な DLL をロードしEventMessageFile
、最後に を使用FormatMessage
してイベント文字列をメッセージ DLL コンテンツとマージし、最終的なイベント メッセージ テキストを取得します。これは推奨される方法であり、少し面倒ですが、うまく機能します。
まで...ソースを調べてみると、EventMessageFile
ではなく、ProvideGuid
エントリがあることがわかりました。これは新しい方法のようです (Vista と Windows 2008 で表示されます)。うーん -- メッセージ テキストを検索し、データ文字列をマージするために FormatMessage に渡すものは何もありません
:(
レジストリで GUID を検索すると、他のファイル (HTTP ソースの場合は http.sys) への参照につながりますが、完全なメッセージ テキストを取得することはできません。EvtOpenSession
これらのAPIを使用する必要がありますか? EVENTLOGRECORD*
への呼び出しからReadEventLog
、およびサポートされていない Windows 2003 でソフトウェアを実行する必要があるという事実EvtOpenSession
(Vista および Windows 2008 でのみ使用可能) があるので、そうしないことを望んでいます。注: Vista の一部のソースには ProviderGUID があり、その他のソースには EventMessageFile があるため、古い方法も引き続き実行できます。
したがって、私が求めているのは、ProviderGuid を見て、完全なイベント ログ メッセージ テキストを表示するために FormatMessage に渡す必要がある DLL を取得する方法です。
ご意見ありがとうございます
event-log - イベント ログを検索して、プログラムがいつアンインストールされたかを確認する
イベント ログを検索して、プログラムが Win2k マシンでいつアンインストールされたかを調べようとしています。どのログを検索する必要がありますか? また、アンインストール イベントにタグを付けるために検索するのに適したキーワードはありますか?
batch-file - Windows Server でイベント ログをバックアップする簡単な方法
バッチファイルや簡単なアプリなどを使用して、イベントログをバックアップする簡単な方法を作成することは可能ですか? リファレンスが専門家ではないユーザーである顧客のサイトで動作させる必要があります。ありがとう
delphi - Delphi 5 アプリへの Windows イベント ログのレトロフィット
小さなレガシー Delphi 5 アプリケーションに Windows アプリケーション イベント ログのサポートを追加する (かなり痛みのない) 手段を探しています。起動、シャットダウン、データベースへの接続の失敗などをログに記録したいだけです。
私が見たソリューション/コンポーネントのいくつかは、「エントリ」を読み取ろうとするときに Windows イベント ログ ビューアーがリンクするリソース DLL を作成する必要があることを示唆しているようです。これはそれほど面倒ではないように思えますが、将来アプリケーションをさらに開発する場合は、この DLL を最新の状態に保つ必要があることを念頭に置いておく必要があると思います。
将来のある時点で、おそらく D2007 で記述されたアプリケーションをサービスに変えたいと思うでしょう。
D5 のイベント ログにイベントを追加するための適切なルートを推奨できる人はいますか? Google トロールではなく、特定の「これを使用しましたが、問題ありませんでした」というコメントを探しています (これは自分で行うことができます)。将来が重要です。
windows - Windows イベント ログとは
Windows イベント ログとは何か説明できる人はいますか?
exception - Windows イベント ビューアーでの CLR エラーの診断
本番環境でクラッシュした .NET デスクトップ アプリケーションがあります。エラーをどのように診断しますか? 発生した例外の種類、エラーメッセージ、スタックトレースが知りたいです。
コードで例外が処理されなかったため、「このアプリケーションで問題が発生したため、閉じる必要があります」というWindows メッセージ ボックスが表示されました。唯一のオプションは閉じることで、デバッグ ボタンはありませんでした。
この MSDN の記事では、Windows イベント レジストリを参照することをお勧めします。そこで調べてみたところ、以下の情報がありました。
エラーが発生しているアプリケーション Initect.Server.UI.exe、バージョン 0.12.9084.90、タイム スタンプ 0x49cac472、エラーが発生しているモジュール KERNEL32.dll、バージョン 6.0.6001.18000、タイム スタンプ 0x4791a81d、例外コード 0xe0434f4d、エラー オフセット 0x0002f35f、プロセス ID 0x44c、アプリケーション開始時刻 01cb009
この情報から、例外の種類、スタック トレース、およびエラー メッセージをどのように知ることができますか?
logging - イベントソースの質問
イベント ソース名 XXXXXXXXXXXX に一部の文字が追加されるのはなぜですか?
イベント ビューアーには次のように表示されます。
ソース ( XXXXXXXXXXXXtings\All Usõ ) のイベント ID ( 5 ) の説明が見つかりません。ローカル コンピュータに、リモート コンピュータからのメッセージを表示するために必要なレジストリ情報またはメッセージ DLL ファイルがない可能性があります。/AUXSOURCE= フラグを使用して、この説明を取得できる場合があります。詳細については、ヘルプとサポートを参照してください。次の情報はイベントの一部です: XXXXXXXXXXXXtings\All Usõ。
c# - .NET EventLog.Entries コレクション内のエントリをバイナリ検索する組み込みの方法はありますか?
Windows イベント ログで特定のセキュリティ イベントをキャプチャするログ解析サービスを開発しています。私の最初の考えは、Microsoft のLogParserを使用することでしたが、事前にわかっている特定のインスタンス/イベント ID を選択する以外の機能は探していません。
いくつかのベンチマークの後、EventLog.Entries
Microsoft の LogParser にクエリを実行するよりも、.NET コレクション全体を反復処理する方が 3 倍以上高速にデータを取得できることがわかりました。
最終的に、プルされるデータは SQL Server データベースに保存されます。このサービスは毎日この作業を行うため、エントリの重複を避けたいと考えてEventLog.Entries
います。データベースにまだ存在しないコレクション内の次のエントリを見つける方法が必要です。最初のエントリが見つかったら、データベースへの挿入を開始できます。
データベースの最新のDATETIME
タイムスタンプ フィールドを使用してこのエントリを検索し、それをコレクションTimeWritten
内のアイテムのプロパティと比較するバイナリ検索を作成しようとしていました。EventLog.Entries
これはできますが、この検索を実行するための組み込みメソッドが既にあるかどうか疑問に思っていますか?