Gearman Monitoring Extension

An AppDynamics extension to be used with a stand alone Java machine agent to provide metrics from gearman server.

Metrics Provided

We provide metric related to following gearman server command

Command: STATUS

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.






  • Before the extension is installed, the prerequisites mentioned here need to be met. Please do not proceed with the extension installation if the specified prerequisites are not met.
  • Installation

    1. Download and unzip 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

    1. Configure the gearman server instances by editing the config.yaml file in `<MACHINE_AGENT_HOME>/monitors/GearmanMonitor/`. Below is the format


       - hostName: ""

         port: 4730

         userName: ""

         password: ""


    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

       <!-- config file-->
       <argument name="config-file" is-required="true" default-value="monitors/GearmanMonitor/config.yml" />



    Screen Shot 2014-08-25 at 3.16.39 PM.png




    Always feel free to fork and contribute any changes directly via GitHub.



  • Please look at the troubleshooting document and make sure that everything is followed correctly.
  • For any support questions, please contact






    Last Update: