La question à laquelle il faut répondre est "Comment savez-vous quand un utilisateur s'est déconnecté?". Dans les cas simples, l'utilisateur clique sur un lien de déconnexion. Vous pouvez ensuite saisir un horodatage de cet événement lors de la destruction de la session utilisateur. Une simple comparaison de l'horodatage traçable avec l'horodatage de la destruction de la session utilisateur vous donne le temps total.
Cependant, que se passe-t-il si l'utilisateur ferme simplement l'onglet/la fenêtre/le navigateur avec votre application en cours d'exécution? Cet utilisateur est-il automatiquement déconnecté? Y a-t-il un ensemble de cookies qui permet à l'utilisateur de se connecter sans se connecter? Si oui, la réouverture d'une page dans l'application signifie-t-elle que l'utilisateur est toujours connecté, 3 jours plus tard?
Une fois que vous aurez trouvé des réponses à ces questions, je pense qu'une approche se rendra visible pour vous.
Espérons que cela aide.