X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fredis.c;h=7f57571ed9f1f5f0c60d13531c39d10a4f76a6ff;hb=1aa4295ba6875ceb02a7383237bc2485ffab9c1e;hp=0814126cffab4a466e69b2993bfd519d0bbf7a7f;hpb=38909dcf1dcb596c5f525c6bb25cf89c046013b5;p=collectd.git diff --git a/src/redis.c b/src/redis.c index 0814126c..7f57571e 100644 --- a/src/redis.c +++ b/src/redis.c @@ -21,9 +21,9 @@ **/ #include "collectd.h" + #include "common.h" #include "plugin.h" -#include "configfile.h" #include #include @@ -125,7 +125,6 @@ static redis_query_t *redis_config_query (oconfig_item_t *ci) /* {{{ */ { redis_query_t *rq; int status; - int i; rq = calloc(1, sizeof(*rq)); if (rq == NULL) { @@ -143,7 +142,7 @@ static redis_query_t *redis_config_query (oconfig_item_t *ci) /* {{{ */ (void)sstrncpy(rq->instance, rq->query, sizeof(rq->instance)); replace_special(rq->instance, sizeof(rq->instance)); - for (i = 0; i < ci->children_num; i++) { + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *option = ci->children + i; if (strcasecmp("Type", option->key) == 0) { @@ -165,23 +164,22 @@ static redis_query_t *redis_config_query (oconfig_item_t *ci) /* {{{ */ static int redis_config_node (oconfig_item_t *ci) /* {{{ */ { - redis_node_t rn; redis_query_t *rq; - int i; int status; int timeout; - memset (&rn, 0, sizeof (rn)); + redis_node_t rn = { + .port = REDIS_DEF_PORT, + .timeout.tv_usec = REDIS_DEF_TIMEOUT + }; + sstrncpy (rn.host, REDIS_DEF_HOST, sizeof (rn.host)); - rn.port = REDIS_DEF_PORT; - rn.timeout.tv_usec = REDIS_DEF_TIMEOUT; - rn.queries = NULL; status = cf_util_get_string_buffer (ci, rn.name, sizeof (rn.name)); if (status != 0) return (status); - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *option = ci->children + i; @@ -229,9 +227,7 @@ static int redis_config_node (oconfig_item_t *ci) /* {{{ */ static int redis_config (oconfig_item_t *ci) /* {{{ */ { - int i; - - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *option = ci->children + i; @@ -256,12 +252,9 @@ static void redis_submit (char *plugin_instance, const char *type, const char *type_instance, value_t value) /* {{{ */ { - value_t values[1]; value_list_t vl = VALUE_LIST_INIT; - values[0] = value; - - vl.values = values; + vl.values = &value; vl.values_len = 1; sstrncpy (vl.host, hostname_g, sizeof (vl.host)); sstrncpy (vl.plugin, "redis", sizeof (vl.plugin)); @@ -379,10 +372,7 @@ static int redis_handle_query (redisContext *rh, redis_node_t *rn, redis_query_t static int redis_read (void) /* {{{ */ { - redis_node_t *rn; - redis_query_t *rq; - - for (rn = nodes_head; rn != NULL; rn = rn->next) + for (redis_node_t *rn = nodes_head; rn != NULL; rn = rn->next) { redisContext *rh; redisReply *rr; @@ -430,6 +420,7 @@ static int redis_read (void) /* {{{ */ redis_handle_info (rn->name, rr->str, "volatile_changes", NULL, "changes_since_last_save", DS_TYPE_GAUGE); redis_handle_info (rn->name, rr->str, "total_connections", NULL, "total_connections_received", DS_TYPE_DERIVE); redis_handle_info (rn->name, rr->str, "total_operations", NULL, "total_commands_processed", DS_TYPE_DERIVE); + redis_handle_info (rn->name, rr->str, "operations_per_second", NULL, "instantaneous_ops_per_sec", DS_TYPE_GAUGE); redis_handle_info (rn->name, rr->str, "expired_keys", NULL, "expired_keys", DS_TYPE_DERIVE); redis_handle_info (rn->name, rr->str, "evicted_keys", NULL, "evicted_keys", DS_TYPE_DERIVE); redis_handle_info (rn->name, rr->str, "pubsub", "channels", "pubsub_channels", DS_TYPE_GAUGE); @@ -440,7 +431,7 @@ static int redis_read (void) /* {{{ */ redis_handle_info (rn->name, rr->str, "total_bytes", "input", "total_net_input_bytes", DS_TYPE_DERIVE); redis_handle_info (rn->name, rr->str, "total_bytes", "output", "total_net_output_bytes", DS_TYPE_DERIVE); - for (rq = rn->queries; rq != NULL; rq = rq->next) + for (redis_query_t *rq = rn->queries; rq != NULL; rq = rq->next) redis_handle_query(rh, rn, rq); redis_fail: