Audit / Log
Journal d'audit complet : qui a changé quoi, et quand. Recherche plein texte, filtres par acteur, type d'action et période, détail JSON de chaque événement et export CSV — tout est testable dans le Simulateur.
À propos
Le module Audit / Log est le journal de bord de l'application : chaque création, modification, suppression ou connexion y est tracée avec son acteur, son horodatage, l'entité concernée et le détail du changement (ex. « statut : brouillon → validé »). C'est l'outil qu'un administrateur ou un auditeur ouvre pour répondre à la question « qui a changé quoi, et quand ? » — recherche plein texte, filtres combinables (acteur, type d'action, période), détail complet de chaque événement et export CSV.
Composants utilisés
bpm.metricRow, bpm.input et bpm.selectbox (filtres combinables), bpm.chip (résumé des filtres actifs), bpm.table (acteur rendu par bpm.avatar, action par bpm.badge), bpm.pagination, bpm.drawer + bpm.jsonViewer (détail d'un événement) et bpm.toast (confirmation d'export).
import bpm
bpm.metricRow([
bpm.metric("Événements (10 j)", 32),
bpm.metric("Acteurs distincts", 5),
bpm.metric("Suppressions (10 j)", 4),
])
bpm.input("Recherche", placeholder="Acteur, entité, détail…", on_change=filtrer)
bpm.selectbox("Acteur", options=acteurs, on_change=filtrer)
bpm.table(
columns=[("timestamp", "Horodatage"), ("acteur", "Acteur"),
("action", "Action"), ("entite", "Entité"), ("detail", "Détail")],
data=evenements_filtres,
on_row_click=ouvrir_detail, # bpm.drawer + bpm.jsonViewer
)
bpm.button("Exporter en CSV", on_click=exporter_csv)Paramétrage
Le simulateur fonctionne entièrement en local : 32 événements seedés sur 10 jours, filtres, pagination, détail et export CSV sans aucune API. En production, brancher la lecture sur votre table audit_events (append-only) et l'écriture sur un middleware qui journalise chaque mutation. Voir la documentation pour le modèle d'événement, la rétention et les garanties d'intégrité.