Trim event queue

TODO: make configurable

refs #5119
This commit is contained in:
Jean Flach 2017-10-11 14:19:42 +02:00 committed by Michael Friedrich
parent 240e047693
commit 1ada53dd57
1 changed files with 6 additions and 0 deletions

View File

@ -25,6 +25,9 @@
using namespace icinga; using namespace icinga;
//TODO Make configurable and figure out a sane default
#define MAX_EVENTS 5000
REGISTER_TYPE(RedisWriter); REGISTER_TYPE(RedisWriter);
RedisWriter::RedisWriter(void) RedisWriter::RedisWriter(void)
@ -284,7 +287,10 @@ void RedisWriter::HandleEvent(const Dictionary::Ptr& event)
String body = JsonEncode(event); String body = JsonEncode(event);
ExecuteQuery({ "MULTI" });
ExecuteQuery({ "LPUSH", "icinga:event:" + name, body }); ExecuteQuery({ "LPUSH", "icinga:event:" + name, body });
ExecuteQuery({ "LTRIM", "icinga:event:" + name, 0, MAX_EVENTS - 1 });
ExecuteQuery({ "EXEC" });
} }
} }