This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: JSON PMDA
- From: David Smith <dsmith at redhat dot com>
- To: "Frank Ch. Eigler" <fche at redhat dot com>
- Cc: pcp <pcp at oss dot sgi dot com>, Systemtap List <systemtap at sourceware dot org>
- Date: Mon, 09 Mar 2015 13:52:43 -0500
- Subject: Re: JSON PMDA
- Authentication-results: sourceware.org; auth=none
- References: <54F9F92D dot 4010202 at redhat dot com> <y0mmw3n41xs dot fsf at fche dot csb>
On 03/08/2015 04:25 PM, Frank Ch. Eigler wrote:
> dsmith wrote:
>
>> Here's a pointer to the latest version of the JSON PMDA I'm working on.
>> [...]
>
> Looks great!
Thanks.
>> I've also attached 2 sample systemtap scripts:
>>
>> - net_xmit_json.stp: A script written by Will Cohen to monitor network
>> transmit counts and latency
>>
>> - netfilter_summary_json.stp: I took an existing systemtap sample script
>> (netfilter_summary.stp) and converted it to output JSON instead.
>
> May I recommend also taking a peek at some of the other stap examples,
> for consideration of json variantification? For example, a script
> collecting backtrace samples/profiles, I/O traces (kind of like the
> last-100-frees glibc sample, but for some kernel tracepoints?), could
> be neat, as it is hard to achieve in pcp without stap.
I'll look into it.
>> [...]
>> - Debug an issue with the PMDA where the command to get the ceph data is
>> run too often.
>
> (Do you need to run __load_[all_]json_data before an actual fetch for
> metrics with the affected prefixes? Loading/refreshing metadata is
> bound to be less costly than loading actual data.)
The __refresh_metrics callback is supposed to help fetch performance by
getting called once, then a bunch of fetch operations will follow. The
theory is that you do all your data collection in the __refresh_metrics
callback, then the fetches just query the data you've already collected.
I think what is happening is that __refresh_metrics is getting called
before *every* fetch, although I can't swear to that yet.
In addition the code could certainly get smarter, and not refresh every
JSON data source when only one is being queried.
>> - Try this with other JSON data sources. Suggestions welcome.
>
> How about ovirt? It may need another python metadata-generator script
> (to pass along hostname / authentication / vm-enumeration into the
> data-exec command)
> http://www.ovirt.org/REST-Api
> https://bugzilla.redhat.com/show_bug.cgi?id=1182275
>
> How about jboss/wildfly? Same need re. metadata-generation.
> https://docs.jboss.org/author/display/WFLY8/The+HTTP+management+API?_sscc=t
I'll look into these.
Thanks for looking this over.
--
David Smith
dsmith@redhat.com
Red Hat
http://www.redhat.com
256.217.0141 (direct)
256.837.0057 (fax)