X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fnginx.c;h=de52262f4ec817b1b54ca876652b02e06a845252;hb=c334d63f821c5390af86b90c30e5334b2e97c6ad;hp=1cb7a90a13ad75f0405b4228eb589b984396b608;hpb=0eff156c7816507fa1865b76e948574dd320fae0;p=collectd.git diff --git a/src/nginx.c b/src/nginx.c index 1cb7a90a..de52262f 100644 --- a/src/nginx.c +++ b/src/nginx.c @@ -120,6 +120,7 @@ static int init (void) return (-1); } + curl_easy_setopt (curl, CURLOPT_NOSIGNAL, 1L); curl_easy_setopt (curl, CURLOPT_WRITEFUNCTION, nginx_curl_callback); curl_easy_setopt (curl, CURLOPT_USERAGENT, PACKAGE_NAME"/"PACKAGE_VERSION); curl_easy_setopt (curl, CURLOPT_ERRORBUFFER, nginx_curl_error); @@ -142,24 +143,25 @@ static int init (void) curl_easy_setopt (curl, CURLOPT_URL, url); } - curl_easy_setopt (curl, CURLOPT_FOLLOWLOCATION, 1); + curl_easy_setopt (curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt (curl, CURLOPT_MAXREDIRS, 50L); if ((verify_peer == NULL) || IS_TRUE (verify_peer)) { - curl_easy_setopt (curl, CURLOPT_SSL_VERIFYPEER, 1); + curl_easy_setopt (curl, CURLOPT_SSL_VERIFYPEER, 1L); } else { - curl_easy_setopt (curl, CURLOPT_SSL_VERIFYPEER, 0); + curl_easy_setopt (curl, CURLOPT_SSL_VERIFYPEER, 0L); } if ((verify_host == NULL) || IS_TRUE (verify_host)) { - curl_easy_setopt (curl, CURLOPT_SSL_VERIFYHOST, 2); + curl_easy_setopt (curl, CURLOPT_SSL_VERIFYHOST, 2L); } else { - curl_easy_setopt (curl, CURLOPT_SSL_VERIFYHOST, 0); + curl_easy_setopt (curl, CURLOPT_SSL_VERIFYHOST, 0L); } if (cacert != NULL) @@ -179,6 +181,8 @@ static void submit (char *type, char *inst, long long value) values[0].gauge = value; else if (strcmp (type, "nginx_requests") == 0) values[0].derive = value; + else if (strcmp (type, "connections") == 0) + values[0].derive = value; else return; @@ -213,7 +217,7 @@ static int nginx_read (void) return (-1); nginx_buffer_len = 0; - if (curl_easy_perform (curl) != 0) + if (curl_easy_perform (curl) != CURLE_OK) { WARNING ("nginx plugin: curl_easy_perform failed: %s", nginx_curl_error); return (-1); @@ -252,6 +256,8 @@ static int nginx_read (void) && (atoll (fields[1]) != 0) && (atoll (fields[2]) != 0)) { + submit ("connections", "accepted", atoll (fields[0])); + submit ("connections", "handled", atoll (fields[1])); submit ("nginx_requests", NULL, atoll (fields[2])); } }