Table of Contents
A report has the following format :
@@Technique@@Type@@RuleId@@DirectiveId@@VersionId@@Component@@Key@@ExecutionTimeStamp##NodeId@#HumanReadableMessage
- Technique : Human readable Technique name
- Type : type of report (see bellow)
- RuleId : The Id of the Configuration Rule, autogenerated
- DirectiveId : The Id of the Directive, autogenerated
- VersionId : the revision of the ConfigurationRule, autogenerated
- Component : the name of the component this Directive is related to (if no component are defined in the metadata.xml, then the Technique name is used)
- Key : the value of the reference variable. If there is no reference variable, then the value None should be used
- ExecutionTimeStamp : the timestamp of the current CFEngine execution
- NodeId : the id of the node
- HumanReadableMessage : a message than a Human can understand
Table 10. Report Types
Name | Type | Mode | Max number |
---|---|---|---|
Details | log_trace | log | any |
infinity | Should be used for advanced debuging purpose only. | log_debug | log |
any | infinity | Should be used for debug purpose only. | log_info |
log | any | infinity | Use for standard logging purposes. |
log_warn | log | any | infinity |
Used for logging only for the moment. Should be used when something unexpected happens. | log_repaired | log | enforce |
infinity | Used for logging purposes, to list all that is repaired by the promises. | result_na | result |
enforce | one per component/key | Defines the status of the Component to Not Applicable (if there are no result_success, result_repaired, result_error). Should be used only when the component is not applicable because it does not match the target context. | result_success |
result | enforce | one per component/key | Defines the status of the Component to Success (if there are no result_repaired or result_error). Should be used only when everything is already in the correct state in this component for this key. |
result_repaired | result | enforce | one per component/key |
Defines the status of the Component to Repaired (if there are no result_error). Should be used only when something was not in the correct state, but could be corrected. | result_error | result | enforce |
infinity per component/key | Defines the status of the Component to Error. Should be used when something was not in the correct state, and could not be corrected. | audit_na | result |
audit | one per component/key | Defines the status of an Component to Not Applicable (if there are no result_success, result_repaired, result_error). Should be used only when the component is not applicable because it does not match the target context. | audit_compliant nent was not applicable to the node. |
result | audit | one per component/key | Defines the status of the Component to Compliant (if there are no audit_noncompliant or audit_error). Should be used only when everything is already in the correct state in this component for this key. |
audit_noncompliant | result | audit | one per component/key |
Defines the status of the Component to Non Compliant (if there are no audit_error). Should be used only when something was not in the correct state. | audit_error | result | audit |
Variables used to generate the reports
Some facilities have been created to help putting the right values at the right place
-
&TRACKINGKEY&
: this is an auto generated variable, put in the technique file, that Rudder will replace when writing the promises by
<pre>RuleId@@DirectiveId@@VersionId
-
$(g.execRun)
: this is replaced at runtime by CFEngine 3 to the current execution time -
$(g.uuid)
: this is replaced at runtime by CFEngine 3 to the Node Id