Merge Trunk
[awesomized/libmemcached] / docs / memcached_stats.rst
1 ==================================================
2 Working with statistical information from a server
3 ==================================================
4
5
6 Get memcached statistics
7
8 .. index:: object: memcached_st
9
10
11 --------
12 SYNOPSIS
13 --------
14
15 #include <libmemcached/memcached.h>
16
17 .. c:function:: memcached_stat_st *memcached_stat (memcached_st *ptr, char *args, memcached_return_t *error);
18
19 .. c:function:: memcached_return_t memcached_stat_servername (memcached_stat_st *stat, char *args, const char *hostname, unsigned int port);
20
21 .. c:function:: char * memcached_stat_get_value (memcached_st *ptr, memcached_stat_st *stat, const char *key, memcached_return_t *error);
22
23 .. c:function:: char ** memcached_stat_get_keys (memcached_st *ptr, memcached_stat_st *stat, memcached_return_t *error);
24
25 .. c:function:: memcached_return_t memcached_stat_execute (memcached_st *memc, const char *args, memcached_stat_fn func, void *context);
26
27 Compile and link with -lmemcached
28
29 -----------
30 DESCRIPTION
31 -----------
32
33
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.
39
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
44 the memcached server.
45
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``\ .
51
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.
58
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.
61
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.
64
65 A command line tool, memstat(1), is provided so that you do not have to write
66 an application to do this.
67
68
69 ------
70 RETURN
71 ------
72
73
74 Varies, see particular functions.
75
76 Any method returning a \ ``memcached_stat_st``\ expects you to free the
77 memory allocated for it.
78
79
80 ----
81 HOME
82 ----
83
84
85 To find out more information please check:
86 `http://libmemcached.org/ <http://libmemcached.org/>`_
87
88
89 ------
90 AUTHOR
91 ------
92
93
94 Brian Aker, <brian@tangent.org>
95
96
97 --------
98 SEE ALSO
99 --------
100
101
102 memcached(1) libmemcached(3) memcached_strerror(3)
103