2013-01-16 65 views
0

我有一個要求來計算碼頭事務並測量處理請求所花費的時間,並使用JMX爲我們的監視系統取回響應。審計Jetty客戶端請求和響應

我使用的是Jetty 8.1.7,我似乎無法找到正確的方法來做到這一點。我基本上需要確定什麼時候發送請求(由於Jetty Async方法,這是由線程A觸發的)以及何時響應完成(因爲oncompleteResponse是在另一個線程中完成的)。

我通常在其他領域使用ThreadLocal來處理這種狀態,我需要類似的功能,但顯然這不起作用。

任何想法如何克服?

回答

0

要使用jetty的異步請求,您基本上必須繼承ContentExchange並覆蓋其方法。所以你可以給它添加一個額外的字段,它會包含發送請求的時間戳,並在稍後用onResponseComplete()方法來測量處理時間。如果您需要知道請求實際發送到服務器的時間,而不是創建時間,則可以覆蓋onRequestCommitted()和onRequestComplete()方法。

相關問題