I am experiencing opportunistic crashes of asterisk approximately once a week without any significant log entry or resource peak preceding it. This started occurring when I upgraded to the 10.13.66-21 version. My versions of Asterisk packages:
Well, hopefully, but I would ask for a little of guidance here. When Asterisk crashes, it dumps the core and then it is restarted by safe_asterisk. This happens within 50 seconds. I have no idea how I could be able to run gdb effectively since by the time I log in, there is entirely different Asterisk process running. Can I bind it to safe_asterisk somehow? Or how should I proceed?
If you read the wiki Bryan linked to it shows that the crash dump is placed in tmp. It doesn’t matter if asterisk is running or not. Thats not how it works.
Once asterisk crashes, it produces a core dump in /tmp which you can then run through a program called gdb to get a backtrace of where it is crashing. Once you do this we should be able to further assist you.
Guys, please accept my apology. I did not see “[name of the core file]” clause. You can find the link to my core dump in my first post. GDB output generated using the command from the page is below.
Crash just happened again, but now it was really strange. First of all, asterisk started reloading itself over and over again after I tried to add two more extensions and apply config (now I have approx 500 extensions with 250 of them online, all PJSIP). I had to restart asterisk from console. Then, it worked for 15 minuted and crashed with core dump again.
I have tried asterisk forum as well. But they say, the backtrace is optimized. Could you please tell me, what is your procedure to make the logs/backtraces useful for them as well?
No need to say sorry, I admire you guys, absolutely! Just dont know how to track the problem down. Have you learned something from the backtraces? It is just gibberish to me :/.
with current distro (10.13.66) I have been experiencing asterisk crashes and deadlocks. Each time I created a backtrace, the developers of Asterisk told me it is optimized and missing debug symbols, and therefore it is of no use.
So my question is, has anyone of you created a backtrace on the FreePBX distro that was accepted by the asterisk developers? If so, how did you proceed?
I know asterisk is compiled with DONT_OPTIMIZE on the distro but yet, it was not enough. Do I need to recompile asterisk from source? If so, is it safe on the distro to run custom build asterisk? Do you have any experience with that?
You sent Digium a backtrace without this enabled. This has to be enabled before the crash. Then when it does crash you will have the debug symbols. Which then you can send to Digium.
first, thank you for your response. Second, I was pretty sure I installed the packages approx. 3 months ago when I was experiencing deadlocks caused by tcp transport (now fixed in 13.17). Well, I have checked bash history and packages now and it is not there, so to be honest I feel pretty stupid and dont know what to say on my excuse…
Anyway, I will install the packages and try my luck with digium again.
Thank you very much for not giving up on me.
PS. You moved my more general question here. Could you please share some thoughts on running custom build asterisk on FreePBX distro?