pcp
[Top] [All Lists]

Re: [pcp] patch/RFC - install global derived metrics dir and configs

To: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Subject: Re: [pcp] patch/RFC - install global derived metrics dir and configs
From: Nathan Scott <nathans@xxxxxxxxxx>
Date: Tue, 8 Mar 2016 18:45:17 -0500 (EST)
Cc: pcp <pcp@xxxxxxxxxxx>
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <56DF6209.9040905@xxxxxxxxxx>
References: <56DD0704.3000800@xxxxxxxxxx> <1562841800.28672134.1457396071684.JavaMail.zimbra@xxxxxxxxxx> <56DF6209.9040905@xxxxxxxxxx>
Reply-to: Nathan Scott <nathans@xxxxxxxxxx>
Thread-index: VlO+0kF/97Srh1pU2nDLF+SKbf1iKA==
Thread-topic: patch/RFC - install global derived metrics dir and configs

----- Original Message -----
> On 03/08/2016 11:14 AM, Nathan Scott wrote:
> > Hi Mark,
> >
> > ----- Original Message -----
> >> RFC - ship a global derived metrics config directory in the pcp package.
> >> $PCP_VAR_DIR/config/derived along with a config for IOSTAT metrics. Other
> >> configs can be added.
> >
> > My initial concern is: this is putting server-platform-specific stuff on
> > a client-side install - which is kinda going back to the bad old days of
> > agent Installs on client machines.
> 
> derived metrics are client-side. I guess we could add them to pmcd,
> server-side,

Yep, understood; I was really just thinking out loud, not suggesting we go
do any of these things - lets work with what we've got for now & reassess
once we have more real-world experience with using it.

> > IOW, your example there (the iostat
> > metrics) is very Linux-specific.
> 
> the iostat example is fairly Linux specific. We could add some 'probe' syntax
> to pmLoadDerivedConfig(3), like pmlogconf-setup, but that's not going to

*nod* - feels like overkill at this stage.

> > But, I don't really see any sensible way around it - we need 'em for the
> > archive case, and there's no server-side derived metric concept either,
> > by design IIRC (too complex to do in pmcd I'm sure).
> 
> yep
> 
> > Sounds like a libpcp API will be needed here?  Oh, or maybe not - we could
> > do this in the pmGetOptions code (maybe __pmEndOptions) and that will be
> > visible in all tools without changes then.
> 
> somewhere around there. Or actually, anywhere before contexts are created.
> The easiest is just to putenv(PCP_DERIVED_CONFIG=...) if it's not already
> defined, and __dminit() will pick it up in due course. If the probe fails

Yep, good call - so probably no API additions needed, which is good.  Watch
out for QA fallout here, special QA handling for the event.* metrics ended up
splattered across the QA universe when we added those two metrics in.

> >
> > Hmm, I wonder if thats the best place or should it be the pcp-conf package?
> > (for a pcp-libs -only install, which someone might do to support just their
> > own PMAPI utility)
> 
> yeah guess so. It's needed by all clients, and they require pcp-libs, which
> in turn requires pcp-conf (at least in RPM spec, not sure about deb).

deb has a pcp-conf underlying everything too - see debian/pcp-conf.* files.

cheers.

--
Nathan

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