set_stats – Set stats for the current ansible run

New in version 2.3.

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
-
Default:
"yes"
boolean that indicates if the provided value is aggregated to the existing stat yes or will replace it no
data
- / required
A dictionary of which each key represents a stat (or variable) you want to keep track of
per_host
-
Default:
"no"
boolean that indicates if the stats is per host or for all hosts in the run.

Notes

Note

  • This module is also supported for Windows targets.
  • In order for custom stats to be displayed, you must set show_custom_stats in ansible.cfg or ANSIBLE_SHOW_CUSTOM_STATS to true.

Examples

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

# 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

Authors

  • Brian Coca (@bcoca)

Hint

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