所以我在創建自定義log4j(1.2)appender時遇到了一些麻煩。 https://github.com/stuart-warren/logit基於zeromq的log4j appender不關閉套接字
基本測試用例: https://gist.github.com/stuart-warren/6750331
它記錄在網絡上很好,但在執行結束的應用程序實際上並沒有完成,我必須單擊終止在Eclipse中...
我擴展了大多數基於網絡的appender似乎使用的通常AppenderSkeleton,但close()
方法永遠不會被調用,因此我從不銷燬套接字。
這可能是一件非常明顯的事情,我沒有發現,但我對Java很新,經過2天的修補後,它已經到了我的面前。
謝謝。
編輯:
典型,我終於工作了,你必須叫LogManager.shutdown();
,並且成功地調用附加目的地close()
方法。