Skip to main content

Audit logs

Audit logs

This page provides an overview of audit logs on Anyscale.

Enable audit logs

Anyscale doesn't enable audit logs by default. Audit logs aren't available on Anyscale-hosted clouds. Contact Anyscale support to enable audit logging.

When you enable audit logging, you configure the following:

ConfigurationOptions
Export location
  • S3 bucket
  • Google Cloud Storage bucket
  • Azure blob storage or ADLS container
Upload frequency
  • Hourly
  • Every 15 minutes
File format
  • JSONL (newline-separated JSON)
  • Parquet
note

Anyscale supports audit log delivery to Azure storage for organizations enrolled in the Private Preview for Anyscale's first-party integration with Azure. See Anyscale on AKS.

Log contents

Anyscale uploads one file per entity on the configured frequency schedule. Anyscale outputs files to the following path within the object storage container:

/<org_id>/audit_logs/<entity>/<timestamp>.log.<file_format>

For example, /org_123/audit_logs/job/1690300746.log.jsonl.

Files consist of user action records. Records have the following schema:

{
"timestamp": string,
"user_id": string,
"source_ip": string,
"action": Action (enum), // see "Supported User Actions"
"entity": Entity (enum), // see "Supported User Actions"
"metadata": nullable object,
"user": {
"name": string,
"email": string
}
}

The following example record shows a user login:

{
"timestamp": "2023-08-01 01:04:05.073682+00:00",
"user_id": "usr_123",
"source_ip": "1.2.3.4",
"action": "LOGIN",
"entity": "ACCESS",
"metadata": null,
"user": {
"name": "Jane",
"email": "jane@company.com"
}
}

Supported user actions

The following table lists the logged user actions:

EntityActionMetadata
USERINVITEinvitee_email: string
USERJOIN
USERREMOVEremovee_id: string
USERMODIFYmodifee_id: string, old_role: string, new_role: string
PAYMENTADD
ACCESSLOGIN
ACCESSLOGOUT
SUPPORT_ACCESSLOGIN
SUPPORT_ACCESSREQUESTduration: float (seconds)
BUDGETCREATEid: string
BUDGETDELETEid: string
BUDGETMODIFYid: string, is_enabled: boolean, budget_amount: string, evaluation_period: string
RESOURCE_QUOTACREATEid: string
RESOURCE_QUOTADELETEid: string
RESOURCE_QUOTAMODIFYid: string, is_enabled: boolean, updated_resource_quota: dict
CLUSTERCREATEid: string
CLUSTERSTARTid: string
CLUSTERTERMINATEid: string
CLUSTERARCHIVEid: string
CLOUDCREATEname: string
CLOUDDELETEname: string
CLUSTER_ENVCREATEname: string
CLUSTER_ENVDELETEname: string
COMPUTE_CONFIGCREATEname: string
JOBCREATEname: string
JOBTERMINATEname: string
JOBARCHIVEname: string
SERVICECREATEname: string
SERVICETERMINATEname: string
WORKSPACECREATEname: string
WORKSPACESTARTname: string
WORKSPACETERMINATEname: string
WORKSPACEDELETEname: string