pcp
[Top] [All Lists]

Re: [pcp] ganglia2pcp question

To: pcp@xxxxxxxxxxx
Subject: Re: [pcp] ganglia2pcp question
From: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed, 04 Feb 2015 07:02:29 +1100
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <54D0FC34.6070401@xxxxxxxxxxx>
References: <54D0FC34.6070401@xxxxxxxxxxx>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0
On 04/02/15 03:49, Martins Innus wrote:
Hi,

I am starting to work on a ganglia to PCP archive converter ...

OK that sounds like a useful addition.


     In this case, if you constructed a pcp archive each day
containingin the previous 24 hours ganglia data, if you didn't do some
sort of state saving, each metric would start off at a raw counter value
of zero.  Then at some later time, if you wanted to pmlogextract for a
time period that spanned multiple of these converted logs, you would get
a discontinuity when these "counters" reset to zero.

Yep. In fact you'd get this discontinuity and a <mark> record at each archive boundary, independent of the counters being reset, because each pmlogger invocation starts a new session with pmcd and this may be because pmcd has been restarted or the machine rebooted, both of which would cause PMDA data to be reset.

So I don't think this is any different to the status quo.

     Or does all this just get handled properly by client tools when
they see the "MARK" records that pmlogextract would put in these locations?

When <mark> records are encountered client tools using "interp" mode (and that is most of them that are used to replay an archive) see "No values" for fetches that where the fetch interval spans a <mark> record, and in the regions where there are no <mark> records, values are returned as normal.

The much talked about, but not actually implemented, improved pmlogreduce would do a much better job of handling this situation by aggregation of values prior to the <mark> and after the <mark> and reporting the time averaged value over an interval containing one or more <mark> records. But this would be in a tool that converts one archive into another (smaller, with less data granularity) archive, not as a part of libpcp.

     I haven't gotten far enough along to actually test what happens,
was just wondering what I should expect.

To see what to expect ...

        install the sample PMDA
        start a pmlogger logging sample.pdu
        wait a while
        restart pmcd
        start another pmlogger logging sample.pdu
        wait a while
        kill the pmlogger
        merge the two archives with pmlogextract

<Prev in Thread] Current Thread [Next in Thread>