Partial encapsulation of memcached_st->hosts
[m6w6/libmemcached] / libmemcached / analyze.h
1 /* LibMemcached
2 * Copyright (C) 2006-2009 Brian Aker
3 * All rights reserved.
4 *
5 * Use and distribution licensed under the BSD license. See
6 * the COPYING file in the parent directory for full text.
7 *
8 * Summary: Generate a memcached_analysis_st
9 *
10 */
11
12 #ifndef __MEMCACHED_ANALYZE_H__
13 #define __MEMCACHED_ANALYZE_H__
14
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18
19
20 struct memcached_analysis_st {
21 memcached_st *root;
22 uint32_t average_item_size;
23 uint32_t longest_uptime;
24 uint32_t least_free_server;
25 uint32_t most_consumed_server;
26 uint32_t oldest_server;
27 double pool_hit_ratio;
28 uint64_t most_used_bytes;
29 uint64_t least_remaining_bytes;
30 };
31
32
33 LIBMEMCACHED_API
34 memcached_analysis_st *memcached_analyze(memcached_st *memc,
35 memcached_stat_st *memc_stat,
36 memcached_return_t *error);
37
38 LIBMEMCACHED_API
39 void memcached_analyze_free(memcached_analysis_st *);
40
41 #ifdef __cplusplus
42 }
43 #endif
44
45 #endif /* __MEMCACHED_ANALYZE_H__ */