Mercurial > prosody-modules
annotate mod_log_rate/mod_log_rate.lua @ 6015:7b093a9b95ea
mod_report_forward: Fix traceback on error message passed to datetime function
If archive:get() returns an error, e.g. because it can't find a message
with the given ID, it may return e.g. nil, "item-not-found" or similar
where the error condition ends up in reported_message_time, which gets
passed to util.datetime, which thus ends up doing math to a string or
error object.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Wed, 06 Nov 2024 22:25:41 +0100 |
| parents | f388747c53c7 |
| children |
| rev | line source |
|---|---|
|
1762
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 = { |
|
2243
f388747c53c7
mod_log_rate: Fix to actually use module methods
Kim Alvefur <zash@zash.se>
parents:
2202
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:
2202
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:
2202
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:
2202
diff
changeset
|
8 error = module:measure("log.error", "rate"); |
|
1762
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); |
