When I am running code on a container it cores I am not able to locate it on my container(or the core file is not being stored).
ulimit -c
is set to unlimited
/proc/sys/kernel/core_pattern
is set to
|/usr/share/apport/apport %p %s %c %P
(what is the meaning of |
?)Do I need to make any changes in/to the host system?
|
indicates that a program should handle the core dump. Rather than saving the coredump to a file it will be piped into that programs input. Means if core_pattern
is set to |... apport
apport
will handle the core dumps.
Unfortunately apport
will create coredumps only for installed
packages. I would set the pattern to a file name, like this:
echo '/tmp/cores/core.%e.%p.%t' > /proc/sys/kernel/core_pattern
The would give you coredumps like /tmp/core.program.pid.012345678
where program
is the program name, pid
the program's pid plus a timestamp at the end.
Check man core
for more information (espcecially information about meta chars that can be used in the core pattern.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With