事件:錯誤 New Relic中的選項卡顯示我的應用程序使用NewRelic.noticeError(exception)
報告的異常(日期,時間,消息和堆棧跟蹤)。對於那些從網絡交易中報告的人來說,它顯示了完美的交易的URL。但對於使用@Trace
註釋報告的後臺任務,它會顯示線程的名稱。這是沒有意義的,因爲這些線程的名字如pool-23-thread-9927
。如何爲從後臺任務報告給New Relic的錯誤設置「URL」
我可以爲每個後臺任務分配一個顯示名稱,或者在報告錯誤時傳遞一個顯示名稱,以便它在URL列中顯示而不是線程名稱?
注意:我寧願而不是如果我可以避免它更改線程的名稱。
更新
這裏的代碼的概述。該交易包含在PingJob
中,用於捕獲和報告異常情況。
public class PingJob implements Callable<PingStatus>
{
@Trace(metricName = "ping", dispatcher = true)
@Override
public PingStatus call() {
try {
// calls that may throw exceptions
}
catch (RuntimeException e) {
// pass to utility method to log and/or report to New Relic
ExceptionLogger.log(e, LOG);
}
}
}
我看到ExceptionLogger
在New Relic的網站報道例外,但網址列中列出了線程,而不是交易的名稱,在這種情況下ping
。
現在工作。在實際拋出異常的後臺任務中,我錯誤地將'@ Trace'註釋放在調用鏈的下一個方法中,以便在事務之外調用'noticeError'。 – 2013-03-29 22:22:07