Noob Question

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Noob Question

Onorio Catenacci
Hi all,

Sorry for this noob question but my google-fu is not what it once was.  

When I get a crash dump with the slogan "Init terminating in do_boot ()" and the boot script contains {progress} points such as would get reported by an  init:get_status/0 message (like here:)

     {progress,preloaded},


Does that get recorded in the crash dump somewhere?  I suspect I know where the error is occurring but if I could find those progress messages in the crash dump it might help me to isolate which binary is having a problem getting loaded. 

I mean to say there are a few {progress . . . } messages in the script and if I could figure out which one it's getting to before it crashes that would help me to rule in or rule out which binary it isn't finding or which one it's barfing on.

Also, is there any way to trace the loading of the .boot file which is compiled from the .script or do I have to basically build a command line to try to see what's the matter?

--

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Noob Question

Jesper Louis Andersen-2
I'm not sure it is what you are after, but perhaps it can hit the battleship in a few shots if we try:

Is 'erl -init_debug' what you are after in order to figure out what is the problem in the initialization phase? You can often figure out a way to pass that option to a release (by supplying it as part of the virtual machine arguments).

Another trick is to look around the message. Often, when do_boot() fails, it logs what is the problem around it.

Also, I've always found the Erlang boot sequence a bit lacking in information when debugging it, but perhaps I have just used it incorrectly. 


On Mon, Feb 13, 2017 at 2:44 AM Onorio Catenacci <[hidden email]> wrote:
Hi all,

Sorry for this noob question but my google-fu is not what it once was.  

When I get a crash dump with the slogan "Init terminating in do_boot ()" and the boot script contains {progress} points such as would get reported by an  init:get_status/0 message (like here:)

     {progress,preloaded},


Does that get recorded in the crash dump somewhere?  I suspect I know where the error is occurring but if I could find those progress messages in the crash dump it might help me to isolate which binary is having a problem getting loaded. 

I mean to say there are a few {progress . . . } messages in the script and if I could figure out which one it's getting to before it crashes that would help me to rule in or rule out which binary it isn't finding or which one it's barfing on.

Also, is there any way to trace the loading of the .boot file which is compiled from the .script or do I have to basically build a command line to try to see what's the matter?

--
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Noob Question

Onorio Catenacci
Thanks Jesper.  I had failed to spot the -init_debug option on the vm arguments.  I'll start with that to see what it may tell me.  I have some ideas of other things to try as well so if none of that solves the issue then I'll try to give a better description of the issue.  At this point any suggestions to help me get more debugging detail are welcome so thanks much for the idea!

On Mon, Feb 13, 2017 at 1:54 PM, Jesper Louis Andersen <[hidden email]> wrote:
I'm not sure it is what you are after, but perhaps it can hit the battleship in a few shots if we try:

Is 'erl -init_debug' what you are after in order to figure out what is the problem in the initialization phase? You can often figure out a way to pass that option to a release (by supplying it as part of the virtual machine arguments).

Another trick is to look around the message. Often, when do_boot() fails, it logs what is the problem around it.

Also, I've always found the Erlang boot sequence a bit lacking in information when debugging it, but perhaps I have just used it incorrectly. 


On Mon, Feb 13, 2017 at 2:44 AM Onorio Catenacci <[hidden email]> wrote:
Hi all,

Sorry for this noob question but my google-fu is not what it once was.  

When I get a crash dump with the slogan "Init terminating in do_boot ()" and the boot script contains {progress} points such as would get reported by an  init:get_status/0 message (like here:)

     {progress,preloaded},


Does that get recorded in the crash dump somewhere?  I suspect I know where the error is occurring but if I could find those progress messages in the crash dump it might help me to isolate which binary is having a problem getting loaded. 

I mean to say there are a few {progress . . . } messages in the script and if I could figure out which one it's getting to before it crashes that would help me to rule in or rule out which binary it isn't finding or which one it's barfing on.

Also, is there any way to trace the loading of the .boot file which is compiled from the .script or do I have to basically build a command line to try to see what's the matter?

--
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions



--

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: Noob Question

Jesper Louis Andersen-2
Adding `lager` in the startup phase can help as well because it reports progress for each application booted (much like adding SASL to your application will do). If you do add lager, be sure to set its overload protector high enough. I've seen it quaff messages in the first second because a lot is going on at boot time.

I've considered patching it for this, but haven't had the time yet to even suggest it in an issue.


On Mon, Feb 13, 2017 at 8:14 PM Onorio Catenacci <[hidden email]> wrote:
Thanks Jesper.  I had failed to spot the -init_debug option on the vm arguments.  I'll start with that to see what it may tell me.  I have some ideas of other things to try as well so if none of that solves the issue then I'll try to give a better description of the issue.  At this point any suggestions to help me get more debugging detail are welcome so thanks much for the idea!

On Mon, Feb 13, 2017 at 1:54 PM, Jesper Louis Andersen <[hidden email]> wrote:
I'm not sure it is what you are after, but perhaps it can hit the battleship in a few shots if we try:

Is 'erl -init_debug' what you are after in order to figure out what is the problem in the initialization phase? You can often figure out a way to pass that option to a release (by supplying it as part of the virtual machine arguments).

Another trick is to look around the message. Often, when do_boot() fails, it logs what is the problem around it.

Also, I've always found the Erlang boot sequence a bit lacking in information when debugging it, but perhaps I have just used it incorrectly. 


On Mon, Feb 13, 2017 at 2:44 AM Onorio Catenacci <[hidden email]> wrote:
Hi all,

Sorry for this noob question but my google-fu is not what it once was.  

When I get a crash dump with the slogan "Init terminating in do_boot ()" and the boot script contains {progress} points such as would get reported by an  init:get_status/0 message (like here:)

     {progress,preloaded},


Does that get recorded in the crash dump somewhere?  I suspect I know where the error is occurring but if I could find those progress messages in the crash dump it might help me to isolate which binary is having a problem getting loaded. 

I mean to say there are a few {progress . . . } messages in the script and if I could figure out which one it's getting to before it crashes that would help me to rule in or rule out which binary it isn't finding or which one it's barfing on.

Also, is there any way to trace the loading of the .boot file which is compiled from the .script or do I have to basically build a command line to try to see what's the matter?

--
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions



--

_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions