Report Reference

This version of Puppet is not included in Puppet Enterprise. The latest version of PE includes Puppet 4.4. A newer version is available; see the version menu above for details.

Report Reference

This page is autogenerated; any changes will get overwritten (last generated on Thu Sep 05 14:13:33 -0700 2013)

Puppet clients can report back to the server after each transaction. This transaction report is sent as a YAML dump of the Puppet::Transaction::Report class and includes every log message that was generated during the transaction along with as many metrics as Puppet knows how to collect. See Reports and Reporting for more information on how to use reports.

Currently, clients default to not sending in reports; you can enable reporting by setting the report parameter to true.

To use a report, set the reports parameter on the server; multiple reports must be comma-separated. You can also specify none to disable reports entirely.

Puppet provides multiple report handlers that will process client reports:


Send report information via HTTP to the reporturl. Each host sends its report as a YAML dump and this sends this YAML to a client via HTTP POST. The YAML is the body of the request.


Send all received logs to the local log destinations. Usually the log destination is syslog.


Graph all available data about hosts using the RRD library. You must have the Ruby RRDtool library installed to use this report, which you can get from the RubyRRDTool RubyForge page.
This package may also be available as ruby-rrd or rrdtool-ruby in your distribution’s package management system. The library and/or package will both require the binary rrdtool package from your distribution to be installed.

This report will create, manage, and graph RRD database files for each of the metrics generated during transactions, and it will create a few simple html files to display the reporting host’s graphs. At this point, it will not create a common index file to display links to all hosts.

All RRD files and graphs get created in the rrddir directory. If you want to serve these publicly, you should be able to just alias that directory in a web server.

If you really know what you’re doing, you can tune the rrdinterval, which defaults to the runinterval.


Store the yaml report on disk. Each host sends its report as a YAML dump and this just stores the file on disk, in the reportdir directory.

These files collect quickly – one every half hour – so it is a good idea to perform some maintenance on them if you use this report (it’s the only default report).


This report sends specific log messages to specific email addresses based on the tags in the log messages.

See the documentation on tags for more information.

To use this report, you must create a tagmail.conf file in the location specified by the tagmap setting. This is a simple file that maps tags to email addresses: Any log messages in the report that match the specified tags will be sent to the specified email addresses.

Lines in the tagmail.conf file consist of a comma-separated list of tags, a colon, and a comma-separated list of email addresses. Tags can be !negated with a leading exclamation mark, which will subtract any messages with that tag from the set of events handled by that line.

Puppet’s log levels (debug, info, notice, warning, err, alert, emerg, crit, and verbose) can also be used as tags, and there is an all tag that will always match all log messages.

An example tagmail.conf:

webserver, !mailserver:

This will send all messages to, and all messages from webservers that are not also from mailservers to

If you are using anti-spam controls such as grey-listing on your mail server, you should whitelist the sending email address (controlled by reportform configuration option) to ensure your email is not discarded as spam.

This page autogenerated on Thu Sep 05 14:13:33 -0700 2013

↑ Back to top