Mercurial > prosody-modules
view mod_measure_client_identities/mod_measure_client_identities.lua @ 5466:398d936e77fb
mod_http_oauth2: Add support for the OpenID 'login_hint' parameter
This allows the client to suggest to the authorization screen which user
is trying to login, so they don't have to fill that in twice if they
already did so at the client.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 17 May 2023 18:49:22 +0200 |
parents | fdbf7c2aed7b |
children |
line wrap: on
line source
module:set_global(); local measure = require"core.statsmanager".measure; local counters = { unknown = measure("amount", "client_identities.unknown"), }; module:hook("stats-update", function () local buckets = { unknown = 0, }; for _, session in pairs(prosody.full_sessions) do if session.caps_cache ~= nil then local node_string = session.caps_cache.attr.node; local node = node_string:match("([^#]+)"); if buckets[node] == nil then buckets[node] = 0; end buckets[node] = buckets[node] + 1; else buckets.unknown = buckets.unknown + 1; end end local visited = {}; for bucket, count in pairs(buckets) do if counters[bucket] == nil then counters[bucket] = measure("amount", "client_identities."..bucket); end counters[bucket](count); visited[bucket] = true; end for bucket, counter in pairs(counters) do if not visited[bucket] then counter(0); end end end)