# Example config for a long trace periodically flushed into the # target file. See docs/long-traces.md for more. # Enable periodic flushing of the trace buffer into the output file. write_into_file: true # Max duration: 30 mins. duration_ms: 1800000 # Writes the userspace buffer into the file every 2.5 seconds. file_write_period_ms: 2500 # Commits the trace from the shared memory buffer to the central buffer # periodically. Otherwise, the --full-sort option will be required for # trace_processor_shell and traceconv when importing the trace. flush_period_ms: 20000 # The trace buffers needs to be big enough to hold |file_write_period_ms| of # trace data. The trace buffer sizing depends on the number of trace categories # enabled and the device activity. A good rule of thumb is ~10-20 MB per second, # so if |file_write_period_ms| ~ 3s -> 30 MB. buffers { size_kb: 32768 fill_policy: RING_BUFFER } # Enable various data sources as usual. data_sources { config { name: "linux.ftrace" target_buffer: 0 ftrace_config { # These parameters affect only the kernel trace buffer size and how # frequently it gets moved into the userspace buffer defined above. buffer_size_kb: 16384 drain_period_ms: 250 ftrace_events: "cpu_frequency" ftrace_events: "cpu_idle" ftrace_events: "sched_process_exec" ftrace_events: "sched_process_exit" ftrace_events: "sched_process_fork" ftrace_events: "sched_process_free" ftrace_events: "sched_process_hang" ftrace_events: "sched_process_wait" ftrace_events: "sched_switch" ftrace_events: "sched_wakeup_new" ftrace_events: "sched_wakeup" ftrace_events: "sched_waking" ftrace_events: "task_newtask" ftrace_events: "task_rename" ftrace_events: "tracing_mark_write" } } } data_sources { config { name: "linux.process_stats" target_buffer: 0 } }