summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 3a3b1ec)
raw | patch | inline | side by side (parent: 3a3b1ec)
author | Pierre-Yves Ritschard <pyr@spootnik.org> | |
Thu, 14 Apr 2016 08:11:18 +0000 (10:11 +0200) | ||
committer | Pierre-Yves Ritschard <pyr@spootnik.org> | |
Thu, 14 Apr 2016 08:15:22 +0000 (10:15 +0200) |
src/write_riemann.c | patch | blob | history |
diff --git a/src/write_riemann.c b/src/write_riemann.c
index ff7e19f069dab73f9a4fec9d49c53b82f6bab9b1..1836b6b1d67cbace9f043cbbe47776eee924c989 100644 (file)
--- a/src/write_riemann.c
+++ b/src/write_riemann.c
double ttl_factor;
cdtime_t batch_init;
int batch_max;
+ int batch_timeout;
int reference_count;
riemann_message_t *batch_msg;
char *tls_ca_file;
riemann_message_t *msg;
size_t len;
int ret;
+ cdtime_t timeout;
msg = wrr_value_list_to_message(host, ds, vl, statuses);
if (msg == NULL)
ret = 0;
if ((host->batch_max < 0) || (((size_t) host->batch_max) <= len)) {
ret = wrr_batch_flush_nolock(0, host);
- }
+ } else {
+ if (host->batch_timeout > 0) {
+ timeout = TIME_T_TO_CDTIME_T((time_t)host->batch_timeout);
+ ret = wrr_batch_flush_nolock(timeout, host);
+ }
+ }
pthread_mutex_unlock(&host->lock);
return ret;
host->batch_mode = 1;
host->batch_max = RIEMANN_BATCH_MAX; /* typical MSS */
host->batch_init = cdtime();
+ host->batch_timeout = 0;
host->ttl_factor = RIEMANN_TTL_FACTOR;
host->client = NULL;
host->client_type = RIEMANN_CLIENT_TCP;
status = cf_util_get_int(child, &host->batch_max);
if (status != 0)
break;
+ } else if (strcasecmp("BatchFlushTimeout", child->key) == 0) {
+ status = cf_util_get_int(child, &host->batch_timeout);
+ if (status != 0)
+ break;
} else if (strcasecmp("Timeout", child->key) == 0) {
status = cf_util_get_int(child, (int *)&host->timeout.tv_sec);
if (status != 0)