+static void print_analysis_report(memcached_st *memc,
+ memcached_analysis_st *report,
+ memcached_server_st *server_list)
+{
+ uint32_t server_count= memcached_server_count(memc);
+
+ printf("Memcached Cluster Analysis Report\n\n");
+
+ printf("\tNumber of Servers Analyzed : %d\n", server_count);
+ printf("\tAverage Item Size (incl/overhead) : %u bytes\n",
+ report->average_item_size);
+
+ if (server_count == 1)
+ {
+ printf("\nFor a detailed report, you must supply multiple servers.\n");
+ return;
+ }
+
+ printf("\n");
+ printf("\tNode with most memory consumption : %s:%u (%llu bytes)\n",
+ memcached_server_name(memc, server_list[report->most_consumed_server]),
+ memcached_server_port(memc, server_list[report->most_consumed_server]),
+ (unsigned long long)report->most_used_bytes);
+ printf("\tNode with least free space : %s:%u (%llu bytes remaining)\n",
+ memcached_server_name(memc, server_list[report->least_free_server]),
+ memcached_server_port(memc, server_list[report->least_free_server]),
+ (unsigned long long)report->least_remaining_bytes);
+ printf("\tNode with longest uptime : %s:%u (%us)\n",
+ memcached_server_name(memc, server_list[report->oldest_server]),
+ memcached_server_port(memc, server_list[report->oldest_server]),
+ report->longest_uptime);
+ printf("\tPool-wide Hit Ratio : %1.f%%\n", report->pool_hit_ratio);
+ printf("\n");
+}
+