AI Logs AI调用日志 模块 API 文档

基础信息

  • Base URL: /api/admin
  • 认证方式: JWT Bearer Token

数据库表

  • api_usage_logs — AI 调用日志表
  • users — 用户表

接口列表

1. 获取 AI 日志统计

GET /api/admin/api-logs/stats

响应:

{
  "calls": 1234,
  "tokens": 567890
}

2. 获取 AI 日志每日统计

GET /api/admin/api-logs/daily-stats

说明: 获取最近30天每日调用量和 token 消耗

响应:

[{
  "date": "2024-01-01",
  "calls": 45,
  "prompt_tokens": 1234,
  "completion_tokens": 567,
  "total_tokens": 1801
}]

3. 获取 AI 日志列表(分页)

GET /api/admin/api-logs

Query 参数:

参数类型必填说明
pagenumber选填页码(默认1)
limitnumber选填每页条数(默认30)
user_idstring选填按用户 ID 精确过滤
datestring选填精确日期(YYYY-MM-DD),与 start_date/end_date 互斥
start_datestring选填创建时间下限(YYYY-MM-DD)
end_datestring选填创建时间上限(YYYY-MM-DD),含当天 23:59:59
min_tokensnumber选填最少 Token 数(筛选 total_tokens ≥ 此值)
max_tokensnumber选填最多 Token 数(筛选 total_tokens ≤ 此值)
searchstring选填模糊搜索:模型 / 用户昵称 / 提供商
sort_fieldstring选填排序字段:created_at / total_tokens / duration_ms(默认 created_at)
sort_orderstring选填排序方向:ASC / DESC(默认 DESC)

响应:

{
  "logs": [{
    "id": "string",
    "user_id": "string",
    "user_nickname": "string",
    "provider": "string",
    "model": "string",
    "prompt_tokens": 100,
    "completion_tokens": 50,
    "total_tokens": 150,
    "duration_ms": 1234,
    "error_message": "string | null",
    "created_at": "ISO8601"
  }],
  "totalCalls": 100,
  "totalPages": 5,
  "currentPage": 1,
  "stats": {
    "total_calls": 1234,
    "total_tokens": 567890
  },
  "dailyTrend": [{ "date": "YYYY-MM-DD", "tokens": 12345 }]
}
GET/admin/api-logs/public
**说明**:公开接口,供未登录用户查看平台 AI 调用统计(仅系统级日志)。响应包含每日使用量、模型统计、7天趋势。 **响应**:
{
  logs: [...],
  totalPages: number,
  stats: {
    total_calls: number,
    daily_used: number,
    daily_limit: number,
    user_daily_limit: number
  },
  modelStats: [{model, calls}],
  dailyTrend: [{date, tokens}]
}