pcp
[Top] [All Lists]

Re: [pcp] Verification and validation of performance metric values

To: William Cohen <wcohen@xxxxxxxxxx>
Subject: Re: [pcp] Verification and validation of performance metric values
From: Nathan Scott <nathans@xxxxxxxxxx>
Date: Thu, 9 Jun 2016 20:24:34 -0400 (EDT)
Cc: PCP <pcp@xxxxxxxxxxx>
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <cdb0d65c-8e7b-bd92-aa0e-3e4def8b8dec@xxxxxxxxxx>
References: <cdb0d65c-8e7b-bd92-aa0e-3e4def8b8dec@xxxxxxxxxx>
Reply-to: Nathan Scott <nathans@xxxxxxxxxx>
Thread-index: zd5khjymET3z27wQ26QR8pfkwPbmTQ==
Thread-topic: Verification and validation of performance metric values
Hi Will,

----- Original Message -----
>   [...]  How, are the PCP metrics checked
> to see if they are accurate/reasonable?

It depends - various strategies exist depending on the PMDA and the nature of
the values being extracted, and the mechanisms involves.  There's some examples
over in qa/{778,835,876,987,1113} ... just a small subset to give a taste.

> For estimating network utilization using PCP the network.interface.baudrate
> and network.interface.speed metrics should provide some indication of the
> interface speed.  However, looking at the numbers produced by pmval below
> they don't seem to be reasonable for 1Gbps ethernet connection of em1.

There's a couple of ways interface speed is extracted - ioctl and sysfs; depends
on kernel version.  The code is over in src/pmdas/linux/proc_net_dev.c - see 
the 
REFRESH_NET_SPEED references there.  The code is dependent on the kernel/drivers
giving good values - and there's also issues like pcp commit 9b616ace2284b622 to
factor in from out of left field.

That said there could certainly be a PCP bug or two lurking here also.  Best way
to step through exactly what's happening here is:

$ gdb --args /usr/bin/pminfo -L -K clear -K 
add,60,`pwd`/src/pmdas/linux/pmda_linux network.interface.speed

... then set breakpoints in places like refresh_net_dev_ioctl, then "r" in gdb.

cheers.

--
Nathan

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