[Hawkular-dev] scope of the agent design

John Sanda jsanda at redhat.com
Mon Mar 16 15:07:10 EDT 2015


For monitoring purposes, do we really need to write an agent? Should we just leverage existing tools/libraries? I previously cited three common architectures for monitoring agents,

1) embedded, in-process
2) separate process but co-located on same host
3) remote monitoring from different host

Let’s consider monitoring the JVM and applications running on it. Coda Hale Metrics is a widely used metrics library that is becoming ubiquitous. It provides reporters for exporting metrics that are collected. The core metrics library provides several reporters, console, JMX, CSV, to name a few. There are plenty of 3rd party reported as well, like the Graphite reporter. We could implement a hawkular reporter which then makes it very easy then for any application, library, etc. that uses Coda Hale Metrics to collect and report to hawkular. 

The in-process collector might not always be possible or desirable. For those situations the co-located agent is a better fit. jmxtrans could be an excellent option. It can query and collect metrics from external JVMs and then write them to other systems like Graphite, Ganglia, Open TSDB, and more. We could implement a hawkular metrics writer.

Maybe we take a similar approach for platform metrics with collectd for example. We are already doing something similar by seeing how we can integrate more directly with cadvisor. Is it worth considering doing the same with some of the tools/libraries that are already in wide spread use?

> On Mar 16, 2015, at 4:13 AM, Gary Brown <gbrown at redhat.com> wrote:
> 
> This embedded 'agent' would also be useful for collecting the activity information for RTGov. I assume information will be routed depending on type at the backend?
> 
> Regards
> Gary
> 
> ----- Original Message -----
>> So what I heard today was we don't want a standalone agent, but we do want
>> something that can be embedded in Wildfly/EAP so it can monitor things
>> running in Wildfly (not just monitor Wildfly itself, but applications
>> running inside wildfly).
>> 
>> That lends itself to supporting customizable modules that can be deployed in
>> Wildfly/EAP as hawkular subsystems.
>> 
>> Can someone give me a quick summary of what Wildfly-Monitor does?
>> https://github.com/hawkular/wildfly-monitor
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>> 
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev




More information about the hawkular-dev mailing list