mod_log_rate: Log sink that reports the rate of log messages to statsmanager
authorKim Alvefur <zash@zash.se>
Wed, 27 May 2015 13:31:33 +0200
changeset 1766 e6c7fe1be6cd
parent 1765 6f34e51a23f0
child 1767 cf3ee2eca46d
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
mod_log_rate/mod_log_rate.lua
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mod_log_rate/mod_log_rate.lua	Wed May 27 13:31:33 2015 +0200
@@ -0,0 +1,17 @@
+module:set_global();
+
+local measure = require"core.statsmanager".measure;
+
+local function sink_maker(config)
+	local levels = {
+		debug = measure("rate", "log.debug");
+		info = measure("rate", "log.info");
+		warn = measure("rate", "log.warn");
+		error = measure("rate", "log.error");
+	};
+	return function (_, level)
+		return levels[level]();
+	end
+end
+
+require"core.loggingmanager".register_sink_type("measure", sink_maker);