Xymon Mailing List Archive search

using the status message to update colors and/or rrd values

6 messages in this thread

list Bryan Levin · Tue, 13 Aug 2013 22:42:03 +0000 ·
hi,

we're using xymon at our company and we have our own data poller which sends updated colors and numerical values to the various objects on the xymon 'map'.

as is typical, our script runs as:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow yellow `date`

heynow : 3.14
'

and this works great when I want to send BOTH a color AND a value to this object.

if I want to send just a new color to this object, the short form also works great:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow yellow'

but is there any way to send JUST the value update and leave the color unchanged?

sometimes we have a trap coming in and that might want to update just the color.  other times, we have a poller (of our own) that does not want to disturb any already-set colors but wants to just throw another sample at the rrd graph that is controlled by this object.

before I dive into the source code, I wonder if this is already supported somehow.

TIA,

.bl
list Jeremy Laidman · Wed, 14 Aug 2013 11:59:04 +1000 ·
I think you can do this with a data message.  But it goes into the "heynow"
RRD file, and won't show the value on the "heynow" page.  However you can
have the graph displayed on the page.
quoted from Bryan Levin


On 14 August 2013 08:42, Bryan Levin <user-99a1d785ed51@xymon.invalid> wrote:
hi,

we're using xymon at our company and we have our own data poller which
sends updated colors and numerical values to the various objects on the
xymon 'map'.

as is typical, our script runs as:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow
yellow `date`

heynow : 3.14
'

and this works great when I want to send BOTH a color AND a value to this
object.

if I want to send just a new color to this object, the short form also
works great:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow
yellow'

but is there any way to send JUST the value update and leave the color
unchanged?

sometimes we have a trap coming in and that might want to update just the
color.  other times, we have a poller (of our own) that does not want to
disturb any already-set colors but wants to just throw another sample at
the rrd graph that is controlled by this object.

before I dive into the source code, I wonder if this is already supported
somehow.

TIA,

.bl

list Paul Root · Wed, 14 Aug 2013 02:17:52 +0000 ·
Why not use xymondboard to get the current color of the test and then echo it back with the new text?
quoted from Jeremy Laidman

From: Xymon [mailto:xymon-bounces at xymon.com] On Behalf Of Jeremy Laidman
Sent: Tuesday, August 13, 2013 8:59 PM
To: Bryan Levin
Cc: xymon at xymon.com
Subject: Re: [Xymon] using the status message to update colors and/or rrd values

I think you can do this with a data message.  But it goes into the "heynow" RRD file, and won't show the value on the "heynow" page.  However you can have the graph displayed on the page.


On 14 August 2013 08:42, Bryan Levin <user-99a1d785ed51@xymon.invalid<mailto:user-99a1d785ed51@xymon.invalid>> wrote:
hi,

we're using xymon at our company and we have our own data poller which sends updated colors and numerical values to the various objects on the xymon 'map'.

as is typical, our script runs as:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow yellow `date`

heynow : 3.14
'

and this works great when I want to send BOTH a color AND a value to this object.

if I want to send just a new color to this object, the short form also works great:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow yellow'

but is there any way to send JUST the value update and leave the color unchanged?

sometimes we have a trap coming in and that might want to update just the color.  other times, we have a poller (of our own) that does not want to disturb any already-set colors but wants to just throw another sample at the rrd graph that is controlled by this object.

before I dive into the source code, I wonder if this is already supported somehow.

TIA,

.bl
list Bryan Levin · Wed, 14 Aug 2013 04:38:53 +0000 ·
yes, in fact, I can get the current color status and then resend it back; but its wasteful and I'd prefer not to have to make 2 trips when only 1 is needed.

what I am hoping for is a 'no-op' color.  a color you could use which does not change colors but only serves to preserve the parameter ordering and does the rrd data-throw, only.

if there is not an already-solved way to do this, I will consider editing the source to create such a no-op color.
quoted from Paul Root


Subject: RE: [Xymon] using the status message to update colors and/or rrd values

Why not use xymondboard to get the current color of the test and then echo it back with the new text?

Subject: Re: [Xymon] using the status message to update colors and/or rrd values

I think you can do this with a data message.  But it goes into the "heynow" RRD file, and won't show the value on the "heynow" page.  However you can have the graph displayed on the page.


On 14 August 2013 08:42, Bryan Levin <user-99a1d785ed51@xymon.invalid<mailto:user-99a1d785ed51@xymon.invalid>> wrote:
hi,

we're using xymon at our company and we have our own data poller which sends updated colors and numerical values to the various objects on the xymon 'map'.

