1 unstable release

new 0.4.1 Feb 28, 2025

#939 in Debugging

Download history 141/week @ 2025-02-26

141 downloads per month

MIT license

2.5MB
10K SLoC

perf.data file format

This crate provides support for reading and writing files compatible with the perf.data files generated by the Linux perf tool.

Core types:

  • PerfDataFileReader supports enumerating the headers and events from a perf.data file. It exposes the data using types from the tracepoint_decode crate, making it easy to decode the resulting events and their fields.
  • PerfDataFileWriter supports writing a perf.data file containing caller-supplied headers and event data. It includes support for synthesizing some of the more commonly-used headers from tracepoint_decode metadata types, including the TRACING_DATA and EVENT_DESC headers.

Examples:

  • decode_perf: demonstrates using PerfDataFileReader along with the types from the tracepoint_decode crate to decode a perf.data file and write it as text to stdout.
  • decode_perf_to_json: expands on the decode_perf sample and converts event data to JSON.
  • rewrite_perf: demonstrates using PerfDataFileWriter, generating a new perf.data file using content from an existing perf.data file.

Dependencies