diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2016-07-01 16:29:43 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2016-07-01 16:29:43 +0100 |
commit | cabb46ca81c60638493e7842aeaba9166d5d34a9 (patch) | |
tree | abf40495c7da3d99a70a4b4f00a4c5f3dc0e2a37 /src/controller.c | |
parent | 13a9fc0e14d4f44f3f81234e774c5e7e5b08b917 (diff) | |
download | rspamd-cabb46ca81c60638493e7842aeaba9166d5d34a9.tar.gz rspamd-cabb46ca81c60638493e7842aeaba9166d5d34a9.zip |
[Fix] Improve rrd diagnostic errors
Diffstat (limited to 'src/controller.c')
-rw-r--r-- | src/controller.c | 12 |
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; |