author | Kim Alvefur <zash@zash.se> |
Wed, 03 Mar 2021 11:43:38 +0100 | |
changeset 4494 | cf2bdb2aaa57 |
parent 2247 | f388747c53c7 |
permissions | -rw-r--r-- |
1766
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 |
module:set_global(); |
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 |
|
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 |
local function sink_maker(config) |
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 |
local levels = { |
2247
f388747c53c7
mod_log_rate: Fix to actually use module methods
Kim Alvefur <zash@zash.se>
parents:
2206
diff
changeset
|
5 |
debug = module:measure("log.debug", "rate"); |
f388747c53c7
mod_log_rate: Fix to actually use module methods
Kim Alvefur <zash@zash.se>
parents:
2206
diff
changeset
|
6 |
info = module:measure("log.info", "rate"); |
f388747c53c7
mod_log_rate: Fix to actually use module methods
Kim Alvefur <zash@zash.se>
parents:
2206
diff
changeset
|
7 |
warn = module:measure("log.warn", "rate"); |
f388747c53c7
mod_log_rate: Fix to actually use module methods
Kim Alvefur <zash@zash.se>
parents:
2206
diff
changeset
|
8 |
error = module:measure("log.error", "rate"); |
1766
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 |
}; |
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 |
return function (_, level) |
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 |
return levels[level](); |
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 |
end |
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 |
end |
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 |
|
e6c7fe1be6cd
mod_log_rate: Log sink that reports the rate of log messages to statsmanager
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 |
require"core.loggingmanager".register_sink_type("measure", sink_maker); |