On Tue, Dec 13, 2016 at 01:06:29PM -0500, Jakub Cajka wrote:
can we enable coredumping for Go programs by default - i.e. set GOTRACEBACK= crash?
Currently, Go terminate a process that panic and prints out an error message on stderr.
This approach does not provide much room for automatic Go panic detection.
It should be possible without any significant side effects apart from generating cores and traces. But to enable this, I believe, it would need alteration to the default system env.
Would it be possible? What is the package providing the default env vars?
systemd has DefaultEnvironment= in /etc/systemd/system.conf, but it is supposed to be used to create local overrides, and doesn't work well for this case (it's %config(noreplace) among other problems). In general setting global env vars does not work.
Instead, it would be nicer to modify the go runtime to default to a coredump if GOTRACEBACK= is not set. This would cover more cases and would not pollute the environment for users who are not using go.
Zbyszek