as is typical, our script runs as:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow yellow `date`

heynow : 3.14
'

and this works great when I want to send BOTH a color AND a value to this object.

if I want to send just a new color to this object, the short form also works great:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow yellow'

but is there any way to send JUST the value update and leave the color unchanged?

sometimes we have a trap coming in and that might want to update just the color.  other times, we have a poller (of our own) that does not want to disturb any already-set colors but wants to just throw another sample at the rrd graph that is controlled by this object.

before I dive into the source code, I wonder if this is already supported somehow.

TIA,

.bl
list Jeremy Laidman · Wed, 14 Aug 2013 17:08:17 +1000 ·
What you could do is send a status message always with "green" but when you
want to change to a non-green colour, send a "modify" message to change to
a different colour.  The man page for xymon has details on the "modify"
message.
quoted from Bryan Levin


On 14 August 2013 14:38, Bryan Levin <user-99a1d785ed51@xymon.invalid> wrote:
yes, in fact, I can get the current color status and then resend it back;
but its wasteful and I'd prefer not to have to make 2 trips when only 1 is
needed.

what I am hoping for is a 'no-op' color.  a color you could use which does
not change colors but only serves to preserve the parameter ordering and
does the rrd data-throw, only.

if there is not an already-solved way to do this, I will consider editing
the source to create such a no-op color.


Subject: RE: [Xymon] using the status message to update colors and/or rrd
values

Why not use xymondboard to get the current color of the test and then echo
it back with the new text?

Subject: Re: [Xymon] using the status message to update colors and/or rrd
values

I think you can do this with a data message.  But it goes into the
"heynow" RRD file, and won't show the value on the "heynow" page.  However
you can have the graph displayed on the page.


On 14 August 2013 08:42, Bryan Levin <user-99a1d785ed51@xymon.invalid<mailto:
quoted from Bryan Levin
user-99a1d785ed51@xymon.invalid>> wrote:
hi,

we're using xymon at our company and we have our own data poller which
sends updated colors and numerical values to the various objects on the
xymon 'map'.

as is typical, our script runs as:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow
yellow `date`

heynow : 3.14
'

and this works great when I want to send BOTH a color AND a value to this
object.

if I want to send just a new color to this object, the short form also
works great:

/usr/local/xymon/server/bin/xymon localhost 'status+1w 1.2.3.4_abc.heynow
yellow'

but is there any way to send JUST the value update and leave the color
unchanged?

sometimes we have a trap coming in and that might want to update just the
color.  other times, we have a poller (of our own) that does not want to
disturb any already-set colors but wants to just throw another sample at
the rrd graph that is controlled by this object.

before I dive into the source code, I wonder if this is already supported
somehow.

TIA,

.bl

list Henrik Størner · Wed, 14 Aug 2013 09:38:49 +0200 ·
quoted from Jeremy Laidman
 

Den 14.08.2013 09:08, Jeremy Laidman skrev: 
What you could do is
send a status message always with "green" but when you want to change to
a non-green colour, send a "modify" message to change to a different
colour. The man page for xymon has details on the "modify" message.

On 14 August 2013 14:38, Bryan Levin <user-99a1d785ed51@xymon.invalid [1]> wrote:
yes, in fact, I can get the current color status and then resend it
back; but its wasteful and I'd prefer not to have to make 2 trips when
only 1 is needed.
what I am hoping for is a 'no-op' color. a
color you could use which does not change colors but only serves to
preserve the parameter ordering and does the rrd data-throw, only.
I
think Bryan's is trying to do two different things. 

1) Update the
color of a status, but keep the actual status message intact. For this
you can use the 'modify' command, that Jeremy mentioned. 

2) Update the
text of a status message, but keep the color unchanged. There is
currently no way of doing that in Xymon - you'll have to send a new
message with the same color. You can use the 'query' command to get the
current color, but it means two round-trips to the Xymon server. 

I
don't quite see the point of 2). If it is to update an RRD data file,
won't you run into the problem that RRD updates need to arrive regularly
? If they arrive with an interval longer than the RRD heartbeat, then
the data is considered invalid and you get holes in the graphs. And if
you don't update Xymon status, then it will go purple after the
valid-time expires. You could of course set both of these parameters to
a very long time, but that means your graph-data will be very coarse.


My suggestion would be to either go with the query+status method, or
split the status-update from the RRD-update. For the RRD-updates you
would then send a data-message to "$MACHINE.trends" with the data for
the RRD update. See the bottom of
http://xymon.com/xymon/help/howtograph.html for more details. 

Regards,


Henrik