Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New feature: panic handler #1083

Closed
kgiusti opened this issue May 18, 2023 · 0 comments · Fixed by #1084
Closed

New feature: panic handler #1083

kgiusti opened this issue May 18, 2023 · 0 comments · Fixed by #1084
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@kgiusti
Copy link
Contributor

kgiusti commented May 18, 2023

If the router crashes (gasp! - the unthinkable!) we need a way to diagnose the cause of the crash.

In bare-metal environments a router crash (usually) generates a coredump file. This file can be used to debug the cause of the crash.

However in containerized/cloud deployments a coredump may not be accessible, depending on the configuration of the host. Often the user may not have the privileges necessary to access a coredump. Furthermore any state associated with the containerized skupper-router is destroyed when the router crashes.

This new feature proposes to add a panic handler to skupper-router that will dump the state of the crashing thread's execution context (stack backtrace) to stderr when a crash occurs. Container orchestration platforms like kubernettes will typically save a container's stdout/stderr output across a restart and it should be possible to access the output post crash. While not as useful as a coredump the stack backtrace can help identify the cause of the crash.

This feature will not replace coredump functionality - after the panic handler completes a coredump will still be generated for the crashing router.

@kgiusti kgiusti self-assigned this May 18, 2023
@ganeshmurthy ganeshmurthy added this to the 2.4.0 milestone May 18, 2023
@kgiusti kgiusti linked a pull request May 22, 2023 that will close this issue
3 tasks
@ganeshmurthy ganeshmurthy added the enhancement New feature or request label May 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants