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 \ ``memcached_stat_st``\ structure. You are responsible for freeing this structure.
37 While it is possible to access the structure directly it is not advisable.
38 <memcached_stat_get_value() has been provided to query the structure.
40 memcached_stat_execute() uses the servers found in \ ``memcached_stat_st``\ and
41 executes a "stat" command on each server. args is an optional argument that
42 can be passed in to modify the behavior of "stats". You will need to supply
43 a callback function that will be supplied each pair of values returned by
46 memcached_stat() fetches an array of \ ``memcached_stat_st``\ structures containing
47 the state of all available memcached servers. The return value must be freed
48 by the calling application. If called with the \ ``MEMCACHED_BEHAVIOR_USE_UDP``\
49 behavior set, a NULL value is returned and the error parameter is set to
50 \ ``MEMCACHED_NOT_SUPPORTED``\ .
52 memcached_stat_servername() can be used standalone without a \ ``memcached_st``\ to
53 obtain the state of a particular server. "args" is used to define a
54 particular state object (a list of these are not provided for by either the
55 :c:func:`memcached_stat_get_keys()` call nor are they defined in the
56 memcached protocol). You must specify the hostname and port of the server
57 you want to obtain information on.
59 memcached_stat_get_value() returns the value of a particular state key. You
60 specify the key you wish to obtain. The key must be null terminated.
62 :c:func:`memcached_stat_get_keys()` returns a list of keys that the server
63 has state objects on. You are responsible for freeing this list.
65 A command line tool, memstat(1), is provided so that you do not have to write
66 an application to do this.
74 Varies, see particular functions.
76 Any method returning a \ ``memcached_stat_st``\ expects you to free the
77 memory allocated for it.
85 To find out more information please check:
86 `http://libmemcached.org/ <http://libmemcached.org/>`_
94 Brian Aker, <brian@tangent.org>
102 memcached(1) libmemcached(3) memcached_strerror(3)