xref: /linux/tools/perf/Documentation/perf-daemon.txt (revision 88adb1194cc51a4d3f1930ddd6c8f0b0f9f3a936)
1d450bc50SJiri Olsaperf-daemon(1)
2d450bc50SJiri Olsa==============
3d450bc50SJiri Olsa
4d450bc50SJiri Olsa
5d450bc50SJiri OlsaNAME
6d450bc50SJiri Olsa----
7d450bc50SJiri Olsaperf-daemon - Run record sessions on background
8d450bc50SJiri Olsa
9d450bc50SJiri Olsa
10d450bc50SJiri OlsaSYNOPSIS
11d450bc50SJiri Olsa--------
12d450bc50SJiri Olsa[verse]
13d450bc50SJiri Olsa'perf daemon'
14d450bc50SJiri Olsa'perf daemon' [<options>]
15d450bc50SJiri Olsa'perf daemon start'  [<options>]
16d450bc50SJiri Olsa
17d450bc50SJiri Olsa
18d450bc50SJiri OlsaDESCRIPTION
19d450bc50SJiri Olsa-----------
20d450bc50SJiri OlsaThis command allows to run simple daemon process that starts and
21d450bc50SJiri Olsamonitors configured record sessions.
22d450bc50SJiri Olsa
23c0666261SJiri OlsaYou can imagine 'perf daemon' of background process with several
24c0666261SJiri Olsa'perf record' child tasks, like:
25c0666261SJiri Olsa
26c0666261SJiri Olsa  # ps axjf
27c0666261SJiri Olsa  ...
28c0666261SJiri Olsa       1  916507 ... perf daemon start
29c0666261SJiri Olsa  916507  916508 ...  \_ perf record --control=fifo:control,ack -m 10M -e cycles --overwrite --switch-output -a
30c0666261SJiri Olsa  916507  916509 ...  \_ perf record --control=fifo:control,ack -m 20M -e sched:* --overwrite --switch-output -a
31c0666261SJiri Olsa
32c0666261SJiri OlsaNot every 'perf record' session is suitable for running under daemon.
33c0666261SJiri OlsaUser need perf session that either produces data on query, like the
34c0666261SJiri Olsaflight recorder sessions in above example or session that is configured
35c0666261SJiri Olsato produce data periodically, like with --switch-output configuration
36c0666261SJiri Olsafor time and size.
37d450bc50SJiri Olsa
38d450bc50SJiri OlsaOPTIONS
39d450bc50SJiri Olsa-------
40d450bc50SJiri Olsa-v::
41d450bc50SJiri Olsa--verbose::
42d450bc50SJiri Olsa	Be more verbose.
43d450bc50SJiri Olsa
44fc1dcb1eSJiri Olsa--config=<PATH>::
45fc1dcb1eSJiri Olsa	Config file path. If not provided, perf will check system and default
46fc1dcb1eSJiri Olsa	locations (/etc/perfconfig, $HOME/.perfconfig).
47fc1dcb1eSJiri Olsa
485631d100SJiri Olsa--base=<PATH>::
495631d100SJiri Olsa	Base directory path. Each daemon instance is running on top
505631d100SJiri Olsa	of base directory.
515631d100SJiri Olsa
52d450bc50SJiri OlsaAll generic options are available also under commands.
53d450bc50SJiri Olsa
54d450bc50SJiri Olsa
55d450bc50SJiri OlsaSTART COMMAND
56d450bc50SJiri Olsa-------------
57d450bc50SJiri OlsaThe start command creates the daemon process.
58d450bc50SJiri Olsa
5988adb119SJiri Olsa-f::
6088adb119SJiri Olsa--foreground::
6188adb119SJiri Olsa	Do not put the process in background.
6288adb119SJiri Olsa
63d450bc50SJiri Olsa
64c0666261SJiri OlsaCONFIG FILE
65c0666261SJiri Olsa-----------
66c0666261SJiri OlsaThe daemon is configured within standard perf config file by
67c0666261SJiri Olsafollowing new variables:
68c0666261SJiri Olsa
69c0666261SJiri Olsadaemon.base:
70c0666261SJiri Olsa	Base path for daemon data. All sessions data are
71c0666261SJiri Olsa	stored under this path.
72c0666261SJiri Olsa
73c0666261SJiri Olsasession-<NAME>.run:
74c0666261SJiri Olsa	Defines new record session. The value is record's command
75c0666261SJiri Olsa	line without the 'record' keyword.
76c0666261SJiri Olsa
77c0666261SJiri OlsaEach perf record session is run in daemon.base/<NAME> directory.
78c0666261SJiri Olsa
79c0666261SJiri Olsa
80d450bc50SJiri OlsaSEE ALSO
81d450bc50SJiri Olsa--------
82d450bc50SJiri Olsalinkperf:perf-record[1], linkperf:perf-config[1]
83