Monitoring Gearman

This article will help you get the Gearman plugin for sd-agent configured and returning metrics

Installing the gearman plugin package

Install the gearman plugin on Debian/Ubuntu:

sudo apt-get install sd-agent-gearmand

Install the gearman plugin on RHEL/CentOS:

sudo yum install sd-agent-gearmand

Read more about agent plugins.

Configuring the agent to monitor Gearman

1. Configure /etc/sd-agent/conf.d/gearmand.yaml

init_config:

instances:
  - server: localhost
    port: 4730
    # Use the `tasks` parameter to specify the tasks you'd like to
    # collect metrics on (up to 200 tasks).
    #
    # If you have fewer than 200 tasks, you don't have to set this parameter,
    # the metrics will be collected on all the tasks by default.
    # tasks:
    #   - task1
    #   - task2
    # tags:
    #   - optional_tag_1
    #   - optional_tag_2


If you have over 200 tasks you should use the tasks parameter to specify the tasks you'd like to collect metrics on. If you have fewer than 200 tasks you do not need to set the tasks parameter

2. Restart the agent

sudo /etc/init.d/sd-agent restart

or

sudo systemctl restart sd-agent

Verifying the configuration
Execute info to verify the configuration with the following:

sudo /etc/init.d/sd-agent info 

or

/usr/share/python/sd-agent/agent.py info

If the agent has been configured correctly you'll see an output such as:

gearman
-----
  - instance #0 [OK]
  - Collected * metrics

You can also view the metrics returned with the following command:

sudo -u sd-agent /usr/share/python/sd-agent/agent.py check gearmand

Configuring graphs

Click the name of your server from the Devices list in your Server Density account then go to the Metrics tab. Click the + Graph button on the right then choose the gearman metrics to display the graphs. The metrics will also be available to select when building dashboard graphs.

Screen_Shot_2018-01-18_at_11.46.12.png

Monitored metrics

MetricValues
gearman.queued

The total number of jobs in the queue.
task / None
Type: float
gearman.queued_by_task

The number of jobs in the queue by task.
task / None
Type: float
gearman.running

The total number of running Gearman jobs.
task / None
Type: float
gearman.running_by_task

The number of running Gearman jobs by task.
task / None
Type: float
gearman.unique_tasks

The number of all functions registered with Gearman.
task / None
Type: float
gearman.workers

The total number of capable Gearman workers.
process / None
Type: float
gearman.workers_by_task

The number of capable Gearman workers by task.
process / None
Type: float
Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

Comments

Monday  —  Friday.

10am  —  6pm UK.

Dedicated Support.