Skip to content

Pistes d'audit

GCM tient trois pistes d'audit distinctes pour que vous puissiez répondre à "qui a modifié ceci ?" sans fouiller les sauvegardes de la base de données. Chacune se trouve à un endroit différent parce que chacune pose une question différente.

Page Données et Journaux avec onglets audit et importations

Les trois journaux

JournalEmplacementRépond à
Journal d'audit de l'organisation/activity-log et Données et Journaux → Journal d'auditQui dans votre organisation a créé, modifié ou supprimé un membre, un don, un groupe, un ministère, une école, une présence ou une unité d'organisation ?
Journal d'activité du membreUn onglet sur le profil de chaque membreQu'est-il arrivé à cette personne — a rejoint un groupe, a assisté à une réunion, a reçu un message de workflow, a été marquée comme perdue, a été retrouvée ?
Historique des importationsDonnées et Journaux → Historique des importationsMon importation CSV de la semaine dernière s'est-elle terminée, et combien de lignes ont échoué ?

Il existe aussi un quatrième journal — le journal d'audit de la plateforme — mais il est réservé aux administrateurs de la plateforme Genius Church Manager (nous) et suit l'usurpation d'identité entre tenants, les changements de plan et les mouvements de rôles de superadmin. Vous ne le verrez pas depuis votre organisation.

Qui peut consulter les données d'audit

PermissionPeut voir
users.manageLa page complète /activity-log pour tous les types d'entités et tous les acteurs
config.manageL'onglet Journal d'audit dans Données et Journaux (mêmes données, vue abrégée)
Toute personne pouvant voir le profil d'un membreLa chronologie d'activité de ce membre
Aucune des précédentesRien — les entrées d'audit ne fuient pas par d'autres écrans

Le journal d'activité est restreint à la permission users.manage à dessein : la plupart du personnel n'a pas besoin de voir chaque modification de ses collègues, et exposer ces données par défaut invite à des conversations RH inconfortables.

Ce qui est journalisé automatiquement

Un déclencheur Postgres générique audit_log_writes() surveille huit tables d'entités et écrit une ligne dans org_audit_log par changement matériel :

  • members
  • attendances
  • donations
  • groups
  • ministries
  • org_units
  • schools
  • school_enrolments

Changement matériel signifie : un INSERT, un UPDATE qui touche au moins une colonne non système, ou une suppression logique (deleted_at défini). Les mises à jour en masse depuis les importations, les actions de workflow et l'API passent toutes par le même déclencheur — il n'existe aucun moyen d'écrire dans ces tables et de contourner le journal.

Le déclencheur capture :

  • Acteur — l'UUID et l'e-mail de l'utilisateur authentifié (ou system pour les écritures cron/webhook)
  • Actioncreated, updated, deleted, restored, plus des verbes spécifiques au domaine comme merge_members
  • Entité — type + ID, pour que la ligne du journal d'activité pointe directement vers le membre ou groupe concerné
  • Métadonnées — pour les mises à jour, la liste des colonnes modifiées (utile pour "qu'avez-vous changé ?" mais pas les valeurs avant/après)

Les événements spécifiques au membre (a rejoint un groupe, marqué comme perdu, a reçu un message de workflow) sont écrits dans une seconde table, member_activity_log, par le code applicatif plutôt que par un déclencheur — c'est la chronologie que vous voyez sur le profil du membre.

Ce qui n'est pas journalisé

Deux omissions délibérées :

  1. Accès en lecture. Consulter un membre n'écrit pas de ligne. Si vous avez besoin du suivi des consultations pour la conformité, parlez-nous du module entreprise.
  2. Valeurs de colonne avant/après. Les stocker multiplierait la taille du journal par 10 à 50. Le tableau "changed" vous dit quelles colonnes ont changé, pas de quoi à quoi. Si vous avez besoin de l'état d'un membre à un instant donné, utilisez plutôt les sauvegardes de base de données.

Rétention

Les lignes d'audit sont conservées indéfiniment sur les plans payants et purgées aux 90 derniers jours sur Starter. Vous pouvez exporter le journal avant qu'il ne soit purgé si vous avez besoin d'enregistrements à long terme — et vous devriez le faire pour toute année où vous avez envoyé des reçus fiscaux.

Où aller ensuite

TIP

Si vous enquêtez sur un changement spécifique (un montant de don qui semble erroné, un membre manquant), commencez par le journal d'audit de l'organisation et filtrez par l'entité. C'est plus rapide que de faire défiler la chronologie du membre.