pcp
[Top] [All Lists]

RE: [question] How to monitor specific proc only using pmda proc ?

To: "Frank Ch. Eigler" <fche@xxxxxxxxxx>
Subject: RE: [question] How to monitor specific proc only using pmda proc ?
From: Aurelien Gonnay <aurelien.gonnay@xxxxxxxxx>
Date: Tue, 21 Jul 2015 13:33:28 +0000
Accept-language: en-US, fr-FR
Cc: "pcp@xxxxxxxxxxx" <pcp@xxxxxxxxxxx>
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <20150721132021.GC22601@xxxxxxxxxx>
References: <1491096a0f2f41d3945672879207de22@xxxxxxxxxxxxxxxxxxxxxxxxx> <y0mk2txkpnb.fsf@xxxxxxxx> <519be8fc7be54736a30b74e4d67a51c3@xxxxxxxxxxxxxxxxxxxxxxxxx> <20150721132021.GC22601@xxxxxxxxxx>
Thread-index: AdDAbUPUlF1/MqveTjyqwXKiygv8TgBRLLejAICEGLD//+ZngP//3kow
Thread-topic: [question] How to monitor specific proc only using pmda proc ?
Thanks for pointing to the semantic for the pmlogger to select an instance.
As you said for proc, since pids are involved in the instance name those rules 
are not sufficient.
I'm keeping in mind the pmlogger generation trick as well, but since our 
processes of interest might be restarted throughout the day, and some of them 
are batches, I'm actually convinced now that the cgroup approach is more 
flexible.

(You're right regarding the metrics, I didn't check whether there were actual 
values :) )

AG



-----Original Message-----
From: Frank Ch. Eigler [mailto:fche@xxxxxxxxxx] 
Sent: 21 July 2015 15:20
To: Aurelien Gonnay
Cc: pcp@xxxxxxxxxxx
Subject: Re: [question] How to monitor specific proc only using pmda proc ?

Hi -

> > The architected way would be to have your pcp client restrict the
> > instance domain for the proc. metrics via pmAddProfile etc.  if in the
> > PMAPI, or via appropriate command line options if using CLI tools.
>
> Following your advice I tried to specify on the client (here
> pmlogger spawned by pmmgr) side the perimeter of interest.  However
> I did not find any way to explicitly define a subset of process
> based on rules in the pmlogger conf.  If there is, don't hesitate to
> let me know.

The pmlogger configuration file language allows listing of instances
(by name or number); as per the pmlogger man page, note the [ ] bits:

            log mandatory on every 10 minutes {
                disk.all.write
                disk.all.read
                network.interface.in.packets [ "et0" ]
                network.interface.out.packets [ "et0" ]
                nfs.server.reqs [ "lookup" "getattr" "read" "write" ]
            }

But proc.* metrics are identified by pid#, which are not a priori
fixed.  So, a more sophisticated approach is needed, e.g., whereby the
instances of interest are identified by algorithm, synthesizing a
pmlogger configuration file.  (Such a file could sit in a place where
a pmmgr-managed pmlogger instance could find it.)  If the set of
target processes does not vary much, this could work well.


> I also tried the blunt approach (-U) which I did not manage to
> properly use, I suppose, since I always saw all the processes,
> regardless of whether or not I was supplying the -A argument to
> pmdaproc. [...]

(Listings, yes, but not quite full access to their info.  OTOH
linux /proc publishes a lot of per-process info to unprivileged
users.) 


- FChE
 ___________________________________

The integrity of this message cannot be guaranteed on the internet. Therefore 
EXANE cannot be considered responsible for the contents.
If you are not the intended recipient of this message, please delete it and 
notify the sender.

This message is provided for information purposes only and should not be 
construed as a solicitation or offer to buy or sell any securities or related 
financial instruments.
Although it may contain some elements from publications produced by Exane's 
research department, this message is not research.
Please consult our web site for important disclaimers and disclosures 
concerning Exane's research. (http://www.exane.com)
 ___________________________________

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