Software /
code /
prosody
Comparison
plugins/mod_c2s.lua @ 8764:81d305bbe7bc
mod_c2s: Add a counter for IPv6.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Sat, 09 Sep 2017 14:45:23 +0100 |
parent | 8390:4c629fde768c |
child | 8820:1348a931528a |
comparison
equal
deleted
inserted
replaced
8763:67ecff7be011 | 8764:81d305bbe7bc |
---|---|
26 local c2s_timeout = module:get_option_number("c2s_timeout", 300); | 26 local c2s_timeout = module:get_option_number("c2s_timeout", 300); |
27 local stream_close_timeout = module:get_option_number("c2s_close_timeout", 5); | 27 local stream_close_timeout = module:get_option_number("c2s_close_timeout", 5); |
28 local opt_keepalives = module:get_option_boolean("c2s_tcp_keepalives", module:get_option_boolean("tcp_keepalives", true)); | 28 local opt_keepalives = module:get_option_boolean("c2s_tcp_keepalives", module:get_option_boolean("tcp_keepalives", true)); |
29 | 29 |
30 local measure_connections = module:measure("connections", "amount"); | 30 local measure_connections = module:measure("connections", "amount"); |
31 local measure_ipv6 = module:measure("ipv6", "amount"); | |
31 | 32 |
32 local sessions = module:shared("sessions"); | 33 local sessions = module:shared("sessions"); |
33 local core_process_stanza = prosody.core_process_stanza; | 34 local core_process_stanza = prosody.core_process_stanza; |
34 local hosts = prosody.hosts; | 35 local hosts = prosody.hosts; |
35 | 36 |
37 local listener = {}; | 38 local listener = {}; |
38 local runner_callbacks = {}; | 39 local runner_callbacks = {}; |
39 | 40 |
40 module:hook("stats-update", function () | 41 module:hook("stats-update", function () |
41 local count = 0; | 42 local count = 0; |
42 for _ in pairs(sessions) do | 43 local ipv6 = 0; |
44 for _, session in pairs(sessions) do | |
43 count = count + 1; | 45 count = count + 1; |
46 if session.ip and session.ip:match(":") then | |
47 ipv6 = ipv6 + 1; | |
48 end | |
44 end | 49 end |
45 measure_connections(count); | 50 measure_connections(count); |
51 measure_ipv6(ipv6); | |
46 end); | 52 end); |
47 | 53 |
48 --- Stream events handlers | 54 --- Stream events handlers |
49 local stream_xmlns_attr = {xmlns='urn:ietf:params:xml:ns:xmpp-streams'}; | 55 local stream_xmlns_attr = {xmlns='urn:ietf:params:xml:ns:xmpp-streams'}; |
50 | 56 |