From b62fa85400163d4aa81e9f9960bfa0e0eadd53ea Mon Sep 17 00:00:00 2001 From: Julien Danjou Date: Tue, 20 Jun 2017 17:04:45 +0200 Subject: [PATCH] Limit the default numbers of metrics polled Enabling everything to be polled and transformed by default is quite heavy and can lead to a massive amount of unused metrics. Limit the default to a few metrics known to be actually useful to common deployers. We keep all pollsters enabled on unit tests and devstack. Change-Id: Ifb5aa684e575b7904726276b7205824f2dcaa7ce --- ceilometer/tests/unit/agent/agentbase.py | 2 +- devstack/plugin.sh | 3 ++- etc/ceilometer/polling.yaml | 24 ++++++++++++++++++++++-- etc/ceilometer/polling_all.yaml | 6 ++++++ 4 files changed, 31 insertions(+), 4 deletions(-) create mode 100644 etc/ceilometer/polling_all.yaml diff --git a/ceilometer/tests/unit/agent/agentbase.py b/ceilometer/tests/unit/agent/agentbase.py index 22916a05ad..3683c8f23a 100644 --- a/ceilometer/tests/unit/agent/agentbase.py +++ b/ceilometer/tests/unit/agent/agentbase.py @@ -250,7 +250,7 @@ class BaseAgentManagerTestCase(base.BaseTestCase): self.CONF.set_override("backend_url", "zake://", "coordination") self.CONF.set_override( 'cfg_file', - self.path_get('etc/ceilometer/polling.yaml'), group='polling' + self.path_get('etc/ceilometer/polling_all.yaml'), group='polling' ) self.mgr = self.create_manager() self.mgr.extensions = self.create_extension_list() diff --git a/devstack/plugin.sh b/devstack/plugin.sh index 81a7a2e402..5b6fb2a4e9 100644 --- a/devstack/plugin.sh +++ b/devstack/plugin.sh @@ -351,9 +351,10 @@ function configure_ceilometer { # with rootwrap installation done elsewhere and also clobber # ceilometer.conf settings that have already been made. # Anyway, explicit is better than implicit. - for conffile in policy.json api_paste.ini polling.yaml; do + for conffile in policy.json api_paste.ini; do cp $CEILOMETER_DIR/etc/ceilometer/$conffile $CEILOMETER_CONF_DIR done + cp $CEILOMETER_DIR/etc/ceilometer/polling_all.yaml $CEILOMETER_CONF_DIR/polling.yaml cp $CEILOMETER_DIR/ceilometer/pipeline/data/*.yaml $CEILOMETER_CONF_DIR diff --git a/etc/ceilometer/polling.yaml b/etc/ceilometer/polling.yaml index 631e368743..0175c4856d 100644 --- a/etc/ceilometer/polling.yaml +++ b/etc/ceilometer/polling.yaml @@ -1,6 +1,26 @@ --- sources: - - name: all_pollsters + - name: some_pollsters interval: 300 meters: - - "*" + - cpu + - memory.usage + - network.incoming.bytes + - network.incoming.packets + - network.outgoing.bytes + - network.outgoing.packets + - disk.read.bytes + - disk.read.requests + - disk.write.bytes + - disk.write.requests + - hardware.cpu.util + - hardware.memory.used + - hardware.memory.total + - hardware.memory.buffer + - hardware.memory.cached + - hardware.memory.swap.avail + - hardware.memory.swap.total + - hardware.system_stats.io.outgoing.blocks + - hardware.system_stats.io.incoming.blocks + - hardware.network.ip.incoming.datagrams + - hardware.network.ip.outgoing.datagrams diff --git a/etc/ceilometer/polling_all.yaml b/etc/ceilometer/polling_all.yaml new file mode 100644 index 0000000000..bb24422e2a --- /dev/null +++ b/etc/ceilometer/polling_all.yaml @@ -0,0 +1,6 @@ +--- +sources: + - name: all_pollsters + interval: 300 + meters: + - "*"