Commit Graph

8 Commits

Author SHA1 Message Date
Dominik Csapak
5a5aed73e2 fix #1683: do not send non-numeric values to graphite
the graphite daemons which accept the data (carbon), only
accepts numeric values, and logs all invalid lines

since that were about 5 values per vm/ct this generated lot of noise
in the carbon log

so we check with a regex if a value is numeric, and
additionally we have a blacklist of keys which seem to be numeric but
are either boolean (e.g. template) or a state (e.g. pid)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-03-05 14:21:50 +01:00
Thomas Lamprecht
09f19204be InfluxDB plugins: send nodename when updating CT/VM status
This allows filtering by node in InfluxDB queries, so the statistics
of all virtual guests on a specific nodes can be queried.

While for InfluxDB this is only a tag which does changes where the
data is stored, Graphite - our other status plugin - has no such
mechanics available. If we would add it to the object hierarchy,
e.g.: "qemu.$vmid.$nodename" a migration of a VM would result in two
different datasets.
So avoid breaking setups and omit it for Graphite for now.

Suggested-by: Daniel1108 <danielgallegosanchez@gmail.com>
CC: Daniel1108 <danielgallegosanchez@gmail.com>

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-02-28 11:28:10 +01:00
Thomas Lamprecht
f014da61c5 Status: report errors on socket creation problems
If the socket couldn't be created (e.g. FQDN not resolvable) we
continued witouth any hint, when actualy writing the data we then
die'd. The user then does not really know why, so report errors
if the socket creation failed.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-05-23 09:17:42 +02:00
Thomas Lamprecht
4caf47e9e2 Status: allow IPs and move properties to base class
We only allowed servers with the dns-name format, as such status
server may often be in internal networks and with no hostname
(testing, small network so no dns, ...) do not limit the
configuration possibilities with no reason.

Also move the base property part to the base Status class, all
current plugins use server and port so no need for double
declaration of format/descriptions.

If a future plugin doesn't need them it can omit them by not
returning the respective properties in the options method
inherited by SectionConfig.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-05-23 09:16:33 +02:00
Alexey Kuzmin
e9f581d4e1 Status/Graphite: fix carbon protocol
Carbon (particularly carbon-c-relay) expects one metric per line.
Current PVE implementation breaks this rule.

Committed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2016-05-04 11:09:40 +02:00
Alexandre Derumier
58541b9463 add influxdb stats plugin V2
/etc/pve/status.cfg
-------------------
influxdb:
      server influxdb3.odiso.net
      port 8089

This require influxdb >= 0.9 with udp enabled

influxdb.conf
-------------

[[udp]]
  enabled = true
  bind-address = "0.0.0.0:8089"
  database = "proxmox"
  batch-size = 1000
  batch-timeout = "1s"

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-09-11 07:59:34 +02:00
Alexandre Derumier
567bb543a7 add graphite plugin V2
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2015-06-23 17:13:14 +02:00
Dietmar Maurer
eb32152f91 implement status plugin framework 2015-06-22 09:45:57 +02:00