eventheader

Crates.ioeventheader
lib.rseventheader
version0.4.0
sourcesrc
created_at2023-05-09 22:57:47.789131
updated_at2024-04-12 23:51:21.910714
descriptionRust API for eventheader-encoded Linux Tracepoints via user_events
homepage
repositoryhttps://github.com/microsoft/LinuxTracepoints-Rust
max_upload_size
id860860
size152,251
Kyle Sabo (Robo210)

documentation

README

EventHeader for Rust

Crates.io Documentation MIT licensed Build Status maintenance status

The eventheader crate provides a simple and efficient way to log EventHeader-encoded Tracepoints via the Linux user_events system. The events can be generated and collected on Linux 6.4 or later (requires the user_events kernel feature to be enabled, the tracefs or debugfs filesystem to be mounted, and appropriate permissions configured for the /sys/kernel/.../tracing/user_events_data file).

This crate uses macros to generate event metadata at compile-time, improving runtime performance and minimizing dependencies. To enable compile-time metadata generation, the event schema must be specified at compile-time. For example, event name and field names must be string literals, not variables.

In rare cases, you might not know what events you want to log until runtime. For example, you might be implementing a middle-layer library providing event support to a dynamic top-layer or a scripting language like JavaScript or Python. In these cases, you might use the eventheader_dynamic crate instead of this crate.

Commit count: 29

cargo fmt