Debug trace using mongosymb.py

HI,
anyone if used mongosymb.py, please help me out to understand what is path/to/executables here:

https://gitlab.retis.santannapisa.it/t.cucinotta/mongo/-/blob/ec7af3523d4aa5130c56a05d76169755d9b5a611/buildscripts/mongosymb.py

I am trying to debug backtrace,

 python3 mongosymb.py --symbolizer-path=/home/aayushi/mongodb-linux-x86_64-ubuntu1804-4.2.8/mongod.debug  mongod < stacktrace.json
Traceback (most recent call last):
  File "mongosymb.py", line 250, in <module>
    main()
  File "mongosymb.py", line 245, in main
    frames = symbolize_frames(trace_doc, resolver, **vars(options))
  File "mongosymb.py", line 84, in symbolize_frames
    stderr=open("/dev/null"))
  File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
    restore_signals, start_new_session)
  File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
OSError: [Errno 8] Exec format error: '/home/aayushi/mongodb-linux-x86_64-ubuntu1804-4.2.8/mongod.debug'

Hi @Aayushi_Mangal ,

I’m not familiar with this script, but it looks like --symbolizer-path is meant to be the path for the llvm-symbolizer binary, and the mongod.debug executable should be the next parameter to the script (replacing mongod in your example).

If llvm-symbolizer can be found in your PATH environment, you do not need to provide the --symbolizer-path location.

Regards,
Stennie

Hi @Stennie

Yes it is resolved now, thank you. that path is required as not installed.

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.