Trilhas de auditoria
O GCM mantém três trilhas de auditoria separadas para que você possa responder "quem mudou isso?" sem vasculhar backups do banco de dados. Cada uma vive em um lugar diferente porque cada uma está fazendo uma pergunta diferente.

Os três registros
| Registro | Vive em | Responde |
|---|---|---|
| Registro de auditoria da organização | /activity-log e Dados e Registros → Registro de auditoria | Quem na sua org criou, editou, ou excluiu um membro, doação, grupo, ministério, escola, presença, ou unidade org? |
| Registro de atividade do membro | Uma aba no perfil de cada membro | O que aconteceu com essa pessoa — entrou em um grupo, frequentou uma reunião, recebeu uma mensagem de workflow, marcado como perdido, recuperado? |
| Histórico de importações | Dados e Registros → Histórico de Importações | A importação CSV que rodei na semana passada terminou, e quantas linhas falharam? |
Há também um quarto registro — o registro de auditoria da plataforma — mas é reservado para administradores da plataforma Genius Church Manager (nós) e rastreia personificação cross-tenant, mudanças de plano, e movimentos de papel de superadmin. Você não vai vê-lo de dentro da sua org.
Quem pode ver dados de auditoria
| Permissão | Pode ver |
|---|---|
users.manage | A página /activity-log completa em todos os tipos de entidade e atores |
config.manage | A aba Registro de Auditoria dentro de Dados e Registros (mesmos dados, visão abreviada) |
| Visualizador do perfil de qualquer membro | A linha do tempo de atividade desse membro |
| Nenhum dos acima | Nada — entradas de auditoria não vazam por outras telas |
O registro de atividade é protegido por permissão users.manage de propósito: a maioria da equipe não precisa ver as edições de cada colega, e expor esses dados por padrão convida conversas desconfortáveis de RH.
O que é registrado automaticamente
Um trigger genérico audit_log_writes() do Postgres observa oito tabelas de entidade e escreve uma linha em org_audit_log por mudança material:
membersattendancesdonationsgroupsministriesorg_unitsschoolsschool_enrolments
Mudança material significa: um INSERT, um UPDATE que toca pelo menos uma coluna não-sistema, ou uma exclusão suave (deleted_at definido). Atualizações em massa de importações, ações de workflow, e a API todas fluem pelo mesmo trigger — não há como escrever nessas tabelas e contornar o registro.
O trigger captura:
- Ator — o UUID e e-mail do usuário autenticado (ou
systempara escritas de cron/webhook) - Ação —
created,updated,deleted,restored, mais verbos específicos de domínio comomerge_members - Entidade — tipo + ID, para que a linha do registro de atividade possa linkar direto para o membro ou grupo afetado
- Metadata — para atualizações, a lista de colunas mudadas (útil para "o que você mudou?" mas não os valores antes/depois)
Eventos específicos de membro (entrou em um grupo, marcado como perdido, recebeu uma mensagem de workflow) são escritos em uma segunda tabela, member_activity_log, por código de aplicação ao invés de um trigger — essa é a linha do tempo que você vê no perfil do membro.
O que não é registrado
Duas omissões deliberadas:
- Acesso de leitura. Olhar para um membro não escreve uma linha. Se você precisa de rastreamento de visualização para conformidade, fale conosco sobre o add-on enterprise.
- Valores antes/depois das colunas. Armazená-los multiplicaria o tamanho do registro por 10-50x. O array "changed" diz quais colunas se moveram, não para o quê elas se moveram e de onde. Se você precisa do estado de membro em ponto no tempo, use backups de banco de dados em vez disso.
Retenção
Linhas de auditoria são mantidas indefinidamente em planos pagos e podadas para os últimos 90 dias no Starter. Você pode exportar o registro antes que ele expire se precisar de registros de longo prazo — e você deveria, para qualquer ano em que enviou demonstrativos fiscais.
Onde ir em seguida
- Registro de auditoria da organização — o feed completo de "quem fez o quê" no nível org
- Registro de atividade do membro — a linha do tempo por membro
- Histórico de importações — status de jobs de importação em massa e falhas de linha
- Exportar registros — exports CSV para conformidade e backups
TIP
Se você está investigando uma mudança específica (um valor de doação que parece errado, um membro faltando), comece no registro de auditoria da organização e filtre pela entidade. É mais rápido que rolar a linha do tempo do membro.
