# How To Use Breakpad As a Coredump Handler on Linux This document presents a way to use Breakpad in order to generate minidumps system wide on Linux. Please refer to [Linux starter guide](./linux_starter_guide.md) if instead you want to integrate breakpad into your application. ## Motivation When working on an embedded system, disk and memory space is often limited and when a process crashes it must be restarted as soon as possible. Sometime saving a full coredump takes to much time or consumes too much space. ## Breakpad Core Handler In such case the program `core_handler` can be use to generate minidumps instead of coredumps. `core_handler` reads the firsts sections of the coredump (where the various threads are described) generated by Linux from the standard input and then directly reads `/proc//mem` to reconstruct the stacktraces. One can test it with: ``` # echo "|/usr/libexec/core_handler %P /var/lib/minidump/%e-%i.md" > /proc/sys/kernel/core_pattern # echo 1 > /proc/sys/kernel/core_pipe_limit ``` Be aware that a real world integration would likely require further customization and so `core_handler` can be wrapped into a script (for example to change the permission of the minidump file or to signal the presence of the minidump to another service). Please refer to [core(5)](https://man7.org/linux/man-pages/man5/core.5.html) for more details.