# enable data collection that is compatible with the STF data model
# enablement of the collectors and transport are done with separate enviroment files
# recommended:
# - environments/metrics/ceilometer-qdr-write.yaml
# - environments/metrics/collectd-qdr-write.yaml
# - environments/metrics/qdr-edge-only.yaml

---
tripleo_heat_templates:
    []

custom_templates:
    # matches the documentation for enable-stf.yaml in stable-1.3 documentation
    parameter_defaults:
        # only send to STF, not other publishers
        EventPipelinePublishers: []
        PipelinePublishers: []

        # manage the polling and pipeline configuration files for Ceilometer agents
        ManagePolling: true
        ManagePipeline: true

        # enable Ceilometer metrics and events
        CeilometerQdrPublishMetrics: true
        CeilometerQdrPublishEvents: true

        # set collectd overrides for higher telemetry resolution and extra plugins
        # to load
        CollectdConnectionType: amqp1
        CollectdAmqpInterval: 5
        CollectdDefaultPollingInterval: 5
        CollectdDefaultPlugins:
        - cpu
        - df
        - disk
        - hugepages
        - interface
        - load
        - memory
        - processes
        - unixsock
        - uptime
        CollectdExtraPlugins:
        - vmem

        # set standard prefixes for where metrics and events are published to QDR
        MetricsQdrAddresses:
        - prefix: 'collectd'
          distribution: multicast
        - prefix: 'anycast/ceilometer'
          distribution: multicast

        ExtraConfig:
            ceilometer::agent::polling::polling_interval: 30
            ceilometer::agent::polling::polling_meters:
            - cpu
            - disk.*
            - ip.*
            - image.*
            - memory
            - memory.*
            - network.*
            - perf.*
            - port
            - port.*
            - switch
            - switch.*
            - storage.*
            - volume.*

            # to avoid filling the memory buffers if disconnected from the message bus
            collectd::plugin::amqp1::send_queue_limit: 50

            # receive extra information about virtual memory
            collectd::plugin::vmem::verbose: true

            # provide the human-friendly name of the virtual instance
            collectd::plugin::virt::plugin_instance_format: metadata
