summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: ab81f78)
raw | patch | inline | side by side (parent: ab81f78)
author | Florian Forster <octo@leeloo.lan.home.verplant.org> | |
Tue, 17 Aug 2010 13:50:26 +0000 (15:50 +0200) | ||
committer | Florian Forster <octo@leeloo.lan.home.verplant.org> | |
Tue, 17 Aug 2010 13:50:26 +0000 (15:50 +0200) |
src/collectd.conf.pod | patch | blob | history | |
src/redis.c | patch | blob | history |
diff --git a/src/collectd.conf.pod b/src/collectd.conf.pod
index f16ebb1e46280a0f3e854936fac68d4bcc0729b8..a95f56bce96870129bfad39c029160985c7e4a7d 100644 (file)
--- a/src/collectd.conf.pod
+++ b/src/collectd.conf.pod
</Node>
</Plugin>
+The information shown in the synopsis above is the I<default configuration>
+which is used by the plugin if no configuration is present.
+
=over 4
=item B<Node> I<Nodename>
diff --git a/src/redis.c b/src/redis.c
index 1c01c3c4f77bf6b4cc404b0e071fc31b89b7784b..30bd8da34761f62bfd7448aa48db3581d858c072 100644 (file)
--- a/src/redis.c
+++ b/src/redis.c
plugin_dispatch_values (&vl);
} /* }}} */
-static int redis_read (void) /* {{{ */
+static int redis_init (void) /* {{{ */
{
- REDIS rh;
- REDIS_INFO info;
+ redis_node_t rn = { "default", REDIS_DEF_HOST, REDIS_DEF_PORT,
+ REDIS_DEF_TIMEOUT, /* next = */ NULL };
- int status;
+ if (nodes_head == NULL)
+ redis_node_add (&rn);
+
+ return (0);
+} /* }}} int redis_init */
+
+static int redis_read (void) /* {{{ */
+{
redis_node_t *rn;
for (rn = nodes_head; rn != NULL; rn = rn->next)
{
+ REDIS rh;
+ REDIS_INFO info;
+
+ int status;
+
DEBUG ("redis plugin: querying info from node `%s' (%s:%d).", rn->name, rn->host, rn->port);
- if ( (rh = credis_connect (rn->host, rn->port, rn->timeout)) == NULL )
+ rh = credis_connect (rn->host, rn->port, rn->timeout);
+ if (rh == NULL)
{
ERROR ("redis plugin: unable to connect to node `%s' (%s:%d).", rn->name, rn->host, rn->port);
- status = -1;
- break;
+ continue;
}
- if ( (status = credis_info (rh, &info)) == -1 )
+ memset (&info, 0, sizeof (info));
+ status = credis_info (rh, &info);
+ if (status != 0)
{
WARNING ("redis plugin: unable to get info from node `%s'.", rn->name);
credis_close (rh);
- break;
+ continue;
}
/* typedef struct _cr_info {
void module_register (void) /* {{{ */
{
plugin_register_complex_config ("redis", redis_config);
+ plugin_register_init ("redis", redis_init);
plugin_register_read ("redis", redis_read);
/* TODO: plugin_register_write: one redis list per value id with
* X elements */