]> git.ipfire.org Git - thirdparty/collectd.git/commitdiff
write_graphite plugin: Rename "ForceReconnectTimeout" to "ReconnectInterval".
authorFlorian Forster <octo@collectd.org>
Fri, 4 Dec 2015 10:55:09 +0000 (11:55 +0100)
committerFlorian Forster <octo@collectd.org>
Fri, 4 Dec 2015 10:55:09 +0000 (11:55 +0100)
src/collectd.conf.in
src/collectd.conf.pod
src/write_graphite.c

index 6a3b580705ff38257bd095dcad02d2c6c8d1ac56..1c1475908b672c00fc87eb8c2782b1d45cb999b8 100644 (file)
 #    Host "localhost"
 #    Port "2003"
 #    Protocol "tcp"
+#    ReconnectInterval 0
 #    LogSendErrors true
 #    Prefix "collectd"
 #    Postfix "collectd"
index 4bd27efacd7507ea0fcb96cc4e55ec840e0866ee..84c77720b0ca32a3d47813d736d7a8b2b2d9e3b2 100644 (file)
@@ -7271,9 +7271,13 @@ Service name or port number to connect to. Defaults to C<2003>.
 
 Protocol to use when connecting to I<Graphite>. Defaults to C<tcp>.
 
-=item B<ForceReconnectTimeout> I<Timeout Seconds>
+=item B<ReconnectInterval> I<Seconds>
 
-This parameter enables a forced close and re-open of the established connection with the Graphite backend after the specified timeout in seconds. This behavior is desirable in environments where the connection to the Graphite backend is done through load balancers. Default to 0 seconds (0 seconds = disabled).
+When set to non-zero, forces the connection to the Graphite backend to be
+closed and re-opend periodically. This behavior is desirable in environments
+where the connection to the Graphite backend is done through load balancers,
+for example. When set to zero, the default, the connetion is kept open for as
+long as possible.
 
 =item B<LogSendErrors> B<false>|B<true>
 
index bb4b284f64964f676ad9d3499201ed74d67fa128..0702a6ea9e2888b68104dd6315a399d2275f50e8 100644 (file)
@@ -96,33 +96,33 @@ struct wg_callback
     cdtime_t last_connect_time;
 
     /* Force reconnect useful for load balanced environments */
-    cdtime_t last_force_reconnect_time;
-    cdtime_t force_reconnect_timeout;
-    _Bool conn_forced_closed;
+    cdtime_t last_reconnect_time;
+    cdtime_t reconnect_interval;
+    _Bool reconnect_interval_reached;
 };
 
 /* wg_force_reconnect_check closes cb->sock_fd when it was open for longer
- * than cb->force_reconnect_timeout. Must hold cb->send_lock when calling. */
+ * than cb->reconnect_interval. Must hold cb->send_lock when calling. */
 static void wg_force_reconnect_check (struct wg_callback *cb)
 {
     cdtime_t now;
 
-    if (cb->force_reconnect_timeout == 0)
+    if (cb->reconnect_interval == 0)
         return;
 
     /* check if address changes if addr_timeout */
     now = cdtime ();
-    if ((now - cb->last_force_reconnect_time) < cb->force_reconnect_timeout)
+    if ((now - cb->last_reconnect_time) < cb->reconnect_interval)
         return;
 
     /* here we should close connection on next */
     close (cb->sock_fd);
     cb->sock_fd = -1;
-    cb->last_force_reconnect_time = now;
-    cb->conn_forced_closed = 1;
+    cb->last_reconnect_time = now;
+    cb->reconnect_interval_reached = 1;
 
     INFO ("write_graphite plugin: Connection closed after %.3f seconds.",
-          CDTIME_T_TO_DOUBLE (now - cb->last_force_reconnect_time));
+          CDTIME_T_TO_DOUBLE (now - cb->last_reconnect_time));
 }
 
 /*
@@ -280,11 +280,11 @@ static int wg_callback_init (struct wg_callback *cb)
 
     /* wg_force_reconnect_check does not flush the buffer before closing a
      * sending socket, so only call wg_reset_buffer() if the socket was closed
-     * for a different reason (tracked in cb->conn_forced_closed). */
-    if (!cb->conn_forced_closed || (cb->send_buf_free == 0))
+     * for a different reason (tracked in cb->reconnect_interval_reached). */
+    if (!cb->reconnect_interval_reached || (cb->send_buf_free == 0))
         wg_reset_buffer (cb);
     else
-        cb->conn_forced_closed = 0;
+        cb->reconnect_interval_reached = 0;
 
     return (0);
 }
@@ -498,9 +498,9 @@ static int wg_config_node (oconfig_item_t *ci)
     cb->node = strdup (WG_DEFAULT_NODE);
     cb->service = strdup (WG_DEFAULT_SERVICE);
     cb->protocol = strdup (WG_DEFAULT_PROTOCOL);
-    cb->last_force_reconnect_time = cdtime();
-    cb->force_reconnect_timeout = 0;
-    cb->conn_forced_closed = 0;
+    cb->last_reconnect_time = cdtime();
+    cb->reconnect_interval = 0;
+    cb->reconnect_interval_reached = 0;
     cb->log_send_errors = WG_DEFAULT_LOG_SEND_ERRORS;
     cb->prefix = NULL;
     cb->postfix = NULL;
@@ -541,8 +541,8 @@ static int wg_config_node (oconfig_item_t *ci)
                 status = -1;
             }
         }
-        else if (strcasecmp ("ForceReconnectTimeout", child->key) == 0)
-            cf_util_get_cdtime (child, &cb->force_reconnect_timeout);
+        else if (strcasecmp ("ReconnectInterval", child->key) == 0)
+            cf_util_get_cdtime (child, &cb->reconnect_interval);
         else if (strcasecmp ("LogSendErrors", child->key) == 0)
             cf_util_get_boolean (child, &cb->log_send_errors);
         else if (strcasecmp ("Prefix", child->key) == 0)