BTW: there is a third thing that is possible, whether anyone wants to do this or not I
dunno, but its there:
You can embed an agent directly in your own Java app via:
java.io.File configFile = new File("my-config.yaml");
new org.hawkular.agent.javaagent.JavaAgentEngine(configFile).startHawkularAgent();
----- Original Message -----
FYI: I am going to merge the PR that introduces the javaagent and
then I will
release a new agent from that new master branch.
Just to be clear, here is what will then be supported:
1) The Hawkular WildFly Agent (HWFA) remains as-is. Nothing changes. The
agent you've come to love and enjoy doesn't change.
2) There is a new Java Agent (HJA) that you can run in any JVM (including but
not limited to EAP-based projects). You do so by passing in a "-javaagent"
command line option to your JVM (e.g. java
-javaagent=hawkular-javaagent.jar=config=config.yaml -jar my-app.jar
...yadda...). There are two additional properties you must set in
standalone.conf if you want to run it inside an EAP JVM. The README will
have the details.
This new HJA is configured with a yaml file that largely mimics all the
standalone.xml data that HWFA has. There is no ${x} support in the YAML file
right now.
This new HJA can talk to any EAP or WildFly server over the DMR management
API. It can do deployments to your EAP/WildFly servers and monitoring of
EAP/WildFly subsystems just like HWFA can.
This new HJA can talk to any JMX server just like HWFA can (it will talk to
the local MBeanServer or, if remotely monitoring a JMX server, it will talk
to it over Jolokia/REST API).
This new HJA can NOT run directly inside of a Host Controller due to
https://issues.jboss.org/browse/WFCORE-2526 - however, you can run HJA
externally in its own JVM (e.g. java -jar hawkular-javaagent.jar
config=config.yaml) and have its config.yaml point to a remote Host
Controller and you'll get the same functionality.
--John Mazz