Audit Log
This feature is available in the Enterprise Edition of The Formance Platform. It is available as a preview on Formance Cloud sandboxes.
The Formance Platform ships with an Audit Log feature that allows you to track all activity within the platform, including activity events from API usage, organisation users, or machine-generated events. This feature is available for Enterprise Edition users.
Initialisation
Contact our support team in order to enable the Audit Log on your deployment. Once set up, logging will start at the current date for all activity on your organization, stacks, and enabled modules.
Concepts
The audit log system operates at three levels:
- Organisation: Providing a detailed overview of all activity tied to the organisation itself, e.g. whenever a user is invited, has their permissions updated, or a new resource is created.
- Resources: Providing a detailed event history of the lifecycle of the Formance Platform deployments created within the organisation.
- Modules: Providing a detailed event history of the modules activity within a stack.
Each event record consists of the following fields:
Identifier | Origin | Date | Action | Data |
---|---|---|---|---|
A unique identifier for the event | The user or system that triggered the event | The timestamp when the event occurred in ISO 8601 format | Code for the event triggered | Additional information about the event |
Usage
Organisation logs
Organisation logs provide a detailed overview of all activity tied to the organisation itself. You can access these logs by using fctl with the following command:
fctl cloud org history <organization-id>
The following events are available:
Scope | Event |
---|---|
organizations | organizations.created |
organizations | organizations.deleted |
organizations | organizations.updated |
organizations | organizations.user.deleted |
organizations | organizations.user.updated |
invitations | invitations.created |
invitations | invitations.accepted |
invitations | invitations.accepted-from-link |
invitations | invitations.rejected |
regions | regions.created |
regions | regions.deleted |
users | users.created |
users | users.join-domain |
stacks | stacks.created |
stacks | stacks.deleted |
stacks | stacks.restored |
stacks | stacks.updated |
stacks | stacks.enabled |
stacks | stacks.disabled |
stacks | stacks.upgraded |
Resources logs
Resources logs operate at the stack level, and provides a detailed event history of the lifecycle of the stack itself.
You can get an overview of these logs by using fctl with the following command:
fctl stack history <stack-id>
This event list is availble through the Formance Platform API (contact our support team for API access).
The following events are availble for the stack resource logs:
Scope | Event |
---|---|
stacks | stacks.disposal |
stacks | stacks.disposal-reset |
stacks | stacks.warned |
stacks | stacks.pruned |
stacks | stacks.status.updated |
stacks | stacks.reachness.updated |
stacks | stacks.module.enabled |
stacks | stacks.module.disabled |
stacks | stacks.module.status.updated |
Modules logs
To access the modules activity logs, navigate to the "manage environments" section or directly access it from here of the console interface. From here, select navigate to the stack that you want to view the Audit Log for.
In the stack information panel, under the Audit logs section, navigate through the "Show logs" button to head to the Audit Log page.
Events available for the modules logs are structured as follows:
Field | Description | Path |
---|---|---|
Identity | The originating user or machine token | data.identity |
HTTP Method | The method used (e.g., GET, POST) | data.request.method |
Status Code | The response status code (e.g., 200) | data.response.status_code |
Host | The host of the request | data.request.host |
Endpoint | The API endpoint accessed | data.request.path |
Request Headers | Headers included in the request | data.request.header.* |
Response Headers | Headers included in the response | data.response.headers.* |
Response Body | Content of the response body | data.response.body |