X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fcurl.c;h=26ca7e7a0721af3a6c1cf2e5c0cb30910ccfed06;hb=f374b72032a227a75b6bc9ae574cd28abbc16f24;hp=dfc14dcb3f242ba9f13b2e018fee260618de1398;hpb=79963d13c1884d1d92667cc502ad20758b084a12;p=collectd.git diff --git a/src/curl.c b/src/curl.c index dfc14dcb..26ca7e7a 100644 --- a/src/curl.c +++ b/src/curl.c @@ -347,7 +347,6 @@ static int cc_page_init_curl(web_page_t *wp) /* {{{ */ curl_easy_setopt(wp->curl, CURLOPT_WRITEDATA, wp); curl_easy_setopt(wp->curl, CURLOPT_USERAGENT, COLLECTD_USERAGENT); curl_easy_setopt(wp->curl, CURLOPT_ERRORBUFFER, wp->curl_errbuf); - curl_easy_setopt(wp->curl, CURLOPT_URL, wp->url); curl_easy_setopt(wp->curl, CURLOPT_FOLLOWLOCATION, 1L); curl_easy_setopt(wp->curl, CURLOPT_MAXREDIRS, 50L); @@ -562,15 +561,11 @@ static int cc_init(void) /* {{{ */ } /* }}} int cc_init */ static void cc_submit(const web_page_t *wp, const web_match_t *wm, /* {{{ */ - const cu_match_value_t *mv) { - value_t values[1]; + value_t value) { value_list_t vl = VALUE_LIST_INIT; - values[0] = mv->value; - - vl.values = values; + vl.values = &value; vl.values_len = 1; - sstrncpy(vl.host, hostname_g, sizeof(vl.host)); sstrncpy(vl.plugin, "curl", sizeof(vl.plugin)); sstrncpy(vl.plugin_instance, wp->instance, sizeof(vl.plugin_instance)); sstrncpy(vl.type, wm->type, sizeof(vl.type)); @@ -582,14 +577,10 @@ static void cc_submit(const web_page_t *wp, const web_match_t *wm, /* {{{ */ static void cc_submit_response_code(const web_page_t *wp, long code) /* {{{ */ { - value_t values[1]; value_list_t vl = VALUE_LIST_INIT; - values[0].gauge = code; - - vl.values = values; + vl.values = &(value_t){.gauge = (gauge_t)code}; vl.values_len = 1; - sstrncpy(vl.host, hostname_g, sizeof(vl.host)); sstrncpy(vl.plugin, "curl", sizeof(vl.plugin)); sstrncpy(vl.plugin_instance, wp->instance, sizeof(vl.plugin_instance)); sstrncpy(vl.type, "response_code", sizeof(vl.type)); @@ -598,15 +589,11 @@ static void cc_submit_response_code(const web_page_t *wp, long code) /* {{{ */ } /* }}} void cc_submit_response_code */ static void cc_submit_response_time(const web_page_t *wp, /* {{{ */ - cdtime_t response_time) { - value_t values[1]; + gauge_t response_time) { value_list_t vl = VALUE_LIST_INIT; - values[0].gauge = CDTIME_T_TO_DOUBLE(response_time); - - vl.values = values; + vl.values = &(value_t){.gauge = response_time}; vl.values_len = 1; - sstrncpy(vl.host, hostname_g, sizeof(vl.host)); sstrncpy(vl.plugin, "curl", sizeof(vl.plugin)); sstrncpy(vl.plugin_instance, wp->instance, sizeof(vl.plugin_instance)); sstrncpy(vl.type, "response_time", sizeof(vl.type)); @@ -623,6 +610,9 @@ static int cc_read_page(web_page_t *wp) /* {{{ */ start = cdtime(); wp->buffer_fill = 0; + + curl_easy_setopt(wp->curl, CURLOPT_URL, wp->url); + status = curl_easy_perform(wp->curl); if (status != CURLE_OK) { ERROR("curl plugin: curl_easy_perform failed with status %i: %s", status, @@ -631,7 +621,7 @@ static int cc_read_page(web_page_t *wp) /* {{{ */ } if (wp->response_time) - cc_submit_response_time(wp, cdtime() - start); + cc_submit_response_time(wp, CDTIME_T_TO_DOUBLE(cdtime() - start)); if (wp->stats != NULL) curl_stats_dispatch(wp->stats, wp->curl, hostname_g, "curl", wp->instance); @@ -662,7 +652,7 @@ static int cc_read_page(web_page_t *wp) /* {{{ */ continue; } - cc_submit(wp, wm, mv); + cc_submit(wp, wm, mv->value); match_value_reset(mv); } /* for (wm = wp->matches; wm != NULL; wm = wm->next) */