pmdabpftrace - bpftrace PMDA
pmdabpftrace is a Performance Co-Pilot (PCP) Performance Metrics Domain
Agent (PMDA) which exports metrics from
bpftrace(8) scripts.
pmdabpftrace reads an optional ini-style configuration file:
- $PCP_PMDAS_DIR/bpftrace/bpftrace.conf
This file may contain
[bpftrace] and
[dynamic_scripts] sections.
If you enable the
dynamic scripts functionality, please refer to
https://pcp.io/docs/lab.auth.html on how to setup authentication. This
is
highly recommended, as otherwise anyone could run any
bpftrace(8) script as
root.
[bpftrace] section specifies values for the following settings (their
default values are shown in parenthesis):
- bpftrace_path (bpftrace)
- Path to the bpftrace(8) executable.
- script_expiry_time (60)
- Unnamed scripts are removed after this period of time (in
seconds) in case there has been no requests for their values.
- max_throughput (2097152)
- Maximum throughput of bpftrace scripts in bytes.
[dynamic_scripts] section specifies values for the following settings
(their default values are shown in parenthesis):
- enabled (false)
- A boolean value to specify whether script should be started
on demand, by executing pmStore (3) bpftrace.control.register. This
feature needs to be enabled for the PCP bpftrace datasource in
grafana-pcp.
- auth_enabled (true)
- A boolean value to specify whether authentication is
required or not. Please see the note above on authentication setup.
- allowed_users (root)
- A comma-separated list of usernames which are allowed to
register bpftrace(8) scripts.
To install, the following must be done as root:
# cd $PCP_PMDAS_DIR/bpftrace
# ./Install
To uninstall, the following must be done as root:
# cd $PCP_PMDAS_DIR/bpftrace
# ./Remove
pmdabpftrace is launched by
pmcd(1) and should never be executed
directly. The
Install and
Remove scripts notify
pmcd(1)
when the agent is installed or removed.
- $PCP_PMDAS_DIR/bpftrace/bpftrace.conf
- configuration file for the pmdabpftrace agent
- $PCP_PMDAS_DIR/bpftrace/Install
- installation script for the pmdabpftrace agent
- $PCP_PMDAS_DIR/bpftrace/Remove
- undo installation script for the pmdabpftrace
agent
- $PCP_LOG_DIR/pmcd/bpftrace.log
- default log file for messages from the pmdabpftrace
agent
Note that the usual/default value for
$PCP_PMDAS_DIR is
/var/lib/pcp/pmdas and the default for
$PCP_LOG_DIR is
/var/log/pcp but these settings are platform dependent.
Environment variables with the prefix
PCP_ are used to parameterize the
file and directory names used by PCP. On each installation, the file
/etc/pcp.conf contains the local values for these variables. The
$PCP_CONF variable may be used to specify an alternative configuration
file, as described in
pcp.conf(5).
PCPIntro(1),
pmcd(1) and
bpftrace(8).