Annotate

mod_measure_message_length/mod_measure_message_length.lua @ 5149:fa56ed2bacab

mod_unified_push: Add support for multiple token backends, including stoage Now that we have ACLs by default, it is no longer necessary to be completely stateless. On 0.12, using storage has benefits over JWT, because it does not expose client JIDs to the push apps/services. In trunk, PASETO is stateless and does not expose client JIDs.
author Matthew Wild <mwild1@gmail.com>
date Sat, 14 Jan 2023 14:31:37 +0000
parent 3430:6e70d354b7d8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2372
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 local bytes = module:measure("bytes", "sizes");
3430
6e70d354b7d8 mod_measure_message_length: Use measure type that actually exists
Kim Alvefur <zash@zash.se>
parents: 2372
diff changeset
2 local lines = module:measure("lines", "distribution");
6e70d354b7d8 mod_measure_message_length: Use measure type that actually exists
Kim Alvefur <zash@zash.se>
parents: 2372
diff changeset
3 local words = module:measure("words", "distribution");
2372
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 local function measure_length(event)
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 local body = event.stanza:get_child_text("body");
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 if body then
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 bytes(#body);
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 lines(select(2, body:gsub("[^\n]+","")));
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 words(select(2, body:gsub("%S+","")));
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 end
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 end
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 module:hook("message/full", measure_length);
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 module:hook("message/bare", measure_length);
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 module:hook("message/host", measure_length);
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 module:hook("pre-message/full", measure_length);
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 module:hook("pre-message/bare", measure_length);
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 module:hook("pre-message/host", measure_length);
b1b120e654ff mod_measure_message_length: Collect statistics on number of bytes, words and lines in messages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21