Xymon Mailing List Archive search

Need help with multiple RRD data points in one check

list Christoph Zechner
Thu, 15 Oct 2026 14:26:12 +0200
Message-Id: <user-4c2373c2e956@xymon.invalid>

Hi,

On 12/10/2026 17:49, Stef Coene via Xymon wrote:
Hi,

I recommend taking a look at the data/trends message.

In short, you make a message with 1 rrd per GPU:
[GPU-<number>.rrd]
DS:counter1:GAUGE:600:0:U $value1
DS:counter2:GAUGE:600:0:U $value2

You send this is a data message:
xymon $XYMSRV "data hostname.trends\n<message>"

This will create the .rrd dilws.
thank you very much, this part got solved with the help of another person on here as well.
And then define a graph like:

[counter]
    FNPATTERN ^GPU-(.*).rrd

    DEF:counter1@RRDIDX@=@RRDFN@:counter1:AVERAGE
    TITLE Counter 1
    YAXIS Counter
    LINE1:counter1@RRDIDX@#@COLOR@:@RRDPARAM@:
    GPRINT:counter1@RRDIDX@:LAST: cur\:%8.4lf
    GPRINT:counter1@RRDIDX@:MAX: max\:%8.4lf
    GPRINT:counter1@RRDIDX@:MIN: min\:%8.4lf
    GPRINT:counter1@RRDIDX@:AVERAGE: avg\:%8.4lf \n
This is the part not working for me at the moment, I have all the RRD files and my graph definition, but xymon won't produce any graphs...

my graphs file:
[nvidia-gpu]
         FNPATTERN ^nvidia-gpu(.*).rrd
         TITLE GPU stats
         YAXIS Watt
         DEF:powerdraw@RRDIDX@=@RRDFN@:powerdraw:AVERAGE
         LINE1:powerdraw@RRDIDX@#@COLOR@:@RRDPARAM@:
         COMMENT:\n
         GPRINT:powerdraw@RRDIDX@:LAST: cur\:%8.4lf
         GPRINT:powerdraw@RRDIDX@:MAX: max\:%8.4lf
         GPRINT:powerdraw@RRDIDX@:MIN: min\:%8.4lf
         GPRINT:powerdraw@RRDIDX@:AVERAGE: avg\:%8.4lf \n

The DS in the RRD files created for "Power draw" are called "powerdraw", so this should work.

Is it a regex problem?

My files are called "nvidia-gpu_0_powerdraw.rrd", "nvidia-gpu_1_powerdraw.rrd" and so on, so the regex has to match...

Cheers
Christoph

Stef

On 2026-10-12 14:23, Christoph Zechner via Xymon wrote:
Hi,

I've stumbled upon a problem I cannot seem to solve myself and hope someone here can help me out...

A custom check I wrote is collecting data from Nvidia GPUs via the nvidia-smi command, the check works great and displays all the relevant data in its message, but I want to create graphs from certain data points too.

Here's my problem: in a server with 8 GPUs, I am collecting 5 different things from each GPU (like Power Draw, Utilisation and so on), these values get saved in a RRD file as well, but only the values from the first GPU.

I want to save a RRD file for each GPU and its values, so multiple data points in a RRD, but 8 different files (one per GPU) and I do not get how I can do this in a xymon check (bash script).

Can someone point me in the right direction here? What am I missing?

Thanks in advance!

Best regards
Christoph