The Memfault SDKs extract only the necessary data off of the device to minimize bandwidth, storage requirements, and complexity on the device. To enable these benefits, Memfault requires the use of debug information files to convert the data from its minimal, machine form to something is human-readable and understood by developers.
From these debug information files, Memfault can extract stack traces, thread and process information, stack, global, and static variables, function names, arguments passed to functions, and source code related items like the file and line number of certain functions and addresses.
Memfault's SDK will also bake information into debug information files during the build process such as the Memfault SDK version, the compact log conversion dictionary, and more.
All of this information can then be displayed on a Memfault Issue page for easy consumption by users.