annotate mod_log_json/README.md @ 6214:cc5c0f1dc89b

mod_muc_anonymize_moderation_actions: Fix mentioning Virtualhost for MUC, Compatibility section and License. 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 @@ -1,8 +1,10 @@ -<!-- -SPDX-FileCopyrightText: 2024 John Livingston <https://www.john-livingston.fr/> -SPDX-License-Identifier: AGPL-3.0-only ---> -# mod_muc_anonymize_moderation_actions +--- +labels: +- 'Stage-Alpha' +summary: Anonymize moderator actions for participants +--- + +## Introduction This modules allows to anonymize affiliation and role changes in MUC rooms. @@ -11,13 +13,10 @@ When the feature is enabled, when a mode This is particularly usefull to prevent some revenge when a moderator bans someone. -This module is under AGPL-3.0 license. - -It was tested on Prosody 0.12.x. ## Configuration -Just enable the module on your MUC VirtualHost. +Just enable the module on your MUC Component. The feature will be accessible throught the room configuration form. You can tweak the position of the settings in the MUC configuration form using `anonymize_moderation_actions_form_position`. @@ -26,7 +25,20 @@ This value will be passed as priority fo By default, the field will be between muc#roomconfig_changesubject and muc#roomconfig_moderatedroom (default value is `78`). ``` lua -VirtualHost "muc.example.com" +Component "muc.example.com" "muc" modules_enabled = { "muc_anonymize_moderation_actions" } anonymize_moderation_actions_form_position = 96 ``` + +## Compatibility + + ------ ---------------------- + trunk Works as of 25-05-12 + 0.13 Works + 0.12 Works + ------ ---------------------- + +### License + +SPDX-FileCopyrightText: 2024 John Livingston <https://www.john-livingston.fr/> +SPDX-License-Identifier: AGPL-3.0-only
author Menel <menel@snikket.de>
date Mon, 12 May 2025 10:42:26 +0200
parents fe081789f7b5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3735
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 ---
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 summary: JSON Log Sink
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 ---
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 Conifiguration
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 ==============
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7
3745
e43a82ddde12 mod_log_json/README: Add a sentence about the first example
Kim Alvefur <zash@zash.se>
parents: 3736
diff changeset
8 Here we log to `/var/log/prosody/prosody.json`:
e43a82ddde12 mod_log_json/README: Add a sentence about the first example
Kim Alvefur <zash@zash.se>
parents: 3736
diff changeset
9
3735
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 ``` {.lua}
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 log = {
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 -- your other log sinks
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 info = "/var/log/prosody/prosody.log"
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 -- add this:
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 { to = "json", filename = "/var/log/prosody/prosody.json" };
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 }
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 ```
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18
3746
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
19 ## UDP
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
20
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
21 Alternatively, it can send logs via UDP:
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
22
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
23 ```lua
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
24 log = {
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
25 { to = "json", udp_host = "10.1.2.3", udp_port = "9999" };
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
26 }
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
27 ```
bc865568ff02 mod_log_json: Add UDP support
Kim Alvefur <zash@zash.se>
parents: 3745
diff changeset
28
3735
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
29 Format
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
30 ======
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
31
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
32 JSON log files consist of a series of `\n`-separated JSON objects,
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
33 suitable for mangling with tools like
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
34 [`jq`](https://stedolan.github.io/jq/).
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
35
3736
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
36 Example (with whitespace and indentation for readability):
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
37
3735
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
38 ``` {.json}
3736
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
39 {
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
40 "args" : [],
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
41 "datetime" : "2019-11-03T13:38:28Z",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
42 "level" : "info",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
43 "message" : "Client connected",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
44 "source" : "c2s55f267f5b9d0"
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
45 }
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
46 {
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
47 "args" : [
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
48 "user@example.net"
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
49 ],
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
50 "datetime" : "2019-11-03T13:38:28Z",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
51 "level" : "debug",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
52 "message" : "load_roster: asked for: %s",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
53 "source" : "rostermanager"
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3735
diff changeset
54 }
3735
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
55 ```
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
56
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
57 `datetime`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
58 : [XEP-0082]-formatted timestamp.
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
59
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
60 `source`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
61 : Log source, usually a module or a connected session.
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
62
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
63 `level`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
64 : `debug`, `info`, `warn` or `error`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
65
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
66 `message`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
67 : The log message in `printf` format. Combine with `args` to get the
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
68 final message.
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
69
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
70 `args`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
71 : Array of extra arguments, corresponding to `printf`-style `%s`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
72 formatting in the `message`.
4462
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
73
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
74 Formatted message
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
75 -----------------
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
76
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
77 If desired, at the obvious expense of performance, the formatted version of
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
78 the string can be included in the JSON object by specifying the `formatted_as`
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
79 key in the logger config:
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
80
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
81 ``` {.lua}
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
82 log = {
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
83 -- ... other sinks ...
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
84 { to = "json", formatted_as = "msg_formatted", filename = "/var/log/prosody/prosody.json" };
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
85 }
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
86
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
87 ```
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
88
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
89 This will expose the formatted message in the JSON as separate `msg_formatted`
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
90 key. It is possible to override existing keys using this (for example, the
4356088ad675 mod_log_json: allow logging of formatted message
Jonas Schäfer <jonas@wielicki.name>
parents: 3746
diff changeset
91 `message` key), but not advisible.