---
name: "Memcached::libmemcached::memcached_stats"
section: "3pm"
platform: "linux"
package: "libmemcached-libmemcached-perl"
version: "1.001801+dfsg-5+b2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Memcached::libmemcached::memcached_stats"
---

# Memcached::libmemcached::memcached\_stats(3pm)

Get memcached statistics

## NAME

memcached\_stat, memcached\_stat\_servername, memcached\_stat\_get\_value, memcached\_stat\_get\_keys - Get memcached statistics

## LIBRARY

C Client Library for memcached (libmemcached, -lmemcached)

## SYNOPSIS

```
  #include <memcached.h>
  memcached_stat_st *memcached_stat (memcached_st *ptr,
                                     char *args,
                                     memcached_return_t *error);
  memcached_return_t memcached_stat_servername (memcached_stat_st *stat,
                                                char *args,
                                                const char *hostname,
                                                unsigned int port);
  char *
    memcached_stat_get_value (memcached_st *ptr,
                              memcached_stat_st *stat,
                              const char *key,
                              memcached_return_t *error);
  char **
    memcached_stat_get_keys (memcached_st *ptr,
                             memcached_stat_st *stat,
                             memcached_return_t *error);
```

## DESCRIPTION

[**libmemcached**(3)](/libmemcached/3.md) has the ability to query a memcached server (or collection of servers) for their current state. Queries to find state return a `"memcached_stat_st"` structure. You are responsible for freeing this structure. While it is possible to access the structure directly it is not advisable. \<**memcached\_stat\_get\_value()** has been provided to query the structure.

**memcached\_stat()** fetches an array of `"memcached_stat_st"` structures containing the state of all available memcached servers. The return value must be freed by the calling application. If called with the `"MEMCACHED_BEHAVIOR_USE_UDP"` behavior set, a NULL value is returned and the error parameter is set to  `"MEMCACHED_NOT_SUPPORTED"`.

**memcached\_stat\_servername()** can be used standalone without a `"memcached_st"` to obtain the state of a particular server.  "args" is used to define a particular state object (a list of these are not provided for by either the **memcached\_stat\_get\_keys()** call nor are they defined in the memcached protocol). You must specify the hostname and port of the server you want to obtain information on.

**memcached\_stat\_get\_value()** returns the value of a particular state key. You specify the key you wish to obtain.  The key must be null terminated.

**memcached\_stat\_get\_keys()** returns a list of keys that the server has state objects on. You are responsible for freeing this list.

A command line tool, [**memstat**(1)](/memstat/1.md), is provided so that you do not have to write an application to do this.

## RETURN

Varies, see particular functions.

Any method returning a `"memcached_stat_st"` expects you to free the memory allocated for it.

## HOME

To find out more information please check: \<https://launchpad.net/libmemcached\>

## AUTHOR

Brian Aker, \<brian@tangent.org\>

## SEE ALSO

[**memcached**(1)](/memcached/1.md) [**libmemcached**(3)](/libmemcached/3.md) [**memcached\_strerror**(3)](/memcached_strerror/3.md)
