]> git.proxmox.com Git - pve-manager.git/commit
pvestatd: store subsystem status data in a shared cache
authorLukas Wagner <l.wagner@proxmox.com>
Mon, 12 Aug 2024 08:36:05 +0000 (10:36 +0200)
committerWolfgang Bumiller <w.bumiller@proxmox.com>
Wed, 14 Aug 2024 12:18:34 +0000 (14:18 +0200)
commit5732ad658435abecbc25586eff4050cb4fe3b496
tree193510d2fae1a776e21c4e3fcb77af5039721c8a
parente6efc75389c04dd02dbbf9b593058ec10e891f8b
pvestatd: store subsystem status data in a shared cache

This commit adds a new module PVE::PullMetric. This module allows
us to store the status data of various subsystems, including status
data for the most recent pvestatd update loops. Right now, we
store 6 old generations - including the most recent values, that gives
70 seconds of stat history (based on a 10 second pvestatd update loop
interval).

This cache allows us to add support for pull-style metric collection
systems, be it Prometheus/OpenMetrics or some custom, JSON based
metric format.

This patch raises the required lib{proxmox,pve}-perl-rs version
requirements, since we need the new bindings for proxmox-shared-cache.

Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
[WB: actually bump *runtime* deps in d/control]
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
PVE/Makefile
PVE/PullMetric.pm [new file with mode: 0644]
PVE/Service/pvestatd.pm
debian/control