La mia domanda è: è meglio accedere con getMessage o con toString o entrambi? prendere in considerazione gli errori di account generati dall'open source. Ho visto le domande nei commenti ma non ho avuto una risposta a questo. Forse mi sono perso qualcosa? Non importa il piccolo colpo di prestazioni di registrare uno di loro, ma non vuoi loggarli entrambi a meno che non ci sia una buona ragione.Eccezioni di registrazione Java, utilizzare getMessage o toString: log.warn (ex.getMessage()) o log.warn (ex) funziona con open source
Log di significato (ex) o log (ex.getMessage), Non si parla di traccia dello stack.
eccezioni di registrazione: che è meglio: log.warn (ex.getMessage(), ex) o log.warn (ex, ex);
ho notato a volte getMessage ritorna vuoto o nullo, così in medicina generale v'è alcuna ragione per non utilizzare:
log.warn(ex, ex);
come sembra stampare il nome della classe e il messaggio (se impostato)? Immagino che una ragione potrebbe essere se una sottoclasse ha oltrepassato la corda per non stampare il messaggio, ma in realtà fa una qualsiasi delle librerie di ibernazione, apache o di primavera?
possibile duplicato di [Segnalare il messaggio di testo delle eccezioni?] (Http://stackoverflow.com/questions/7320080/should-you-report-the-message-text-of-exceptions) – Raedwald
Vedere anche http : //stackoverflow.com/questions/7361201/when-to-log-a-stacktrace-for-a-aught-exception – Raedwald
Come mostrano le due domande collegate (che rende questa domanda un duplicato), penso che la risposta non sia . Registrare una traccia dello stack solo per le eccezioni che indicano un bug; sono utili solo per i programmatori; la presenza di un bug non è qualcosa su cui semplicemente mettere in guardia. Non utilizzare il testo del messaggio di eccezioni nei messaggi di lig destinati agli utenti abc (piuttosto che agli orogrammatori). – Raedwald