log4jアペンダーを使用して、tomcat webappから送信されたエラーを送信しています。これは、リクエストのメインスレッドで発生するエラーに最適です.URL、リクエストパラメータ、Cookie、ヘッダーなどの余分なhttp情報がすべて取得されます。別のスレッドから送信されたHTTPリクエスト情報を追加する
しかし、リクエストの中には、 org.springframework.core.task.TaskExecutor.execute()
を使用してください。これらのスレッドでエラーをログに記録すると、sentryの情報はほとんど得られません。親スレッドのコンテキストをエラーにアタッチする方法はありますか?
興味深いことに、私はそれを試してみる必要があります。これは動作しますか? 'final Map contextMap = MDC.getCopyOfContextMap(); threadPoolTaskExecutor.execute(() - > { MDC.setContextMap(contextMap);}) ' –
onlynone
これもうまくいくはずです。 executorスレッドが実行する必要があるものを実行する前に、MDCコンテキストを設定する必要があります。 –