1import{j as e}from"./index-RFCojDSI.js";import{D as r}from"./DocsLayout-D2jNBRZ9.js";import"./search-imufzlZQ.js";import"./x-CyYy31R_.js";import"./settings-DosZhkjm.js";import"./chevron-right-aegibXC7.js";function a(){return e.jsx(r,{children:e.jsxs("div",{className:"prose prose-invert max-w-none",children:[e.jsx("h1",{children:"Audit Logs"}),e.jsx("p",{className:"lead",children:"Complete audit trail of all security events and API activity."}),e.jsx("h2",{children:"Overview"}),e.jsx("p",{children:"Vaikora maintains immutable audit logs for every request, policy change, and security event. Logs are retained for 90 days on Pro plans."}),e.jsx("h2",{children:"Log Types"}),e.jsxs("table",{className:"w-full",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Type"}),e.jsx("th",{children:"Description"}),e.jsx("th",{children:"Retention"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"request"})}),e.jsx("td",{children:"All API requests (metadata only)"}),e.jsx("td",{children:"90 days"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"security_event"})}),e.jsx("td",{children:"Threats detected, blocked, or warned"}),e.jsx("td",{children:"1 year"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"policy_change"})}),e.jsx("td",{children:"Policy created, updated, or deleted"}),e.jsx("td",{children:"1 year"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"key_event"})}),e.jsx("td",{children:"Key created, rotated, or revoked"}),e.jsx("td",{children:"1 year"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"auth_event"})}),e.jsx("td",{children:"Login, logout, and auth failures"}),e.jsx("td",{children:"1 year"})]})]})]}),e.jsx("h2",{children:"Querying Logs"}),e.jsx("pre",{children:e.jsx("code",{className:"language-bash",children:`# Stream live logs 2vaikora logs --stream 3 4# Filter by type 5vaikora logs --type security_event --period 24h 6 7# Search logs 8vaikora logs --search "prompt_injection" --period 7d`})}),e.jsx("h3",{children:"API"}),e.jsx("pre",{children:e.jsx("code",{className:"language-bash",children:`curl -H "Authorization: Bearer $VAIKORA_API_KEY" \\ 9 "https://api.vaikora.com/v1/logs?type=security_event&period=24h&limit=50"`})}),e.jsx("pre",{children:e.jsx("code",{className:"language-json",children:`{ 10 "logs": [ 11 { 12 "id": "log_abc123", 13 "timestamp": "2026-02-13T14:30:00Z", 14 "type": "security_event", 15 "event": "threat_blocked", 16 "details": { 17 "threat_type": "prompt_injection", 18 "severity": "critical", 19 "confidence": 0.97, 20 "api_key": "vk_...x4f", 21 "model": "gpt-4", 22 "source_ip": "192.168.1.x" 23 } 24 } 25 ], 26 "total": 342, 27 "has_more": true 28}`})}),e.jsx("h2",{children:"SIEM Integration"}),e.jsx("p",{children:"Export audit logs to your SIEM (Security Information and Event Management) system:"}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Splunk:"})," Native integration via HTTP Event Collector"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Datadog:"})," Log forwarding via Datadog API"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"AWS CloudWatch:"})," Direct log streaming"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Custom webhook:"})," Forward to any HTTPS endpoint"]})]}),e.jsx("pre",{children:e.jsx("code",{className:"language-yaml",children:`integrations: 29 siem: 30 type: splunk 31 endpoint: "https://splunk.company.com:8088" 32 token: "splunk-hec-token" 33 index: "vaikora-security" 34 events: 35 - security_event 36 - policy_change`})}),e.jsx("h2",{children:"Compliance Reports"}),e.jsx("p",{children:"Generate compliance reports from audit logs:"}),e.jsx("pre",{children:e.jsx("code",{className:"language-bash",children:`vaikora reports generate --type soc2 --period 30d 37vaikora reports generate --type gdpr --period 30d`})})]})})}export{a as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.