Syntax: java -jar azulinspector.jar remote-JVM-IP remote-JVM-Port EnvCheck MBean:Type

You might need to specify the following flags, on the JVM you are getting data from:

-Djava.rmi.server.hostname=n.n.n.n
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=n
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false

You can specifiy non-Java-Lang beans to query just specify them on the commandline
for example java-lang:type=Runtime add as many as you want space delimited.

-DPrintMBeans=true will access the file called azulInspector.cfg and attempt to probe each bean listed in the file.
-DGenerateMBeans=true MBean names can be complex to find and are dynamic, so this option probes all discovered MBeans on the target JVM.

If you specifiy -DNativeCallsEnabled=true additional process info will be displayed, but the azulInspector process must be on the same server as the target JVM.

-DNetworkEnabled=true to return just network info
-DProcessEnabled=true to return target JVM process details
-DHostEnabled=true to return host hardware related details
-DEnvironmentEnabled=true to return environment details

-DJCMD=true run Java Commands only, do not use JMX
-DJCMDPid=<pid> JVM Pid
-DRJCMD=true run Java Commands on remote JVM use RMT flags to specify host
-DRJCMDPid=<pid> JVM Pid

-DESXProbe=true gathers ESX data
-DESXHost=ESX-host-ip-address
-DESXUser=user-in-root-group used to connect to toe ESX Host for ESXProbe
-DESXPass=password-for-ESXUser

-DKVMProbe=true gathers KVM data
-DKVMHost=KVM-host-ip-address
-DKVMUser=user-in-root-group used to connect to toe KVM Host for KVMProbe
-DKVMPass=password-for-KVMUser

-DXENProbe=true gathers Xen data
-DXENHost=XEN-host-ip-address
-DXENUser=user-in-root-group used to connect to toe XEN Host for XENProbe
-DXENPass=password-for-XenUser

-DRMTProbe=true gather data from remote host
-DRMTHost=Remote-host-ip-address
-DRMTUser=user-in-root-group
-DRMTPass=password-for-RMTUser

-DDocker=true gather data about docker containers

-DLatency=true Collects Scheduler data to help with low latency apps, Remote only -DRMTUser and -DRMTPass flags are required
-DLatencyTime=ms Data collection interval in milliseconds. Default 2000ms

-DFilter=<list-of-eyecatchers Limits collection of data to these specific eye catchers. Example -DFilter="[11],[4],[2],[1],[12]" returns just these. Default: all

The following two flags enables collection of specific data.
-DSystemQualification=true this enables collection of Operating System, Server and Environmental collection of the target application JVM.
-DMonitor=true this collects data that is helpful when load testing the target application
-DMonitorZing=true Automatically locate Zing JVM instance and Monitor.
-DMonitorJava=true Automatically locate Hotspot JVM instance and Monitor.

The following trend flag can be used to track trend changes in memory and core usage during a load test.
-DTrend=true this prints information about memory rate change and core usage and can run externally
-DTrendLocal=true this must run on the same physical host as the target and prints cpu, memory and gc details
-DWatch=true this reads a list of mbean names and attributes to use in a trend display, see azulInspector.watch file for configuration example

Agent Support
=============

AzulInspector can execute as an agent. The agent has two modes, it always prints a small subset of the SystemQualification output when the JVM starts
If the string MonitorMode is passed as a parameter to the agent, a separate JVM process is started to monitor all JVM's on the system
-javaagent:/azulinspector.jar=MonitorMode
The output from the agent when SystemQualification is done, is the JVM's standard out
The output from the agent when MontiorMode is used, is the AzulInspector-MonitorMode file in the AzulInspector directory
You only need to run one AzulInspector per system

JMX Authentication Support
==========================
If the target JVM uses JMX authentication and the Agent is not being used, then JMX Authentication is required
to collect JMX level metrics. Add the -DJMXUser= and -DJMXPass= parameters to the
AzulInspector JVM command line to the runMe and runMonitor scripts.

