是否有意義拋出catch塊的異常來記錄消息,以便我們確定是什麼導致異常?在catch塊中重新拋出異常是否有意義?
代碼
public void saveLogs(Logs logs) throws RemoteException
{
try
{
LogsOps.saveLogs(logs);
}
catch (RemoteException e)
{
log.info("RemoteException is thrown while trying to save logs ", e);
throw new RemoteException("RemoteException caused while trying to save", e);
}
}
針對低於一個評論此方法會拋出異常計算器,這裏實際執行log.info這只是顯示這些錯誤。
/** Log the message and the exception with a level of INFO.
* @param message - The message text.
* @param t - An exception to display.
*/
public void info(Object message, Throwable t)
{
String nullSafeMessage = (message != null) ? message.toString() : t.getClass().getSimpleName();
log.info(nullSafeMessage, t);
}
因此,不會出現Stackoverflow異常。
堆棧跟蹤是否包含原點和消息應儘可能描述以避免這種情況。但我很少看到它完成。除非沒有其他記錄。 – jn1kk
你實際上記錄了日誌引發的異常?這將是StackOverFlow異常! – Mukus
@TejaswiRana:我沒有看到它拋出StackOverFlow異常,你爲什麼會拋出堆棧溢出異常?,看到我更新的問題。 – Rachel