問題タブ [mdc]
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.
java - MDC から requestId をクリアする場所
ここrequestId
に示すように、Web アプリのログにを追加しようとしています。
これに関する問題は、上記のフィルターで設定および削除する requestId
ことです。MDC
また、アプリケーションが生成する応答の本文もWriterInterceptor
. 問題は、インターセプターが filtersの後に実行されるため、 myWriterInterceptor
が実行されるまでに requestId が にないことですMDC
。
MDC.clear()
私の質問は、最後に呼び出しても大丈夫ですWriterInterceptor
か (これはなんとなくハックに感じます)、またはこれを達成するためのより良い方法はありますか?
java - aroundReceive メソッドの Actor MDC コンテキスト
Java Akka アプリケーションがあり、メッセージ内の情報に基づいてメッセージ処理ごとに個別の MDC コンテキストを設定したいと考えています。たとえば、すべてのメッセージに対して次の基本インターフェイスがあります。
また、すべてのアクターに対して次の基本アクターがあります。
そして実際のアクターの実装:
SomeActor#receive()
内部のすべてのログ エントリの MDC コンテキストが に設定されていることを確認したいと思いますBaseActor
。これを機能させるには、メソッドSomeActor#receice()
と同じスレッドで実行する必要があります。BaseActor#aroundReceive()
の動作に関する情報は見つかりませんでした-それは常に実際のメソッドaroundReceive
と同じスレッドで実行されますか? receive
私のテストに基づいて、常に同じスレッドで実行されます。
log4j - log4j 2でMDCキーに対してデフォルト値を設定するには?
log4j と同様に、MDC キーに対してデフォルト値を設定するオプションがあります - mdc{key:-defaultVal}
log4j 2 にも似たようなものがありますか?
spring-boot - スプリング ブートの MDC 継承動作は変更されましたか?
最近まで、私は spring-boot 1.3.5.RELEASE を使用していましたが、以下が機能しました。
MDC put に注意してください。次に、logback logger を使用して、アプリケーション全体の各ログ行に service_name が記録されました。これは、MVC コントローラーなどの子スレッドでも当てはまりました。
現在、Spring バージョン 1.4.1.RELEASE を使用しており、service_name の MDC ロギングはメイン スレッドでのみ機能し、MVC コントローラー スレッドでは機能しません。
「myapp」はまだメイン スレッドに記録されています。
しかし、コントローラーのログ行に「myapp」がありません。
変更前は次のように見えました。
コントローラー メソッドの開始時に MDC コンテキストが空であることをデバッガーで確認できます。
この動作に影響を与えた変更を知っている人はいますか? おそらく、Spring MVC スレッド作成への変更でしょうか? それともログバックの変更?アプリケーション全体の MDC プロパティを設定して保持する方法はありますか?
ありがとう
log4j2 - Gelf経由でMDCをグレイログに転送する方法は?
Java アプリケーションが MDC を満たし、log4j2 を介して syslog から中央の rsyslog インストールに転送されるロギング フローがあります。ここでは、MDC を多用します。したがって、セットアップは次のとおりです。
これをグレーログを使用するように変換しようとしていますが、そのための推奨トランスポート プロトコルは GELF のようです。これを行うための複数のライブラリを見つけGelfLayout
、log4j2 の組み込みから始めました。しかし、それはサポートしていませんLoggerFields
。
これらのフィールドをGraylogに取り込むための推奨される方法は何ですか? 私が行った場合
Graylog で多数のフィールドを取得しますが、値は展開されません。