controls/reports.cf

Table of Contents

This is where report settings for CFEngine Enterprise are found. Control which variables and classes should be collected by central reporting based on tags that should be included or excluded. It also controls which measuremtnts taken by cf-monitord will be collected for central reporting.

server bundles

report_access_rules

Prototype: report_access_rules

Description: Access rules for Enterprise report collection

Implementation:

bundle server report_access_rules
{
  vars:
    enterprise::
      "query_types" slist => {"delta", "rebase", "full"};

  access:
    !policy_server.enterprise::
      "$(query_types)"
      handle => "report_access_grant_$(query_types)_for_hosts",
      comment => "Grant $(query_types) reporting query for the hub on the hosts",
      resource_type => "query",
      report_data_select => default_data_select_host,
      admit => { @(def.policy_servers) };

    policy_server.enterprise::
      "$(query_types)"
      handle => "report_access_grant_$(query_types)_for_hub",
      comment => "Grant $(query_types) reporting query for the hub on the policy server",
      resource_type => "query",
      report_data_select => default_data_select_policy_hub,
      admit => { "127.0.0.1", "::1", @(def.policy_servers) };
}

report_data_select bodies

default_data_select_host

Prototype: default_data_select_host

Description: Data authorized by non policy servers for collection by cf-hub

By convention variables and classes known to be internal, (having no reporting value) should be prefixed with an underscore. By default cf-hub explicitly excludes these variables and classes from collection.

Implementation:

body report_data_select default_data_select_host
{
      metatags_include => { "inventory", "report" };
      metatags_exclude => { "noreport" };
      promise_handle_exclude => { "noreport_.*" };
      monitoring_include => { @(def.default_data_select_host_monitoring_include) };
}

default_data_select_policy_hub

Prototype: default_data_select_policy_hub

Description: Data authorized by policy servers for collection by cf-hub

By convention variables and classes known to be internal, (having no reporting value) should be prefixed with an underscore. By default cf-hub explicitly excludes these variables and classes from collection.

Implementation:

body report_data_select default_data_select_policy_hub
{
      metatags_include => { "inventory", "report" };
      metatags_exclude => { "noreport" };
      promise_handle_exclude => { "noreport_.*" };
      monitoring_include => { @(def.default_data_select_policy_hub_monitoring_include) };
}