# set_stats – Set stats for the current ansible run

- Synopsis

- Parameters

- Notes

- Examples

- Status

## Synopsis

- This module allows setting/accumulating stats on the current ansible run, either per host or for all hosts in the run.

- This module is also supported for Windows targets.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---

aggregate
boolean

Choices:
- no
- yes ←

Whether the provided value is aggregated to the existing stat `yes` or will replace it `no`.

data dictionary / required |  | A dictionary of which each key represents a stat (or variable) you want to keep track of.

per_host
boolean

Choices:
- no ←
- yes

whether the stats are per host or for all hosts in the run.

## Notes

Note

- In order for custom stats to be displayed, you must set `show_custom_stats` in `ansible.cfg` or `ANSIBLE_SHOW_CUSTOM_STATS` to `yes`.

- This module is also supported for Windows targets.

## Examples

    # Aggregating packages_installed stat per host
    - set_stats:
        data:
          packages_installed: 31
        per_host: yes

    # Aggregating random stats for all hosts using complex arguments
    - set_stats:
        data:
          one_stat: 11
          other_stat: "{{ local_var * 2 }}"
          another_stat: "{{ some_registered_var.results | map(attribute='ansible_facts.some_fact') | list }}"
        per_host: no

    # setting stats (not aggregating)
    - set_stats:
        data:
          the_answer: 42
        aggregate: no

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Brian Coca (@bcoca)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.