Auditing Logs
Foundation emits audit logs for every incoming event and also derives detailed logs for user API interactions and entity-level actions. These logs help with troubleshooting, governance, and analytics.
Approach
Foundation treats Audit Logs as data products. These data products have key characteristics:
Data Product Type:
Systemas they are automatically generated by FoundationOrganization:
RootSensitivity: These data products contain personal data and confidential information, but cannot be classified before the Classification and Sensitivity levels are defined, as part of the Data Governance set up.
Access: Only Admin roles can access them (as they are the only roles with access to the Root Organization)
Consumption: in order to check the logs, users can query them following the same processes as set in Querying Data inside Foundation
Storage: These data products are not stored in the Object Storage or using Iceberg (as the rest). They are stored in a database.
What gets logged
Raw event audit log
Data Product Name:
_foundation_events_audit_logTable for queries:
processor.public."foundation_events_audit_log"One row per event (upserted by
span_id)Contains full serialized event, message metadata, timestamps
User API interaction log
Data Product Name:
_user_api_interaction_logTable for queries:
processor.public."user_api_interaction_log"One row per API event
Contains HTTP method/path, query/body, response status, user/session context (IP, agent, org, roles)
Entity events log
Data Product Name:
_entity_events_logsTable for queries:
processor.public."entity_events_logs"One row per entity action event
Contains actor
user_id,event_timestamp,message_type(action),entity_id, andentity_details
Update cadence
Raw audit: upserted on every event by span_id
Detailed logs: appended on every event; created_at is set server-side
End-to-end latency is the event processing time (near real-time)
Common use cases
Troubleshooting and replay: join detailed logs to raw event for exact payloads
Security and compliance: who did what to which entity and when
API analytics: path/method usage, response codes, error rates, session/role insights
Change timelines: per entity_id across time
How to query
Recent API calls by a user (last 7 days)
Entity changes over a period
Join detailed logs with the raw event by span_id
API error-rate per path (last 24h)
API usage by role (if roles provided)
Find slow or failing endpoints by session
Last updated