summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 328fc70)
raw | patch | inline | side by side (parent: 328fc70)
author | Marc Fournier <marc.fournier@camptocamp.com> | |
Sat, 4 Apr 2015 20:20:07 +0000 (22:20 +0200) | ||
committer | Marc Fournier <marc.fournier@camptocamp.com> | |
Sat, 4 Apr 2015 20:20:07 +0000 (22:20 +0200) |
src/collectd.conf.pod | patch | blob | history | |
src/curl_xml.c | patch | blob | history |
diff --git a/src/collectd.conf.pod b/src/collectd.conf.pod
index 9dd162e21580eb956cc224b8654a89f06f6f2ab7..35958b3385836e2226b9c6267c8d9c6b2d360910 100644 (file)
--- a/src/collectd.conf.pod
+++ b/src/collectd.conf.pod
=item B<Post> I<Body>
+=item B<Timeout> I<Milliseconds>
+
These options behave exactly equivalent to the appropriate options of the
I<cURL plugin>. Please see there for a detailed description.
diff --git a/src/curl_xml.c b/src/curl_xml.c
index c9f06518ba1db2499031bc9b66ba262a73567b6d..c67d9a3a4c11f16c6d61b6d5d005f5924c67d4d7 100644 (file)
--- a/src/curl_xml.c
+++ b/src/curl_xml.c
_Bool verify_host;
char *cacert;
char *post_body;
+ int timeout;
struct curl_slist *headers;
cx_namespace_t *namespaces;
if (db->post_body != NULL)
curl_easy_setopt (db->curl, CURLOPT_POSTFIELDS, db->post_body);
+ if (db->timeout >= 0)
+ curl_easy_setopt (db->curl, CURLOPT_TIMEOUT_MS, db->timeout);
+ else
+ curl_easy_setopt (db->curl, CURLOPT_TIMEOUT_MS,
+ CDTIME_T_TO_MS(plugin_get_interval()));
+
return (0);
} /* }}} int cx_init_curl */
}
memset (db, 0, sizeof (*db));
+ db->timeout = -1;
+
if (strcasecmp ("URL", ci->key) == 0)
{
status = cf_util_get_string (ci, &db->url);
status = cf_util_get_string (child, &db->post_body);
else if (strcasecmp ("Namespace", child->key) == 0)
status = cx_config_add_namespace (db, child);
+ else if (strcasecmp ("Timeout", child->key) == 0)
+ status = cf_util_get_int (child, &db->timeout);
else
{
WARNING ("curl_xml plugin: Option `%s' not allowed here.", child->key);