X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fnginx.c;h=4e4ce3bbc6115572873668a76507f80ccd82b316;hb=09147a2c9dde2e04e660409e7a5ac0eb09604b07;hp=b0daa05b31a555732a0f58940d732df84de3b57d;hpb=38e15f5809846c009792ef9aeee800efbf3aa21e;p=collectd.git diff --git a/src/nginx.c b/src/nginx.c index b0daa05b..4e4ce3bb 100644 --- a/src/nginx.c +++ b/src/nginx.c @@ -39,6 +39,7 @@ static char *pass = NULL; static char *verify_peer = NULL; static char *verify_host = NULL; static char *cacert = NULL; +static char *timeout = NULL; static CURL *curl = NULL; @@ -53,7 +54,8 @@ static const char *config_keys[] = "Password", "VerifyPeer", "VerifyHost", - "CACert" + "CACert", + "Timeout" }; static int config_keys_num = STATIC_ARRAY_SIZE (config_keys); @@ -107,6 +109,8 @@ static int config (const char *key, const char *value) return (config_set (&verify_host, value)); else if (strcasecmp (key, "cacert") == 0) return (config_set (&cacert, value)); + else if (strcasecmp (key, "timeout") == 0) + return (config_set (&timeout, value)); else return (-1); } /* int config */ @@ -177,6 +181,18 @@ static int init (void) curl_easy_setopt (curl, CURLOPT_CAINFO, cacert); } +#ifdef HAVE_CURLOPT_TIMEOUT_MS + if (timeout != NULL) + { + curl_easy_setopt (curl, CURLOPT_TIMEOUT_MS, atol(timeout)); + } + else + { + curl_easy_setopt (curl, CURLOPT_TIMEOUT_MS, + CDTIME_T_TO_MS(plugin_get_interval())); + } +#endif + return (0); } /* void init */