Formats: Reports
Puppet 5.5.3 uses report format 10.
Report Format 10
This is the format of reports output by Puppet versions 5.5.3 and newer. It is backward compatible with report format 9 (in Puppet versions 5.5.0 to 5.5.2).
Puppet::Transaction::Report
Property | Type | Description |
---|---|---|
host | string | The host that generated this report. |
time | datetime | When the run began. |
logs | array | 0 or more Puppet::Util::Log objects. |
metrics | hash | Maps from string (metric category) to Puppet::Util::Metric. |
resource_statuses | hash | Maps from resource name to Puppet::Resource::Status |
configuration_version | string or integer | The "configuration version" of the Puppet run. This is a string if the user has specified their own versioning scheme, otherwise an integer representing seconds since the Unix epoch. |
transaction_uuid | string | A UUID covering the transaction. The query parameters for the catalog retrieval will have included the same UUID. |
code_id | string | The id of the code input to the compiler. |
job_id | string, or null | The id of the job that this transaction is a part of. |
catalog_uuid | string | A master generated catalog uuid, useful for connecting a single catalog to multiple reports. |
master_used | string | The name of the master that was used to compile the catalog. If failover occurred, this holds the first master successfully contacted. If this run had no master (for example, a "puppet apply" run), this field will be blank. |
report_format | string or integer | "7", or 7 |
puppet_version | string | The version of the Puppet agent. |
status | string | "failed", "changed", or "unchanged" |
transaction_completed | boolean | Whether the transaction completed. For instance, if the transaction didn't have an unrescued exception, transaction_completed should be true. |
noop | boolean | Whether or not the Puppet run was started in noop mode. |
noop_pending | boolean | Whether or not there are changes that Puppet decided not to apply because of noop. |
environment | string | The environment that was used for the puppet run. |
corrective_change | boolean | True if a change or noop event in this report was caused by an unexpected change to the system between Puppet runs. |
cached_catalog_status | string | Whether a cached catalog was used in the run, and if so, the reason that it was used. "not_used", "explicitly_requested", or "on_failure". |
Puppet::Util::Log
Property | Type | Description |
---|---|---|
file | string | the pathname of the manifest file which triggered the log message. |
line | integer | the line number in the manifest file which triggered the log message. |
level | symbol | severity of the message. Possible values for level are :debug, :info, :notice, :warning, :err, :alert, :emerg, :crit |
message | string | the message itself. |
source | string | the origin of the log message. This could be a resource, a property of a resource, or the string "Puppet". |
tags | array | each array element is a string. |
time | datetime | when the message was sent. |
The file
and line
attributes are not always present.
Puppet::Util::Metric
A Puppet::Util::Metric
object represents all the metrics in a single category.
Property | Type | Description |
---|---|---|
name | string | Specifies the name of the metric category. This is the same as the key associated with this metric in the metrics hash of the Puppet::Transaction::Report. |
label | string | This is the "titleized" version of the name, underscores are replaced with spaces and the first word is capitalized. |
values | array | All the metric values within this category. Each element is of the form [name, titleized_name, value], where name is the name of the particular metric as a string, titleized_name is the "titleized" string of the name, and value is the quantity (an integer or a float). |
The set of particular metrics and categories which appear in a report is a fixed set. In a successful report, the categories and metrics are:
- In the
time
category, there is a metric for every resource type for which there is at least one resource in the catalog, plus two additional metrics, calledconfig_retrieval
andtotal
. Each value in thetime
category is a float. - In the
resources
category, the metrics arefailed
,out_of_sync
,changed
, andtotal
. Each value in theresources
category is an integer. - In the
events
category, there are up to five metrics:success
,failure
,audit
,noop
, andtotal
.total
is always present; the others are only present when their values are non-zero. Each value in theevents
category is an integer. - In the
changes
category, there is only one metric, calledtotal
. Its value is an integer.
Failed reports contain no metrics.
In an inspect report, there is an additional inspect
metric in the time
category.
Puppet::Resource::Status
A Puppet::Resource::Status object represents the status of a single resource.
Property | Type | Description |
---|---|---|
resource_type | string | the resource type, capitalized. |
title | title | the resource title. |
resource | string | the resource name, in the form Type[title]. This is always the same as the key corresponding to this Puppet::Resource::Status object in the resource_statuses hash. Deprecated. |
provider_used | string | The name of the provider used by the resource. |
file | string | the pathname of the manifest file which declared the resource |
line | integer | the line number in the manifest file which declared the resource |
evaluation_time | float | the amount of time, in seconds, taken to evaluate the resource. Not present in inspect reports. |
change_count | integer | the number of properties which changed. Always 0 in inspect reports. |
out_of_sync_count | integer | the number of properties which were out of sync. Always 0 in inspect reports. |
tags | array | the strings with which the resource is tagged |
time | datetime | the time at which the resource was evaluated |
events | array | the Puppet::Transaction::Event objects for the resource |
out_of_sync | boolean | True if out_of_sync_count > 0, otherwise false. Deprecated. |
changed | boolean | True if change_count > 0, otherwise false. Deprecated. |
skipped | boolean | True if the resource was skipped, otherwise false. |
failed | boolean | True if Puppet experienced an error while evaluating this resource, otherwise false. Deprecated. |
failed_to_restart | boolean | True if Puppet experienced an error while trying to restart this resource (for example, when a Service resource has been notified from another resource), otherwise false. |
containment_path | array | An array of strings; each element represents a container (type or class) that, together, make up the path of the resource in the catalog. |
Puppet::Transaction::Event
A Puppet::Transaction::Event object represents a single event for a single resource.
Property | Type | Description |
---|---|---|
audited | boolean | true if this property is being audited, otherwise false. True in inspect reports. |
property | string | the property for which the event occurred. This value will be missing if the provider errored out before it could be determined. |
previous_value | string, array, or hash | the value of the property before the change (if any) was applied. This value will be missing if the provider errored out before it could be determined. |
desired_value | string, array, or hash | the value specified in the manifest. Absent in inspect reports. This value will be missing if the provider errored out before it could be determined. |
historical_value | string, array, or hash | the audited value from a previous run of Puppet, if known. Otherwise nil. Absent in inspect reports. This value will be missing if the provider errored out before it could be determined. |
message | string | the log message generated by this event |
name | symbol | the name of the event. Absent in inspect reports. |
status | string | one of the following strings: "success", "failure", "noop", "audit", depending on the type of the event (see below). Always "audit" in inspect reports. |
redacted | boolean | Whether or not this event has been redacted. |
time | datetime | the time at which the property was evaluated |
corrective_change | boolean | True if this event was caused by an unexpected change to the system between Puppet runs. |
Puppet::Transaction::Event#status
meanings:
-
success
: property was out of sync, and was successfully changed to be in sync. -
failure
: property was out of sync, and couldn’t be changed to be in sync due to an error. -
noop
: property was out of sync, and wasn’t changed due to noop mode. -
audit
: property was in sync, and was being audited.
Differences from Report Format 9
-
failed_to_restart
was added toPuppet::Resource::Status