Ho un server scritto in C++
arresto anomalo nell'ambiente di produzione al quale non ho accesso diretto. Il crash genera un enorme core dump ~ 34G che non riesco a copiare localmente. Devo analizzare il core dump ma non so come possa essere fatto senza copiarlo. Ho provato a eseguire gdbserver
sulla destinazione ma non ci vuole un file di base come parametro e sembra valido solo per il debug di esecuzione di applicazioni remote da una macchina host. C'è un modo in cui questo può essere fatto?dump di debug del nucleo remoto di debug
risposta
Ho bisogno di analizzare il core dump ma non so come possa essere fatto senza copiarlo.
Non è possibile. Avrai bisogno di ottenere il core dump dove puoi eseguire GDB.
Non riesco a ssh sulla macchina remota ma posso chiedere all'amministratore di sys di eseguire qualcosa come gdbserver per me ma non può analizzare e eseguire il debug del file core.
Non hai bisogno di amministratore di sistema per analizzare qualsiasi cosa. Devi solo chiedergli di eseguire una serie di comandi GDB e inviarti l'output. Per esempio.
where
thread apply all where
info registers
disas
... ti porterà un lungo cammino per comprendere il problema, e prenderà il vostro amministratore di sistema meno di 5 minuti.
Ho ancora bisogno di decomprimerlo per eseguirlo su gdb che non voglio fare sul mio computer locale.
Inoltre, parla con il tuo manager. La configurazione di sviluppo è irragionevole. Devi essere in grado di analizzare i crash di produzione localmente e questo significa che devi avere accesso a una macchina sufficientemente robusta.
- 1. Debug VB6 Crash Dump
- 2. Overhead di debug remoto Java
- 3. Debug remoto di un'applicazione Java
- 4. Computer client di debug remoto
- 5. Installazione di DLL di debug MS per il debug remoto
- 6. Debug remoto in VB6
- 7. Debug remoto con VS2015
- 8. Debug remoto Java - Solr
- 9. Debug remoto sul server
- 10. PyCharm debug remoto
- 11. Dump nucleo "inspiegabile"
- 12. Utilizzo del protocollo di debug remoto di Google Chrome
- 13. debug remoto di un'applicazione jnlp con eclissi
- 14. Eclipse Debug remoto con jboss
- 15. Errore di debug remoto con GDB
- 16. Debug remoto di Weblogic tramite eclipse
- 17. Debug remoto Chrome per iOS
- 18. Azure vs2015 debug remoto supporto
- 19. Debug remoto in Tomcat 6
- 20. PyCharm debug remoto - connessioni, ma non può avviare il debug
- 21. Attivare nucleo/crash dump programatically
- 22. Debug dei file di dump in Visual Studio
- 23. Debug remoto Java, come funziona tecnicamente?
- 24. VS2012 debug remoto senza un account amministratore
- 25. Applicazioni gestite per il debug remoto
- 26. Come eseguire il debug remoto del nodo JS con PHPStorm?
- 27. Eseguire il debug del test mocha.js remoto con node-inspector?
- 28. Come eseguire il debug del debug?
- 29. Node.js: come eseguire il debug in remoto?
- 30. debug di richiesta del pallone
per un programma che genera un dump di tale dimensione, non hai già un meccanismo di registrazione per aiutarti a restringere il problema a una parte specifica dell'app? – didierc
Usa 'ssh' per accedere al computer remoto - se hai accesso a' gdbserver', mi aspetto che tu possa fare la maggior parte delle cose. –
Non riesco a 'ssh' sulla macchina remota ma posso chiedere all'amministratore di sys di eseguire qualcosa come' gdbserver' per me, ma non può analizzare e eseguire il debug del file core. Stavo pensando ad una soluzione più permanente che funziona anche in futuro quando accadono cose del genere. E non abbiamo ancora implementato un meccanismo di registrazione corretto :( – user1444800