nexus-agents - v2.80.0
    Preparing search index...

    Class AuditLogger

    Audit exports - Structured audit logging (Issue #193) Split from index.ts for file size compliance (Issue #285)

    Implements

    Index

    Constructors

    • Parameters

      • config: {
            logDir: string;
            filePrefix: string;
            maxFileSizeBytes: number;
            maxFiles: number;
            enableHashChain: boolean;
            enableCompression: boolean;
            flushIntervalMs: number;
            minSeverity: "info" | "warning" | "critical";
            categories?: (
                | "authorization"
                | "system"
                | "configuration"
                | "security"
                | "authentication"
                | "tool_invocation"
                | "data_access"
                | "data_modification"
            )[];
        }
      • Optionalstorage: IAuditStorage
      • Optionallogger: ILogger

      Returns AuditLogger

    Methods

    • Log an audit event

      Parameters

      • input: {
            category:
                | "authorization"
                | "system"
                | "configuration"
                | "security"
                | "authentication"
                | "tool_invocation"
                | "data_access"
                | "data_modification";
            severity: "info"
            | "warning"
            | "critical";
            outcome: "error" | "success" | "failure" | "denied";
            action: string;
            description?: string;
            actor: {
                type: "system" | "user" | "external" | "agent";
                id: string;
                name?: string;
                ip?: string;
                userAgent?: string;
            };
            resource?: { type: string; id: string; name?: string; path?: string };
            requestId?: string;
            traceId?: string;
            sessionId?: string;
            toolName?: string;
            durationMs?: number;
            metadata?: Record<string, unknown>;
            policyName?: string;
            policyDecision?: string;
            violationType?: string;
        }

      Returns void