summaryrefslogtreecommitdiffstats
path: root/src/controller.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2016-07-01 16:29:43 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2016-07-01 16:29:43 +0100
commitcabb46ca81c60638493e7842aeaba9166d5d34a9 (patch)
treeabf40495c7da3d99a70a4b4f00a4c5f3dc0e2a37 /src/controller.c
parent13a9fc0e14d4f44f3f81234e774c5e7e5b08b917 (diff)
downloadrspamd-cabb46ca81c60638493e7842aeaba9166d5d34a9.tar.gz
rspamd-cabb46ca81c60638493e7842aeaba9166d5d34a9.zip
[Fix] Improve rrd diagnostic errors
Diffstat (limited to 'src/controller.c')
-rw-r--r--src/controller.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/controller.c b/src/controller.c
index 085eda5d4..8fb3cb1b1 100644
--- a/src/controller.c
+++ b/src/controller.c
@@ -2619,7 +2619,9 @@ start_controller_worker (struct rspamd_worker *worker)
/* RRD collector */
if (ctx->cfg->rrd_file && worker->index == 0) {
- ctx->rrd = rspamd_rrd_file_default (ctx->cfg->rrd_file, NULL);
+ GError *rrd_err = NULL;
+
+ ctx->rrd = rspamd_rrd_file_default (ctx->cfg->rrd_file, &rrd_err);
if (ctx->rrd) {
ctx->rrd_event = g_slice_alloc0 (sizeof (*ctx->rrd_event));
@@ -2627,6 +2629,14 @@ start_controller_worker (struct rspamd_worker *worker)
event_base_set (ctx->ev_base, ctx->rrd_event);
event_add (ctx->rrd_event, &rrd_update_time);
}
+ else if (rrd_err) {
+ msg_err ("cannot load rrd from %s: %e", ctx->cfg->rrd_file,
+ rrd_err);
+ g_error_free (rrd_err);
+ }
+ else {
+ msg_err ("cannot load rrd from %s: unknown error", ctx->cfg->rrd_file);
+ }
}
else {
ctx->rrd = NULL;