PMDABPFTRACE(1)

NAME
pmdabpftrace - bpftrace PMDA

DESCRIPTION
pmdabpftrace is a Performance Co-Pilot (PCP) Performance Metrics Domain Agent (PMDA) which exports metrics from bpftrace(8) scripts.

CONFIGURATION
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.

INSTALLATION
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.

FILES

$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.

PCP ENVIRONMENT
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).

SEE ALSO
PCPIntro(1), pmcd(1) and bpftrace(8).