Skip to main content
The ChatCLI AIOps platform maintains an immutable audit trail of all actions โ€” from anomaly detection to remediation execution. Combined with granular RBAC and automated compliance reports, the system meets governance requirements even in regulated environments.
Each AuditEvent is an immutable CRD (no status). Once created, it cannot be modified or deleted via controllers. This ensures record integrity for investigations and external audits.

Why Audit Trail for AIOps

When a platform makes autonomous decisions on production infrastructure, traceability is no longer optional:

Accountability

Who approved the remediation? Which AI recommended the action? When did the circuit breaker open? Every decision has a trail.

Post-Incident Investigation

Reconstruct the complete timeline of an incident โ€” from the first signal to resolution โ€” with precise timestamps.

Regulatory Compliance

SOC2, ISO 27001, PCI-DSS: demonstrate controls over automated actions with immutable records and documented RBAC.

Continuous Improvement

MTTD, MTTR, success rate, and SLA metrics automatically calculated from audit events.

AuditEvent CRD

The AuditEvent is an immutable CRD โ€” it has only spec, no status. Once created, its content is permanent.

Complete Specification

Event Types (EventType)

The platform defines 20+ event types covering the entire AIOps lifecycle. The following events are automatically recorded by the operator:
  • issue_created โ€” when a new Issue is detected and transitions to Analyzing
  • issue_resolved โ€” when a remediation successfully resolves the Issue
  • issue_escalated โ€” when all remediation attempts fail
  • remediation_started โ€” when a RemediationPlan begins execution
  • remediation_completed โ€” when health verification confirms successful remediation
  • remediation_failed โ€” when a remediation fails

AuditActor

The actor field identifies who or what performed the action:

AuditResource

The resource field identifies the affected Kubernetes resource:

Name Format

Each AuditEvent follows the name format:
Examples:
  • audit-1710856200-a7f3b2
  • audit-1710856245-c9d4e1
  • audit-1710856300-f2b8a6

Immutability Annotation

Every AuditEvent is created with the annotation platform.chatcli.io/immutable: "true". An admission webhook can be configured to reject updates/deletes on resources with this annotation.

Audit Recorder

The AuditRecorder is the central component that generates audit events. It offers 12 convenience functions for the most common scenarios.

Convenience Functions

Automatic Generation by Controllers

Controllers automatically generate AuditEvents at key points in the pipeline:

Generated Event Example

Compliance Reporter

The ComplianceReporter generates automated reports from AuditEvents, calculating essential operational metrics.

GenerateReport

Report Metrics

Incident metrics measuring detection and resolution speed.

Audit Summary

The report includes a summary of audit events generated during the period:

RBAC Manager

The RBAC Manager implements granular access control with 4 predefined roles, mapped to Kubernetes ClusterRoles.

Role Definitions

Viewer โ€” Read-only access to all AIOps resources.

EnsureRoles

The RBAC Manager ensures that ClusterRoles exist in the cluster:

GrantRole and RevokeRole

Audit REST API

The platform exposes REST endpoints for querying and exporting audit events.

GET /api/v1/audit

Query events with filters. Query parameters: Request example:
Response example:

GET /api/v1/audit/export

Exports events in JSON format for SIEM integration. Returns a .json file with all events in the specified period.
Export format (NDJSON):

SIEM Integration

The platform supports event export to SIEM (Security Information and Event Management) systems such as Splunk, Elastic, and Datadog.

Splunk

1

Configure HEC (HTTP Event Collector)

Create an HEC token in Splunk to receive events from the AIOps platform.
2

Create export CronJob

3

Create index and dashboards

Configure a dedicated chatcli_audit index in Splunk and create dashboards to visualize events by type, severity, and actor.

Elasticsearch

kubectl Commands

Event Retention

AuditEvents are immutable but not eternal. Configure a retention policy to avoid excessive CR accumulation in etcd.

Next Steps

Decision Engine

See how every engine decision generates AuditEvents for complete traceability.

Multi-Cluster Federation

Cross-cluster AuditEvents with unified CorrelationID.

Chaos Engineering

Chaos experiments generate audit events for game day compliance.

AIOps Platform

Return to the AIOps platform overview.