[pve-devel] [PATCH cluster/qemu-server/container 1/1] add purge_rrd_data sub

Bennet Gallein me at bennetgallein.de
Mon Nov 4 19:32:24 CET 2024


Signed-off-by: Bennet Gallein <me at bennetgallein.de>
---
 src/PVE/RRD.pm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/src/PVE/RRD.pm b/src/PVE/RRD.pm
index 5d4abc9..636226c 100644
--- a/src/PVE/RRD.pm
+++ b/src/PVE/RRD.pm
@@ -6,6 +6,26 @@ use RRDs;
 
 use PVE::Tools;
 
+sub purge_rrd_data {
+    my ($rrdname)  = @_;
+
+    my $rrddir = "/var/lib/rrdcached/db";
+
+    my $rrd = "$rrddir/$rrdname";
+
+    my @args = ();
+    my $socket = "/var/run/rrdcached.sock";
+    push @args, "--daemon" => "unix:$socket" if -S $socket;
+
+    # flush cached RRDs
+    RRDs::flushcached($rrd, @args);
+
+    my $err = RRDs::error;
+    die "RRD error flushing pre-purge: $err\n" if $err;
+
+    unlink($rrd) or die("ERROR deleting RRD file");
+}
+
 sub create_rrd_data {
     my ($rrdname, $timeframe, $cf) = @_;
 
-- 
2.39.5




More information about the pve-devel mailing list