假設我有一個Java服務器應用程序,我不明白。我想知道的請求處理的整個執行順序(見下面的例子)如何將跟蹤添加到Java服務器應用程序
received HttpRerquest 12345 from client (...) with headers (...) and body (...) enter WebUserController with HttpRequest 12345 enter UserProcessor.process1 with HttpRequest 12345 enter UserProcessor.process2 with createUserRequest(userName=..., userEmail=..., ...) enter userDAO.createUser with User(userName=..., userEmail=..., ...) invoke SQL statement (...) against database (...) in <host>::<port> exit userDAO.createUser with result (...) exit UserProcessor.process2 with (...) exit UserProcessor.process1 with (...) exit WebUserController with ... sent HttpResponse 7890 to client (...) with headers (...) and body (...)
我知道大約只有一種方式來獲得它:添加跟蹤調用應用程序代碼手動。現在我想知道是否有一個自動的方式來添加這些跟蹤調用的代碼。我正在考慮字節儀器,它會將跟蹤調用添加到給定jar中的所有公共類的所有公共類。是否有意義 ?
您能否建議其他方式來了解應用程序的工作原理?
您絕對應該查看面向方面的編程(http://en.wikipedia.org/wiki/Aspect-oriented_programming)。 – Smutje
@Smutje - 你還應該手動添加方面嗎? –
我不知道你在問這樣的工具,但不能使用伐木工?可能在應用程序中的關鍵點上已經有記錄器,並且您只需增加日誌記錄級別即可查看其消息? –