Articles of stack trace

cosa può portare a ripristinare un callstack (sto usando “throw”, non “throw ex”)

Ho sempre pensato che la differenza tra “throw” e “throw ex” fosse che il solo throw non stava resettando lo stacktrace dell’eccezione. Sfortunatamente, questo non è il comportamento che sto vivendo; ecco un semplice esempio che riproduce il mio problema: using System; using System.Text; namespace testthrow2 { class Program { static void Main(string[] args) { […]

Come posso ottenere un elenco di stack di chiamate in Perl?

Esiste un modo per accedere (per la stampa) a un elenco di sub + moduli a profondità arbitrarie di sub-call che precedono una posizione corrente in uno script Perl? Devo apportare modifiche ad alcuni moduli Perl (.pm). Il stream di lavoro viene avviato da una pagina Web attraverso uno script cgi, passando l’input attraverso diversi […]

Formattazione di Log4j: è ansible troncare gli stacktraces?

Voglio registrare solo le prime righe di eccezioni nel mio programma. Lo so, posso fare qualcosa del genere per stampare solo le prime 5 righe di uno stacktrace: Throwable e = …; StackTraceElement[] stack = e.getStackTrace(); int maxLines = (stack.length > 4) ? 5 : stack.length; for (int n = 0; n < maxLines; n++) […]

Come posso interrompere lo stacktraces troncando nei registri

Molte volte nei log Java otterrò qualcosa del tipo: Caused by: java.sql.BatchUpdateException: failed batch at org.hsqldb.jdbc.jdbcStatement.executeBatch(jdbcStatement.java:1102) at org.hsqldb.jdbc.jdbcPreparedStatement.executeBatch(jdbcPreparedStatement.java:514) at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48) at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:242) … 113 more Qualcuno sa come ottenere la visualizzazione completa dello stacktrace (cioè mostrare le altre 113 linee)? JavaDocs (per Java 7) per Throwable ha una spiegazione abbastanza dettagliata di ciò che sta […]

Come inviare uno stacktrace a log4j?

Supponiamo di prendere un’eccezione e ottenere quanto segue sullo standard output (come, ad esempio, sulla console) se si esegue e.printStackTrace () : java.io.FileNotFoundException: so.txt at java.io.FileInputStream.(FileInputStream.java) at ExTest.readMyFile(ExTest.java:19) at ExTest.main(ExTest.java:7) Ora voglio inviare questo ad un logger come, ad esempio, log4j per ottenere quanto segue: 31947 [AWT-EventQueue-0] ERROR Java.io.FileNotFoundException: so.txt 32204 [AWT-EventQueue-0] ERROR at java.io.FileInputStream.(FileInputStream.java) […]

Traccia dello stack NullPointerException non disponibile senza agente di debug

Recentemente ho trovato un bug che causa una NullPointerException. L’eccezione viene rilevata e registrata utilizzando un’istruzione standard slf4j. Codice abbreviato di seguito: for(Action action : actions.getActions()) { try { context = action.execute(context); } catch (Exception e) { logger.error(“…”, e); break; } } Come puoi vedere, niente di speciale. Tuttavia, di tutte le dichiarazioni di registrazione […]

Eccezione senza stack trace in Java

Questa è probabilmente una domanda molto ingenua. Ero solito credere che un Throwable in Java contenga sempre la traccia dello stack. È corretto? Ora sembra che rilevo exceptions senza la traccia dello stack. Ha senso? È ansible rilevare un’eccezione senza la traccia dello stack?

Come leggere le tracce di stack dell’objective-c

ho la seguente traccia dello stack: 0 MyApp 0x000833a3 +[TFCrashHandler backtrace] + 26 1 MyApp 0x000836bd TFSignalHandler + 28 2 libsystem_c.dylib 0x33eac727 _sigtramp + 34 3 ??? 0x00000002 0x0 + 2 4 MyApp 0x000803f1 msgpack_unpack_next + 112 5 MyApp 0x0007faeb +[MessagePackParser parseData:] + 74 6 MyApp 0x0007f84b -[NSData(NSData_MessagePack) messagePackParse] + 26 7 MyApp 0x000254c3 +[Http […]

Traccia stack completa Xcode

Mentre il debug c’è comunque per vedere una traccia stack completa, lista di metodi chiamati nel thread principale. O in qualsiasi modo per stamparli sulla finestra di comando.

StackTrace in Flash / ActionScript 3.0

Voglio vedere la traccia dello stack in qualsiasi funzione del mio codice, quindi ho fatto qualcosa del genere per chiamarlo e stampare la traccia dello stack: public function PrintStackTrace() { try { throw new Error(‘StackTrace’); } catch (e:Error) { trace(e.getStackTrace()); } } Mi piace sapere se ci sono altri modi per farlo. In qualche luogo, […]