Problem
某天有個運氣很好的同事,測試某個功能時,發生Service自己異常中止的問題。
How to resolve?
Trace
經過初步trace,發現那台機器被Nessus掃瞄過後,JVM就異常中止:
ERROR | wrapper | 2017/10/06 16:42:16 | JVM exited unexpectedly.
於是我將wrapper log level改為DEBUG,並打開了wrapper ping jvm的log:
wrapper.logfile.loglevel=DEBUG wrapper.ping.alert.loglevel=DEBUG
最後發現訊息出現:
INFO | jvm 1 | 2017/10/06 16:42:13 | WrapperManager: WARNING: Making JVM appear to be hung...
這個問題看起來是Nessus連線讓wrapper造成jvm hang住。
WrapperActionServer
從WrapperActionServer的javadoc中得知,它可以綁定某個port提供以下功能:
S : Shutdown cleanly. H : Immediate forced shutdown. R : Restart D : Perform a Thread Dump U : Unexpected shutdown. (Simulate a crash for testing) V : Cause an access violation. (For testing) G : Make the JVM appear to be hung. (For testing)
預設情況下是disable的;但假如你都設為enable,就會發生我們所遇到的慘劇。所以怎麼解決? 只要enable需要的功能即可。
其實我個人並不推薦使用wrapper這個功能,因為有心人士很容易就把你系統給搞掛了。
留言
張貼留言