pub struct Meta {
pub project: String,
pub version: String,
pub git_sha: Option<String>,
pub build_id: Option<String>,
pub captured_at_ms: u128,
pub pid: u32,
pub ppid: Option<u32>,
pub thread: Option<String>,
}Expand description
Identity of the build and process that produced the report — everything a bug report needs to locate the exact code and, with the symbol store, to symbolicate offline.
Fields§
§project: StringAdopting project name, e.g. "myapp".
version: StringPackage semver, e.g. "0.1.0".
git_sha: Option<String>Git commit the build came from, if known.
build_id: Option<String>GNU build-id (hex) of the running binary — the symbolication key.
captured_at_ms: u128Unix-epoch milliseconds when the report was captured.
pid: u32Process id, for correlating with external logs.
ppid: Option<u32>Parent process id. Distinguishes a supervisor-restarted crash loop from independent processes, and identifies the launcher of a rogue peer.
thread: Option<String>Name of the thread the failure was detected on, when it has one.
Implementations§
Source§impl Meta
impl Meta
Sourcepub fn current_ppid() -> Option<u32>
pub fn current_ppid() -> Option<u32>
Best-effort parent pid.
Read from procfs, so it is None anywhere procfs is absent — macOS and
the BSDs included, despite those being unix. Getting it there means
getppid(2), and a libc dependency is not worth one advisory field on a
report; callers already treat this as optional.
Sourcepub fn current_thread_name() -> Option<String>
pub fn current_thread_name() -> Option<String>
The current thread’s name, when it was given one.