Re: Discuss regarding Ticket 263

Tobias Oetiker <[email protected]>
Newsgroups gmane.comp.db.rrdtool.devel
Message-ID <[email protected]>
Hi Jean-Edouard,

Yesterday Jean-Edouard Babin wrote:

> Hi Tobi,
>
> Here is a patch.
> I added a int instead of a bool as it seems that int is used for
> booleans everywhere in the code.

yep

> I called fct1 time_clean. I tried to catch as much formatter as
> possible but of course as strftime() formatter's are not the same
> depending of OS my code can't handle this very well...

hmmm, I wonder if strftime itself could somehow be queried to help ... the
list of characters you handle there seems awfully long to me ...

> I hope my code is not too much ugly.. I did not practice C for a while.

looks fine by me ...


> Best regards,
>
> On Wed, May 19, 2010 at 12:38 AM, Tobias Oetiker <[email protected]> wrote:
> > Hi Jean-Edouard,
> >
> > the when part of the system simply does not make sense all the time
> > ... eg for AVERAGE ...
> >
> > how about having boolean flag in the structure called 'never' when
> > this is true your fct1 function would be called ...
> >
> > cheers
> > tobi
> >
> >
> > Today Jean-Edouard Babin wrote:
> >
> >> Hello,
> >>
> >> Yesterday I opened a new ticked
> >> http://oss.oetiker.ch/rrdtool-trac/ticket/263 because I got a wrong
> >> output when printing time of an empty VDEF. (time is 1st Jan 1970)
> >> I just find out why, in function vdef_calc of rrd_graph.c, cases
> >> (VDEF_MAXIMUM, VDEF_AVERAGE, VDEF_FIRST, ...) set dst->vf.when to 0 if
> >> value is unknow (which is my case).
> >>
> >> I would be happy to try to do a patch, but I would like to discuss how
> >> to do it before doing something. (I don't want to do something that
> >> will not be commited because it's not a proper solution)
> >>
> >> vdef struct is currently as follow:
> >>
> >> typedef struct vdef_t {
> >>     enum vdef_op_en op;
> >>     double    param;    /* parameter for function, if applicable */
> >>     double    val;      /* resulting value */
> >>     time_t    when;     /* timestamp, if applicable */
> >> } vdef_t;
> >>
> >> My idea would be to add a new 'isnull' boolean variable to the struct,
> >> so that in print_calc I could add some test on isnull be able to run
> >> something else that strftime (let's say fct1()) when isnull is true.
> >> fct1() would replace each %X values by '-'.
> >> So "GPRINT:maxabc2:  Reach 100% @ %c :strftime" would print "Reach
> >> 100% @ -", "GPRINT:maxabc2:  Reach 100% @ %Y/%m/%d :strftime" would
> >> print "Reach 100% @ -/-/-"
> >>
> >> Do you have any comments about this idea ?
> >>
> >> _______________________________________________
> >> rrd-developers mailing list
> >> [email protected]
> >> https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers
> >>
> >>
> >
> > --
> > Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
> > http://it.oetiker.ch [email protected] ++41 62 775 9902 / sb: -9900
> >
>
>

-- 
Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
http://it.oetiker.ch [email protected] ++41 62 775 9902 / sb: -9900

_______________________________________________
rrd-developers mailing list
[email protected]
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.