メッセージログをmsmqに書き込むカスタムトレースリスナを作成するには?WCF EnterpriseLibraryなしでmsmqにログを書き込むためのカスタムトレースリスナ
1
A
答えて
1
私はカスタムMSMQTraceListenerの下に追加しました:
public class MSMQTraceListener : TraceListener
{
string _queueName;
public MSMQTraceListener(string queueName)
: base("MSMQListener")
{
_queueName = queueName;
if (!MessageQueue.Exists(_queueName))
MessageQueue.Create(_queueName);
}
public override void Write(string message)
{
SendMessageToQueue(message);
}
public override void WriteLine(string message)
{
SendMessageToQueue(message);
}
/// <summary>
/// Send message to queue.
/// </summary>
/// <param name="message">string: message</param>
private void SendMessageToQueue(string message)
{
try
{
MessageQueue messageQueue = new MessageQueue(_queueName, QueueAccessMode.Send);
messageQueue.Label = DateTime.Now.ToString();
messageQueue.Send(message);
messageQueue.Close();
}
catch (Exception ex)
{
}
}
}
そして、私のweb.configファイルで診断設定の下に更新:
<system.diagnostics>
<sources>
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="messages" type="Proj.Common.Diagnostics.MSMQTraceListener,Proj.Common" initializeData=".\private$\PerformanceTesting" />
</listeners>
</source>
</sources>
</system.diagnostics>
1
あなたはMSMQによってホストされているコードであり、すべての.NETアプリケーションは限りたSystem.Diagnosticsが懸念しているものと同じであるログファイル を言うためにメッセージを書きたい場合。 app.configでリスナーを構成し、TraceまたはTraceSourceを使用してリスナーに書き込みます。 MSDN explains this better than I can。
苦痛が少ないたSystem.Diagnosticsでの作業は BaseTraceListenerに1 TraceEvent()メソッドをオーバーライドしますなり
あなたはMSMSQにメッセージを送信するトレースリスナー このユーティリティライブラリを取得したい場合は、Essential Diagnostics、。その方法の中で、使用可能なパラメータを使用して、メッセージを送信します。たとえば、MSMQの宛先などです。
通常の方法でカスタムTraceListenerを登録します。
関連する問題
- 1. Nlog特定のログに書き込むためのconcat
- 2. マルチスレッドアプリケーションでファイルにログを書き込む
- 3. エンタープライズライブラリ5.0:XML構成なしでログをファイルに書き込む
- 4. Windowsイベントログにactivemqログを書き込む
- 5. Python - ログをファイルに書き込む
- 6. ファイルに直接書き込むことなく、後でログを集計してファイルに書き込む
- 7. ログをフラットファイルに書き込むためのLOCKの仕組みは?
- 8. ファイルにデータを書き込むC++のような関数(ログ)
- 9. NLog。異なるテーブルにログを書き込む
- 10. デバッグモードでWindowsサービスのコンソールにログを書き込む
- 11. NLogを統合してAzureにログを書き込む方法
- 12. ArrayListにデータを書き込むための簡潔な方法
- 13. WCF XMLメッセージを辞書に書き込む
- 14. doMPIを使用してログに書き込む
- 15. ログを取得してファイルに書き込む方法
- 16. Jmeterでlog4jログをmysqlデータベースに書き込む方法は?
- 17. MSMQリモートキューへの同期書き込み
- 18. log4net - サーバのIPアドレスをログに書き込むには
- 19. Composerでクラスが見つからないときにログを書き込む
- 20. ポート転送後にTomcatがログを書き込めない
- 21. のSyslog-ngが出力ログに書き込むとき
- 22. 1バイトのみを書き込むための便利なメソッド
- 23. NLogファイルの先頭にログを書き込む
- 24. 複数のログファイルにPythonログを書き込む
- 25. .NET(c#)アプリケーション用のプロセスモニタ(Sysinternalツール)にログを書き込む
- 26. log4jログをeclipseに書き込む方法RCPプラグインのエラーログビュー
- 27. Powershellスクリプトデザインのメッセージ本文をログに書き込む
- 28. binutilsをLinuxで使用して、シンプルなブートローダを書き込むために
- 29. Macで読むことができるログを書き込む方法
- 30. 再利用可能なコードを書き込むためのベストプラクティス
おかげ@MatthewMartin、あなたが言及している点は非常に有用です。 私の要求を満たすために、私は自分の答えで与えられたカスタムリスナーを書いた。 –