Docs » Integrations Guide » Integrations Reference » Memcached

../../_images/integrations_memcached.png Memcached πŸ”—

DESCRIPTION πŸ”—

This integration primarily consists of the Smart Agent monitor collectd/memcached. Below is an overview of that monitor.

Smart Agent Monitor πŸ”—

Monitors an instance of memcached using the collectd memcached plugin. Requires Memcached 1.1 or later.

The monitor collects the following information from Memcached nodes:

  • request information (including hits, misses & evictions)
  • current connections
  • net input/output bytes
  • number of items cached

Documentation for Memcached can be found at https://github.com/memcached/memcached/wiki.

INSTALLATION πŸ”—

This integration is part of the SignalFx Smart Agent as the collectd/memcached monitor. You should first deploy the Smart Agent to the same host as the service you want to monitor, and then continue with the configuration instructions below.

CONFIGURATION πŸ”—

To activate this monitor in the Smart Agent, add the following to your agent config:

monitors:  # All monitor config goes under this key
 - type: collectd/memcached
   ...  # Additional config

For a list of monitor options that are common to all monitors, see Common Configuration.

Config option Required Type Description
host yes string
port yes integer
name no string
reportHost no bool (default: false)

USAGE πŸ”—

Sample of built-in dashboard in SignalFx:

../../_images/dashboard_memcached.png

METRICS πŸ”—

Metric Name Description Type
connections.opened Number of connections opened since server began running cumulative
df.cache.free Unused storage bytes gauge
df.cache.used Current number of bytes used to store items gauge
memcached_command.flush Number of flush requests cumulative
memcached_command.get Number of retrieval requests cumulative
memcached_command.meta Number of meta requests cumulative
memcached_command.set Number of storage requests cumulative
memcached_command.touch Number of touch requests cumulative
memcached_connections.current Current number of open connections gauge
memcached_items.current Current number of items stored by this instance gauge
memcached_octets.rx Total network bytes read by this server cumulative
memcached_octets.tx Total network bytes written by this server cumulative
memcached_ops.decr_hits Number of successful Decr requests cumulative
memcached_ops.decr_misses Number of decr requests against missing keys cumulative
memcached_ops.delete_hits Number of successful delete requests cumulative
memcached_ops.delete_misses Number of delete requests against missing keys cumulative
memcached_ops.evictions Number of valid items removed from cache cumulative
memcached_ops.hits Number of keys that have been requested and found present cumulative
memcached_ops.incr_hits Number of successful incr requests cumulative
memcached_ops.incr_misses Number of incr requests against missing keys cumulative
memcached_ops.misses Number of items that have been requested and not found cumulative
ps_count.threads Number of worker threads requested gauge
ps_cputime.syst Total system time for this instance cumulative
ps_cputime.user Total user time for this instance cumulative
total_events.listen_disabled Number of times connection limit has been exceeded cumulative

connections.opened πŸ”—

cumulative

Number of connections opened since server began running

df.cache.free πŸ”—

gauge

Unused storage bytes

df.cache.used πŸ”—

gauge

Current number of bytes used to store items

memcached_command.flush πŸ”—

cumulative

Number of flush requests

memcached_command.get πŸ”—

cumulative

Number of retrieval requests

memcached_command.meta πŸ”—

cumulative

Number of meta requests

memcached_command.set πŸ”—

cumulative

Number of storage requests

memcached_command.touch πŸ”—

cumulative

Number of touch requests

memcached_connections.current πŸ”—

gauge

Current number of open connections

memcached_items.current πŸ”—

gauge

Current number of items stored by this instance

memcached_octets.rx πŸ”—

cumulative

Total network bytes read by this server

memcached_octets.tx πŸ”—

cumulative

Total network bytes written by this server

memcached_ops.decr_hits πŸ”—

cumulative

Number of successful Decr requests

memcached_ops.decr_misses πŸ”—

cumulative

Number of decr requests against missing keys

