Viewing and accessing audit logs
The Dagster+ audit log enables Dagster+ Pro organizations to track and attribute changes to their Dagster deployment.
For large organizations, tracking down when and by whom changes were made can be crucial for maintaining security and compliance. The audit log is also valuable for tracking operational history, including sensor and schedule updates.
This guide walks through how to access the audit log and details the interactions which are tracked in the audit log.
To view or access the Dagster+ audit log, you will need:
- A Dagster+ Pro organization.
- An Organization Admin role in your Dagster+ organization.
Viewing audit logs in the UI
To view the audit logs in the UI:
- As a Dagster+ Pro organization admin, click your user icon at the top right corner of the page.
- Click Organization settings.
- Click the Audit log tab.
Each entry in the audit log indicates when an action was taken, the user who performed the action, the type of action taken, and the deployment that the action affected. To view additional details for an action, click the Show button.
The Filter button near the top left of the page can be used to filter the list of logs. You can filter to a combination of user, event type, affected deployment, or time frame.
Programmatically accessing audit logs
You can programmatically access audit logs with the Dagster+ GraphQL API.
To access a visual GraphiQL interface, visit https://<org>.dagster.cloud/<deployment>/graphql
in a browser. You can also query the API directly using the Python client:
query AuditLogQuery(
$limit: Int,
$cursor: String,
$filters: AuditLogFilters
) {
auditLog {
auditLogEntries(limit: $limit, cursor: $cursor, filters: $filters) {
id
eventType
authorUserEmail
authorAgentTokenId
eventMetadata
timestamp
deploymentName
}
}
}
Audit log entry types
Event type | Description | Additional details |
---|---|---|
Log in | A user logs in to the Dagster+ organization | |
Update sensor | A user toggles a sensor on or off | The sensor name, code location, and cursor |
Update schedule | A user toggles a schedule on or off | The schedule name, code location, and cursor |
Update alert policy | A user modifies an alert policy | The new configuration for the alert policy |
Create deployment | A user creates a new deployment | Whether the deployment is a branch deployment |
Delete deployment | A user removes an existing deployment | Whether the deployment is a branch deployment |
Create user token | A user creates a new user token | |
Revoke user token | A user revokes an existing user token | |
Create code location | A user creates a new code location | The code location name, image, and git metadata |
Update code location | A user updates an existing code location | The code location name, image, and git metadata |
Delete code location | A user removes a code location | The code location name |
Change user permissions | A user alters permissions for another user | The permission grant and targeted deployment |
Create agent token | A user creates a new agent token | |
Revoke agent token | A user revokes an existing agent token | |
Update agent token permissions | A user alters permissions for an agent token | The permission grant and targeted deployment |
Create secret | A user creates a new environment variable | The created variable name |
Update secret | A user modifies an existing environment variable | The previous and current variable names and whether the value was changed |
Delete secret | A user removes an environment variable | The deleted variable name |
Update subscription | A user modifies the selected Dagster+ subscription for the organization | The previous and current plan types |