An AppDynamics extension to be used with a stand alone Java machine agent to provide metrics from gearman server.
We provide metric related to following gearman server command
The output format of this function is tab separated columns as follows, followed by a line consisting of a full stop and a newline (”.n”) to indicate the end of output, below are the columns shown:
- Function name : A string denoting the name of the function of the job
- Number of jobs : A positive integer indicating the total number of jobs for this function in the queue. This includes currently running ones as well (next column)
- Number of running : A positive integer showing how many jobs of this function are currently running
- Number of workers : A positive integer denoting the maximum possible count of workers that could be doing this job. Though they may not all be working on it due to other tasks holding them busy.
1. Download and unzip GearmanMonitor.zip from AppSphere.
2. Copy the GearmanMonitor directory to `<MACHINE_AGENT_HOME>/monitors`.
3. The metricPrefix of the extension has to be configured as specified here. Please make sure that the right metricPrefix is chosen based on your machine agent deployment, otherwise this could lead to metrics not being visible in the controller.
Please make sure to not use tab (\t) while editing yaml files. You may want to validate the yaml file using a yaml validator http://yamllint.com/
1. Configure the gearman server instances by editing the config.yaml file in `<MACHINE_AGENT_HOME>/monitors/GearmanMonitor/`. Below is the format
- hostName: "192.168.56.5"
metricPrefix: "Custom Metrics|Gearman|"
2. Configure the path to the config.yaml file by editing the <task-arguments> in the monitor.xml file. Below is the sample
<task-arguments> <!-- config file--> <argument name="config-file" is-required="true" default-value="monitors/GearmanMonitor/config.yml" /> .... </task-arguments>
Always feel free to fork and contribute any changes directly via GitHub.