1 ==================================================
2 Working with statistical information from a server
3 ==================================================
6 Get memcached statistics
8 .. index:: object: memcached_st
15 #include <libmemcached/memcached.h>
17 .. c:function:: memcached_stat_st *memcached_stat (memcached_st *ptr, char *args, memcached_return_t *error);
19 .. c:function:: memcached_return_t memcached_stat_servername (memcached_stat_st *stat, char *args, const char *hostname, unsigned int port);
21 .. c:function:: char * memcached_stat_get_value (memcached_st *ptr, memcached_stat_st *stat, const char *key, memcached_return_t *error);
23 .. c:function:: char ** memcached_stat_get_keys (memcached_st *ptr, memcached_stat_st *stat, memcached_return_t *error);
25 .. c:function:: memcached_return_t memcached_stat_execute (memcached_st *memc, const char *args, memcached_stat_fn func, void *context);
27 Compile and link with -lmemcached
34 libmemcached(3) has the ability to query a memcached server (or collection
35 of servers) for their current state. Queries to find state return a
36 :c:type:`memcached_stat_st` structure. You are responsible for freeing this structure. While it is possible to access the structure directly it is not advisable. :c:func:`memcached_stat_get_value()` has been provided to query the structure.
38 :c:func:`memcached_stat_execute()` uses the servers found in :c:type:`memcached_stat_st` and executes a "stat" command on each server. args is an optional argument that can be passed in to modify the behavior of "stats". You will need to supply a callback function that will be supplied each pair of values returned by
41 :c:func:`memcached_stat()` fetches an array of :c:type:`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 :c:type:`MEMCACHED_BEHAVIOR_USE_UDP` behavior set, a NULL value is returned and the error parameter is set to :c:type:`MEMCACHED_NOT_SUPPORTED`.
43 :c:func:`memcached_stat_servername()` can be used standalone without a :c:type:`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
44 the :c:func:`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
45 obtain information on.
47 :c:func:`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.
49 :c:func:`memcached_stat_get_keys()` returns a list of keys that the server has state objects on. You are responsible for freeing this list.
51 A command line tool, memstat(1), is provided so that you do not have to write
52 an application to do this.
60 Varies, see particular functions.
62 Any method returning a :c:type:`memcached_stat_st` expects you to free the
63 memory allocated for it.
71 To find out more information please check:
72 `http://libmemcached.org/ <http://libmemcached.org/>`_
80 Brian Aker, <brian@tangent.org>
88 :manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)`