Software / code / prosody-modules
Annotate
mod_log_json/mod_log_json.lua @ 6258:86989059de5b
:multibe Readme.md: correct prosody 0.13 to 13
diff --git a/mod_muc_anonymize_moderation_actions/README.md b/mod_muc_anonymize_moderation_actions/README.md
--- a/mod_muc_anonymize_moderation_actions/README.md
+++ b/mod_muc_anonymize_moderation_actions/README.md
@@ -34,7 +34,7 @@ Component "muc.example.com" "muc"
------ ----------------------
trunk Works as of 25-05-12
- 0.13 Works
+ 13 Works
0.12 Works
------ ----------------------
diff --git a/mod_sasl2/README.md b/mod_sasl2/README.md
--- a/mod_sasl2/README.md
+++ b/mod_sasl2/README.md
@@ -32,6 +32,6 @@ This module requires Prosody **trunk** a
Prosody Version Status
----------------------- ----------------
trunk as of 2025-05-25 Works
- 0.13 Works
+ 13 Works
0.12 Does not work
----------------------- ----------------
diff --git a/mod_sasl2_bind2/README.md b/mod_sasl2_bind2/README.md
--- a/mod_sasl2_bind2/README.md
+++ b/mod_sasl2_bind2/README.md
@@ -17,5 +17,5 @@ This module depends on [mod_sasl2]. It e
Prosody-Version Status
--------------- ----------------------
trunk Works as of 2025-05-25
- 0.13 Works
+ 13 Works
0.12 Does not work
diff --git a/mod_sasl2_fast/README.md b/mod_sasl2_fast/README.md
--- a/mod_sasl2_fast/README.md
+++ b/mod_sasl2_fast/README.md
@@ -34,5 +34,5 @@ clients being logged out unexpectedly.
Prosody-Version Status
--------------- ----------------------
trunk Works as of 2025-05-25
- 0.13 Work
+ 13 Work
0.12 Does not work
diff --git a/mod_sasl2_sm/README.md b/mod_sasl2_sm/README.md
--- a/mod_sasl2_sm/README.md
+++ b/mod_sasl2_sm/README.md
@@ -18,5 +18,5 @@ configuration options.
Prosody-Version Status
--------------- ----------------------
trunk Works as of 2025-05-25
- 0.13 Work
+ 13 Work
0.12 Does not work
diff --git a/mod_sasl_ssdp/README.md b/mod_sasl_ssdp/README.md
--- a/mod_sasl_ssdp/README.md
+++ b/mod_sasl_ssdp/README.md
@@ -21,5 +21,5 @@ There are no configuration options for t
Prosody-Version Status
--------------- ----------------------
trunk Works as of 2025-05-25
- 0.13 Works
+ 13 Works
0.12 Does not work
diff --git a/mod_vcard_muc/README.md b/mod_vcard_muc/README.md
--- a/mod_vcard_muc/README.md
+++ b/mod_vcard_muc/README.md
@@ -23,7 +23,7 @@ modules_enabled = {
# Compatibility
------------------------- ----------------------------------------
- 0.13 Room avatar feature included in Prosody
+ 13 Room avatar feature included in Prosody
0.12 Works
------------------------- ----------------------------------------
diff --git a/mod_warn_legacy_tls/README.md b/mod_warn_legacy_tls/README.md
--- a/mod_warn_legacy_tls/README.md
+++ b/mod_warn_legacy_tls/README.md
@@ -44,5 +44,5 @@ legacy_tls_versions = { "TLSv1", "TLSv1.
Prosody-Version Status
--------------- ---------------------
trunk Works as of 25-05-25
-0.13 Works
+13 Works
0.12 Works
| author | Menel <menel@snikket.de> |
|---|---|
| date | Wed, 14 May 2025 23:32:04 +0200 |
| parent | 5956:0b347a7c5b5f |
| rev | line source |
|---|---|
|
4974
807007913f67
mod_log_json: Prefer native Lua table.pack over Prosody util.table one
Kim Alvefur <zash@zash.se>
parents:
4462
diff
changeset
|
1 local pack = table.pack or require "util.table".pack; |
| 3732 | 2 local json = require "util.json"; |
| 3 local array = require "util.array"; | |
| 4 local datetime = require "util.datetime".datetime; | |
| 3746 | 5 local socket = require "socket"; |
| 3732 | 6 |
| 7 module:set_global(); | |
| 8 | |
| 9 local function sink_maker(config) | |
| 3746 | 10 local send = function () end |
| 11 if config.filename then | |
|
5956
0b347a7c5b5f
mod_log_json: Support for logging to stdout
Matthew Wild <mwild1@gmail.com>
parents:
4974
diff
changeset
|
12 local logfile; |
|
0b347a7c5b5f
mod_log_json: Support for logging to stdout
Matthew Wild <mwild1@gmail.com>
parents:
4974
diff
changeset
|
13 if config.filename == "/dev/stdout" then |
|
0b347a7c5b5f
mod_log_json: Support for logging to stdout
Matthew Wild <mwild1@gmail.com>
parents:
4974
diff
changeset
|
14 logfile = io.stdout; |
|
0b347a7c5b5f
mod_log_json: Support for logging to stdout
Matthew Wild <mwild1@gmail.com>
parents:
4974
diff
changeset
|
15 else |
|
0b347a7c5b5f
mod_log_json: Support for logging to stdout
Matthew Wild <mwild1@gmail.com>
parents:
4974
diff
changeset
|
16 logfile = io.open(config.filename, "a+"); |
|
0b347a7c5b5f
mod_log_json: Support for logging to stdout
Matthew Wild <mwild1@gmail.com>
parents:
4974
diff
changeset
|
17 end |
| 3746 | 18 logfile:setvbuf("no"); |
| 19 function send(payload) | |
| 20 logfile:write(payload, "\n"); | |
| 21 end | |
| 22 elseif config.udp_host and config.udp_port then | |
| 23 local conn = socket.udp(); | |
|
3748
27abf3b6819a
mod_log_json: Use correct method to specify remote endpoint
Kim Alvefur <zash@zash.se>
parents:
3747
diff
changeset
|
24 conn:setpeername(config.udp_host, config.udp_port); |
| 3746 | 25 function send(payload) |
| 26 conn:send(payload); | |
| 27 end | |
| 28 end | |
|
4462
4356088ad675
mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents:
3758
diff
changeset
|
29 local format = require "util.format".format; |
|
4356088ad675
mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents:
3758
diff
changeset
|
30 local do_format = config.formatted_as or false; |
| 3732 | 31 return function (source, level, message, ...) |
| 32 local args = pack(...); | |
| 33 for i = 1, args.n do | |
| 34 if args[i] == nil then | |
| 35 args[i] = json.null; | |
| 36 elseif type(args[i]) ~= "string" or type(args[i]) ~= "number" then | |
| 37 args[i] = tostring(args[i]); | |
| 38 end | |
| 39 end | |
| 40 args.n = nil; | |
| 41 local payload = { | |
| 42 datetime = datetime(), | |
| 43 source = source, | |
| 44 level = level, | |
| 45 message = message, | |
| 46 args = array(args); | |
| 47 }; | |
|
4462
4356088ad675
mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents:
3758
diff
changeset
|
48 if do_format then |
|
4356088ad675
mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents:
3758
diff
changeset
|
49 payload[do_format] = format(message, ...) |
|
4356088ad675
mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents:
3758
diff
changeset
|
50 end |
| 3746 | 51 send(json.encode(payload)); |
| 3732 | 52 end |
| 53 end | |
| 54 | |
|
3758
900ea02ab00b
mod_log_json: Deregister log sink on unload
Kim Alvefur <zash@zash.se>
parents:
3748
diff
changeset
|
55 function module.unload() |
|
900ea02ab00b
mod_log_json: Deregister log sink on unload
Kim Alvefur <zash@zash.se>
parents:
3748
diff
changeset
|
56 -- deregister |
|
900ea02ab00b
mod_log_json: Deregister log sink on unload
Kim Alvefur <zash@zash.se>
parents:
3748
diff
changeset
|
57 require"core.loggingmanager".register_sink_type("json", nil); |
|
900ea02ab00b
mod_log_json: Deregister log sink on unload
Kim Alvefur <zash@zash.se>
parents:
3748
diff
changeset
|
58 end |
|
900ea02ab00b
mod_log_json: Deregister log sink on unload
Kim Alvefur <zash@zash.se>
parents:
3748
diff
changeset
|
59 |
| 3732 | 60 require"core.loggingmanager".register_sink_type("json", sink_maker); |