JVM 常規診斷庫:jdiagnostics
jdiagnostics 是一個檢查 JVM 狀態和構建處理支持的常規庫,可以很容易的診斷類路徑問題,資源,服務加載,版本控制,XML 解析器等諸如此類的東西。jdiagnostics 是個完全獨立的,不需要任何依賴,而且最基礎的構建基礎應用的庫。
如何使用?
基礎版本
LOG.info(new DefaultQuery().call());
Or:
String report = String.valueOf(new DefaultQuery().call());
任何查詢可單獨使用:
LOG.info(new ThrowableQuery(t).call());
如果你有一個例外,DefaultQuery有一個實用的構造函數:
try {
...
} catch (MyException e) {
try {
report(new DefaultQuery(e).call());
} finally {
throw e;
}
}
如果你有一個Web服務,例如 spring-mvc:
@Controller
public class DebugController {
@ResponseBody
@RequestMapping("/jdiagnostics")
public String jdiagnostics() {
return String.valueOf(new DefaultQuery().call());
}
}
Or, in Spring MVC, a HandlerExceptionResolver, etc.
For more advanced usage, you can build a CompositeQuery:
DefaultQuery query = new DefaultQuery();
query.add(new ThrowableQuery(e));
query.add(new MySystemStatusQuery(...));
String dump = String.valueOf(query.call());
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!