ERROR("redis plugin: calloca failed adding redis_query.");
return NULL;
}
- status = cf_util_get_string_buffer(ci, rq->type, sizeof(rq->type));
+ status = cf_util_get_string_buffer(ci, rq->query, sizeof(rq->query));
if (status != 0)
goto err;
+ /*
+ * Default to a gauge type.
+ */
+ (void)strncpy(rq->type, "gauge", sizeof(rq->type));
+ (void)strncpy(rq->instance, rq->query, sizeof(rq->instance));
+ replace_special(rq->instance, sizeof(rq->instance));
+
for (i = 0; i < ci->children_num; i++) {
oconfig_item_t *option = ci->children + i;
- if (strcasecmp("Exec", option->key) == 0) {
- status = cf_util_get_string_buffer(option, rq->query, sizeof(rq->query));
+ if (strcasecmp("Type", option->key) == 0) {
+ status = cf_util_get_string_buffer(option, rq->type, sizeof(rq->type));
} else if (strcasecmp("Instance", option->key) == 0) {
status = cf_util_get_string_buffer(option, rq->instance, sizeof(rq->instance));
+ } else {
+ WARNING("redis plugin: unknown configuration option: %s", option->key);
+ status = -1;
}
if (status != 0)
goto err;
}
- if (strlen(rq->query) == 0) {
- WARNING("redis plugin: invalid query definition for: %s", rq->type);
- goto err;
- }
return rq;
err:
free(rq);