@cryptotaxi247 / netdata-1 / commits / 244d1b9e7

fixed http clients accounting (#19406)

* fixed http clients accounting * move web clients accounting outside aclk

Costa Tsaousis committed Jan 15, 2025 at 17:03 UTC 244d1b9e7c19ad521c1df681b4fa6105a223fb73
3 files changed +7 -7
src/web/server/static/static-threaded.c
+1
@@ -28,6 +28,7 @@ long web_client_streaming_rate_t = 0L;
28 static struct web_client *web_client_create_on_fd(POLLINFO *pi) {
29 struct web_client *w;
30
31 + pulse_web_client_connected();
32 w = web_client_get_from_cache();
33 w->fd = pi->fd;
34
src/web/server/web_client.c
+6 -5
@@ -192,10 +192,6 @@ void web_client_log_completed_request(struct web_client *w, bool update_web_stat
192 size_t size = w->response.data->len;
193 size_t sent = w->response.zoutput ? (size_t)w->response.zstream.total_out : size;
194
195 - if(update_web_stats)
196 - pulse_web_request_completed(
197 - dt_usec(&tv, &w->timings.tv_in), w->statistics.received_bytes, w->statistics.sent_bytes, size, sent);
198 -
195 usec_t prep_ut = w->timings.tv_ready.tv_sec ? dt_usec(&w->timings.tv_ready, &w->timings.tv_in) : 0;
196 usec_t sent_ut = w->timings.tv_ready.tv_sec ? dt_usec(&tv, &w->timings.tv_ready) : 0;
197 usec_t total_ut = dt_usec(&tv, &w->timings.tv_in);
@@ -239,8 +235,13 @@ void web_client_log_completed_request(struct web_client *w, bool update_web_stat
235 }
236
237 // access log
242 - if(likely(buffer_strlen(w->url_as_received)))
238 + if(likely(buffer_strlen(w->url_as_received))) {
239 nd_log(NDLS_ACCESS, prio, NULL);
240 +
241 + if(update_web_stats)
242 + pulse_web_request_completed(
243 + dt_usec(&tv, &w->timings.tv_in), w->statistics.received_bytes, w->statistics.sent_bytes, size, sent);
244 + }
245 }
246
247 void web_client_request_done(struct web_client *w) {
src/web/server/web_client_cache.c
-2
@@ -109,8 +109,6 @@ struct web_client *web_client_get_from_cache(void) {
109 web_clients_cache.used.allocated++;
110 }
111
112 - pulse_web_client_connected();
113 -
112 // link it to used web clients
113 DOUBLE_LINKED_LIST_PREPEND_ITEM_UNSAFE(web_clients_cache.used.head, w, cache.prev, cache.next);
114 web_clients_cache.used.count++;