Audit Trail : Audit d'activité IA
Chaque appel d'outil Datadog MCP est enregistré dans Audit Trail sous la catégorie Bits AI SRE. Cette skill expose ce que l'assistant IA a fait dans votre org — quels utilisateurs l'ont invoqué, quels outils ont été appelés et quelles ressources ont été affectées.
Prérequis
pup auth login # OAuth2 (recommandé)
# ou définissez DD_API_KEY + DD_APP_KEY avec le scope audit_logs_read
Requêtes
Toute activité d'outil MCP dans une fenêtre temporelle
pup audit-logs search --query "@evt.name:\"MCP Server\"" --from 7d --limit 500 -o json \
| jq '[.data[] | {
timestamp: .attributes.timestamp,
user: .attributes.attributes.usr.email,
actor_type: .attributes.attributes.evt.actor.type,
action: .attributes.attributes.action,
resource_type: .attributes.attributes.asset.type,
resource_id: .attributes.attributes.asset.id,
ip: .attributes.attributes.network.client.ip,
country: .attributes.attributes.network.client.geoip.country.name
}]'
Activité par utilisateur (qui utilise le plus l'assistant IA ?)
pup audit-logs search --query "@evt.name:\"MCP Server\"" --from 30d --limit 1000 -o json \
| jq '[.data[] | .attributes.attributes.usr.email]
| group_by(.)
| map({user: .[0], tool_calls: length})
| sort_by(-.tool_calls)'
Ressources modifiées par les appels d'outil IA
pup audit-logs search \
--query "@evt.name:\"MCP Server\" @action:(created OR modified OR deleted)" \
--from 7d --limit 500 -o json \
| jq '[.data[] | {
timestamp: .attributes.timestamp,
user: .attributes.attributes.usr.email,
action: .attributes.attributes.action,
resource_type: .attributes.attributes.asset.type,
resource_id: .attributes.attributes.asset.id
}]'
Activité IA pour un utilisateur spécifique
pup audit-logs search \
--query "@evt.name:\"MCP Server\" @usr.email:user@example.com" \
--from 30d --limit 500 -o json \
| jq '[.data[] | {
timestamp: .attributes.timestamp,
action: .attributes.attributes.action,
resource_type: .attributes.attributes.asset.type,
resource_id: .attributes.attributes.asset.id
}]'
Rapport de synthèse hebdomadaire
pup audit-logs search --query "@evt.name:\"MCP Server\"" --from 7d --limit 1000 -o json \
| jq '{
total_tool_calls: (.data | length),
unique_users: ([.data[] | .attributes.attributes.usr.email] | unique | length),
top_users: (
[.data[] | .attributes.attributes.usr.email]
| group_by(.)
| map({user: .[0], calls: length})
| sort_by(-.calls)
| .[:5]
),
actions_breakdown: (
[.data[] | .attributes.attributes.action]
| group_by(.)
| map({action: .[0], count: length})
| sort_by(-.count)
),
resource_types: (
[.data[] | .attributes.attributes.asset.type]
| group_by(.)
| map({type: .[0], count: length})
| sort_by(-.count)
)
}'
Signaux d'anomalie
| Signal | Préoccupation de gouvernance |
|---|---|
L'IA effectuant des actions deleted sur des monitors ou dashboards |
Vérifiez si les opérations IA destructrices sont attendues |
L'IA agissant en tant que SUPPORT_USER |
Datadog support utilisant l'IA au nom de l'org |
| Première invocation d'outils IA par un utilisateur | Nouvel utilisateur accédant à l'assistant IA |
| Volume élevé d'appels d'outils dans une courte fenêtre | Utilisation automatisée/par batch de l'IA |
| L'IA accédant à des ressources en dehors de la portée normale de l'utilisateur | Session IA potentiellement surprivilégiée |
Format de sortie
AI Activity Audit — [Org] — [Plage de dates]
Total d'appels d'outil MCP : [N]
Utilisateurs uniques : [N]
Utilisateurs principaux :
[user@example.com] : [N] appels
Ventilation des actions :
accessed : [N]
modified : [N]
created : [N]
deleted : [N]
Types de ressources affectées :
dashboard : [N]
monitor : [N]
Anomalies :
[Lister les événements signalés avec timestamp, utilisateur, action, ressource]
Contexte
Cette skill est la plus utile pour :
- Audits de sécurité : Vérifier que les actions de l'IA étaient autorisées et dans la portée attendue
- Audits de conformité : Démontrer que l'activité IA est enregistrée et attribuable à des utilisateurs spécifiques
- Rapports de gouvernance : Comprendre l'adoption et la surface de risque de l'assistant IA dans l'org
Aucun autre fournisseur d'observabilité n'audite les actions de son assistant IA à ce niveau de détail.