memcached_ops.delete_hits πŸ”—

cumulative

Number of successful delete requests

memcached_ops.delete_misses πŸ”—

cumulative

Number of delete requests against missing keys

memcached_ops.evictions πŸ”—

cumulative

Number of valid items removed from cache

memcached_ops.hits πŸ”—

cumulative

Number of keys that have been requested and found present

memcached_ops.incr_hits πŸ”—

cumulative

Number of successful incr requests

memcached_ops.incr_misses πŸ”—

cumulative

Number of incr requests against missing keys

memcached_ops.misses πŸ”—

cumulative

Number of items that have been requested and not found

ps_count.threads πŸ”—

gauge

Number of worker threads requested

ps_cputime.syst πŸ”—

cumulative

Total system time for this instance

ps_cputime.user πŸ”—

cumulative

Total user time for this instance

total_events.listen_disabled πŸ”—

cumulative

Number of times connection limit has been exceeded

Metrics that are categorized as container/host (default) are in bold and italics in the list below.

These are the metrics available for this integration.

  • connections.opened (cumulative)
    Number of connections opened since server began running
  • df.cache.free (gauge)
    Unused storage bytes
  • df.cache.used (gauge)
    Current number of bytes used to store items
  • memcached_command.flush (cumulative)
    Number of flush requests
  • memcached_command.get (cumulative)
    Number of retrieval requests
  • memcached_command.meta (cumulative)
    Number of meta requests
  • memcached_command.set (cumulative)
    Number of storage requests
  • memcached_command.touch (cumulative)
    Number of touch requests
  • memcached_connections.current (gauge)
    Current number of open connections
  • memcached_items.current (gauge)
    Current number of items stored by this instance
  • memcached_octets.rx (cumulative)
    Total network bytes read by this server
  • memcached_octets.tx (cumulative)
    Total network bytes written by this server
  • memcached_ops.decr_hits (cumulative)
    Number of successful Decr requests
  • memcached_ops.decr_misses (cumulative)
    Number of decr requests against missing keys
  • memcached_ops.delete_hits (cumulative)
    Number of successful delete requests
  • memcached_ops.delete_misses (cumulative)
    Number of delete requests against missing keys
  • memcached_ops.evictions (cumulative)
    Number of valid items removed from cache
  • memcached_ops.hits (cumulative)
    Number of keys that have been requested and found present
  • memcached_ops.incr_hits (cumulative)
    Number of successful incr requests
  • memcached_ops.incr_misses (cumulative)
    Number of incr requests against missing keys
  • memcached_ops.misses (cumulative)
    Number of items that have been requested and not found
  • ps_count.threads (gauge)
    Number of worker threads requested
  • ps_cputime.syst (cumulative)
    Total system time for this instance
  • ps_cputime.user (cumulative)
    Total user time for this instance
  • total_events.listen_disabled (cumulative)
    Number of times connection limit has been exceeded

Non-default metrics (version 4.7.0+) πŸ”—

The following information applies to the agent version 4.7.0+ that has enableBuiltInFiltering: true set on the top level of the agent config.

To emit metrics that are not default, you can add those metrics in the generic monitor-level extraMetrics config option. Metrics that are derived from specific configuration options that do not appear in the above list of metrics do not need to be added to extraMetrics.

To see a list of metrics that will be emitted you can run agent-status monitors after configuring this monitor in a running agent instance.

Legacy non-default metrics (version < 4.7.0) πŸ”—

The following information only applies to agent version older than 4.7.0. If you have a newer agent and have set enableBuiltInFiltering: true at the top level of your agent config, see the section above. See upgrade instructions in Old-style whitelist filtering.

If you have a reference to the whitelist.json in your agent’s top-level metricsToExclude config option, and you want to emit metrics that are not in that whitelist, then you need to add an item to the top-level metricsToInclude config option to override that whitelist (see Inclusion filtering. Or you can just copy the whitelist.json, modify it, and reference that in metricsToExclude.