跳至主要内容

稽核日誌

稽核日誌記錄你的 API 所有操作歷史——每一次 Chat 請求、每一次記憶新增、每一次文件上傳,都留有可查詢的記錄。

適合用在: 計費對帳、使用量監控、安全稽核、問題排查。

記錄的內容

每條稽核日誌包含:

欄位說明
action操作類型(例如 gateway.chatmemory.write
created_at操作時間
model使用的 AI 模型(Gateway 請求)
credits_consumed消耗的 Credits(RAG / Memory)
balance_consumed_usd消耗的 USD 餘額(LLM Token)
metadata你在請求中帶的自訂標記
audit_id唯一識別碼,對應每次 API 呼叫

常見操作類型

操作說明
gateway.chatChat Completions 請求
gateway.embeddingEmbeddings 請求
gateway.rerankRerank 請求
rag.query直接查詢知識庫
memory.read讀取記憶
memory.write新增/修改/刪除記憶
memory.search語義搜尋記憶
memory.extractLLM 萃取記憶
document.read讀取文件
document.write管理文件

查詢稽核日誌

import { Vecstruct } from '@vecstruct/sdk';

const client = new Vecstruct({ apiKey: process.env.VECSTRUCT_API_KEY });

const logs = await client.audit.list({
start_time: '2026-05-01T00:00:00Z',
end_time: '2026-05-08T00:00:00Z',
page: 1,
page_size: 20,
});

console.log(`${logs.pagination.total} 條記錄`);
for (const log of logs.items) {
console.log(`${log.created_at} | ${log.action} | $${log.balance_consumed_usd?.toFixed(6) ?? '0'}`);
}

按操作類型篩選

const chatLogs = await client.audit.list({
action: 'gateway.chat',
start_time: '2026-05-01T00:00:00Z',
end_time: '2026-05-08T00:00:00Z',
});

查看單條記錄詳情

const detail = await client.audit.retrieve('audit-uuid');
console.log('使用模型:', detail.model);
console.log('Token 用量:', detail.usage);
console.log('自訂 Metadata:', detail.metadata);

匯出記錄

支援匯出為 CSV 或 JSON 格式,方便匯入 Excel 或其他分析工具:

const job = await client.audit.export({
format: 'csv',
start_time: '2026-05-01T00:00:00Z',
end_time: '2026-05-31T23:59:59Z',
});

console.log('匯出任務 ID:', job.export_id);

自訂 Metadata 追蹤

在 Chat 請求中加入自訂的 metadata,可以關聯你自己系統的 ID(用戶 ID、工單 ID 等),方便之後查詢對帳:

const reply = await client.chat.completions.create({
model: 'openai/gpt-4o',
messages: [{ role: 'user', content: '...' }],
vecstruct: {
rag: true,
metadata: {
user_id: 'user-12345', // 你系統的使用者 ID
ticket_id: 'ticket-67890', // 客服工單 ID
department: 'customer_service',
},
},
});

保留期限

稽核日誌保留期限依方案而定:

方案保留天數
Free7 天
Basic30 天
Pro90 天
Business365 天

注意事項

  • 查詢稽核日誌需要 audit.read 權限
  • 匯出稽核日誌需要 audit.export 權限(Pro+ 方案)
  • 稽核日誌不可修改或刪除,超過保留期限後自動清除
  • metadata 中的每個 key 只能是字母、數字、底線,值必須是字串、數字或布林值