view mod_measure_active_users/README.md @ 5285:8e1f1eb00b58

mod_sasl2_fast: Fix harmless off-by-one error (invalidates existing tokens!) Problem: This was causing the key to become "<token>--cur" instead of the expected "<token>-cur". As the same key was used by the code to both set and get, it still worked. Rationale for change: Although it worked, it's unintended, inconsistent and messy. It increases the chances of future bugs due to the unexpected format. Side-effects of change: Existing '--cur' entries will not be checked after this change, and therefore existing FAST clients will fail to authenticate until they attempt password auth and obtain a new FAST token. Existing '--cur' entries in storage will not be cleaned up by this commit, but this is considered a minor issue, and okay for the relatively few FAST deployments.
author Matthew Wild <mwild1@gmail.com>
date Wed, 29 Mar 2023 16:12:15 +0100
parents 1132f2888cd2
children
line wrap: on
line source

---
labels:
- 'Stage-Alpha'
summary: 'Measure number of daily, weekly and monthly active users'
...

Introduction
============

This module calculates the number of daily, weekly and monthly active users -
often abbreviated as DAU, WAU and MAU.

These metrics are more accurate for determining how many people are actually
using a service. For example simply counting registered accounts will typically
include many dormant accounts that aren't really being used. Many servers also
track the number of connected users. This is a useful metric for many purposes,
but it is generally lower than the actual number of users - because some users
may only connect at certain times of day.

The module defines "activity" as any login/logout event during the time period,
and for this it depends on mod_lastlog2 being loaded (it reads the data stored
by mod_lastlog2). Each individual user is only counted once.

"Daily" means any event within the past 24 hours, "weekly" means within the
past 7 days, and "monthly" means within the past 30 days.

Details
=======

The user count is calculated shortly after startup, and then recalculated
hourly after that.

Metrics are exported using Prosody's built-in statistics API.

There is no configuration for this module.

Compatibility
=============

Requires Prosody 0.11 or later with mod_lastlog2 enabled.