X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fnetwork.c;h=e15036424d880316ec58bcdffd7d9d3cc76ff2ae;hb=917343b099777d5aae031c5062b01e4d3a694b5a;hp=b67928c7c2fe6a10aec868ba61c5c7fbe512f6c9;hpb=bc0a8f260e4e24bdf664c3dcff919b6f99bfe31d;p=collectd.git diff --git a/src/network.c b/src/network.c index b67928c7..e1503642 100644 --- a/src/network.c +++ b/src/network.c @@ -1759,9 +1759,25 @@ static int network_init (void) return (0); } /* int network_init */ +static int network_flush (int timeout) +{ + pthread_mutex_lock (&send_buffer_lock); + + if (((time (NULL) - cache_flush_last) >= timeout) + && (send_buffer_fill > 0)) + { + flush_buffer (); + } + + pthread_mutex_unlock (&send_buffer_lock); + + return (0); +} /* int network_flush */ + void module_register (void) { plugin_register_config ("network", network_config, config_keys, config_keys_num); plugin_register_init ("network", network_init); + plugin_register_flush ("network", network_flush); } /* void module_register */