ansible.builtin.cgroup_perf_recap (v2.9.27) — callback

Profiles system activity of tasks and full execution using cgroups

| "added in version" 2.8 of ansible.builtin"

Authors: unknown

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.9.27

Description

This is an ansible callback plugin utilizes cgroups to profile system activity of ansible and individual tasks, and display a recap at the end of the playbook execution


Requirements

Inputs

    
output_dir:
    default: /tmp/ansible-perf-%s
    description: Output directory for files containing recorded performance readings.
      If the value contains a single %s, the start time of the playbook run will be inserted
      in that space. Only the deepest level directory will be created if it does not exist,
      parent directories will not be created.
    env:
    - name: CGROUP_OUTPUT_DIR
    ini:
    - key: output_dir
      section: callback_cgroup_perf_recap
    type: path

write_files:
    default: false
    description: Dictates whether files will be written containing performance readings
    env:
    - name: CGROUP_WRITE_FILES
    ini:
    - key: write_files
      section: callback_cgroup_perf_recap
    type: bool

control_group:
    description: Name of cgroups control group
    env:
    - name: CGROUP_CONTROL_GROUP
    ini:
    - key: control_group
      section: callback_cgroup_perf_recap
    required: true

display_recap:
    default: true
    description: Controls whether the recap is printed at the end, useful if you will
      automatically process the output files
    env:
    - name: CGROUP_DISPLAY_RECAP
    ini:
    - key: display_recap
      section: callback_cgroup_perf_recap
    type: bool

file_per_task:
    default: false
    description: When set as C(True) along with C(write_files), this callback will write
      1 file per task instead of 1 file for the entire playbook run
    env:
    - name: CGROUP_FILE_PER_TASK
    ini:
    - key: file_per_task
      section: callback_cgroup_perf_recap
    type: bool

output_format:
    choices:
    - csv
    - json
    default: csv
    description: Output format, either CSV or JSON-seq
    env:
    - name: CGROUP_OUTPUT_FORMAT
    ini:
    - key: output_format
      section: callback_cgroup_perf_recap
    type: str

file_name_format:
    default: '%(feature)s.%(ext)s'
    description: Format of filename. Accepts C(%(counter)s), C(%(task_uuid)s), C(%(feature)s),
      C(%(ext)s). Defaults to C(%(feature)s.%(ext)s) when C(file_per_task) is C(False)
      and C(%(counter)s-%(task_uuid)s-%(feature)s.%(ext)s) when C(True)
    env:
    - name: CGROUP_FILE_NAME_FORMAT
    ini:
    - key: file_name_format
      section: callback_cgroup_perf_recap
    type: str

cpu_poll_interval:
    default: 0.25
    description: Interval between CPU polling for determining CPU usage. A lower value
      may produce inaccurate results, a higher value may not be short enough to collect
      results for short tasks.
    env:
    - name: CGROUP_CPU_POLL_INTERVAL
    ini:
    - key: cpu_poll_interval
      section: callback_cgroup_perf_recap
    type: float

pid_poll_interval:
    default: 0.25
    description: Interval between PID polling for determining PID count. A lower value
      may produce inaccurate results, a higher value may not be short enough to collect
      results for short tasks.
    env:
    - name: CGROUP_PID_POLL_INTERVAL
    ini:
    - key: pid_poll_interval
      section: callback_cgroup_perf_recap
    type: float

memory_poll_interval:
    default: 0.25
    description: Interval between memory polling for determining memory usage. A lower
      value may produce inaccurate results, a higher value may not be short enough to
      collect results for short tasks.
    env:
    - name: CGROUP_MEMORY_POLL_INTERVAL
    ini:
    - key: memory_poll_interval
      section: callback_cgroup_perf_recap
    type: float