炎龙智能炎龙智能
AIOPS智能运维平台
AIOPS智能运维平台
  • API文档

API文档

AIOPS平台提供完整的RESTful API,允许第三方系统集成和自定义开发。本API文档详细介绍了所有可用的API接口、参数、返回值和使用示例,帮助开发者快速集成AIOPS平台功能。

1. API概述

1.1 API版本

当前API版本:v1

API基础路径:/api/v1

1.2 认证方式

AIOPS平台API使用API Key和JWT Token两种认证方式:

1.2.1 API Key认证

适用于服务器间的集成调用:

  1. 在AIOPS平台中,进入"用户中心" > "API密钥管理"
  2. 创建新的API密钥,设置有效期和权限范围
  3. 保存生成的API密钥
  4. 在API请求中,通过请求头X-API-Key传递API密钥
curl -H "X-API-Key: your-api-key" https://aiops.example.com/api/v1/metrics

1.2.2 JWT Token认证

适用于用户界面或需要更细粒度权限控制的场景:

  1. 首先通过登录接口获取JWT Token
  2. 在后续API请求中,通过请求头Authorization传递JWT Token
# 1. 获取JWT Token
curl -X POST \
  https://aiops.example.com/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username": "admin", "password": "password123"}'

# 返回包含token的响应
# {"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "expires_at": "2023-06-01T12:00:00Z"}

# 2. 使用JWT Token访问API
curl -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." https://aiops.example.com/api/v1/metrics

1.3 请求格式

所有API请求使用JSON格式传递数据,请求头中需指定Content-Type: application/json。

1.4 响应格式

API响应统一使用JSON格式,包含以下字段:

{
  "success": true,
  "code": 200,
  "message": "操作成功",
  "data": {}
}
  • success:布尔值,表示请求是否成功
  • code:响应状态码
  • message:响应消息,成功或错误描述
  • data:实际的响应数据,根据API不同而变化

1.5 通用参数

1.5.1 分页参数

对于返回列表的API,支持以下分页参数:

参数名类型说明默认值
pageinteger页码,从1开始1
page_sizeinteger每页大小20
sortstring排序字段默认排序
orderstring排序方向,升序(asc)或降序(desc)desc

1.5.2 时间范围参数

对于查询历史数据的API,支持以下时间范围参数:

参数名类型说明示例
start_timestring开始时间,ISO 8601格式2023-05-01T00:00:00Z
end_timestring结束时间,ISO 8601格式2023-05-02T00:00:00Z
time_rangestring相对时间范围,优先级低于start_time和end_time1h, 1d, 7d

1.6 错误码

错误码描述HTTP状态码
200操作成功200
400请求参数错误400
401未授权访问401
403权限不足403
404资源不存在404
409资源冲突409
500服务器内部错误500
503服务不可用503
1001API密钥无效401
1002JWT Token过期401
1003JWT Token无效401
1004账号已锁定403
2001资源创建失败400
2002资源更新失败400
2003资源删除失败400
3001数据查询失败500
3002数据写入失败500
3003数据处理超时504
4001任务创建失败400
4002任务执行失败500
4003任务取消失败400
5001告警规则创建失败400
5002告警规则触发失败500
5003告警发送失败500

2. API分类

AIOPS平台API分为以下几个主要类别:

2.1 认证管理API

管理用户认证、权限和API密钥。

详细文档

2.2 监控指标API

查询和管理系统监控指标数据。

详细文档

2.3 日志管理API

查询和管理日志数据。

详细文档

2.4 告警管理API

创建、查询和管理告警规则和告警事件。

2.5 系统管理API

管理系统配置、用户、角色和权限。

2.6 报告管理API

创建、查询和导出各类报告。

2.7 自动化运维API

管理自动化任务、脚本和工作流。

2.8 AI分析API

访问AI异常检测、根因分析和预测功能。

2.9 集成API

与第三方系统集成的接口。

3. 快速开始

3.1 环境准备

  • 获取API访问凭证(API Key或JWT Token)
  • 确保您的网络可以访问AIOPS平台API服务器
  • 选择合适的HTTP客户端工具(如curl、Postman、Insomnia等)

3.2 简单示例

3.2.1 获取系统状态

curl -H "X-API-Key: your-api-key" \
  https://aiops.example.com/api/v1/system/status

响应示例:

{
  "success": true,
  "code": 200,
  "message": "操作成功",
  "data": {
    "version": "1.0.0",
    "status": "running",
    "uptime": "86400",
    "components": {
      "api": "healthy",
      "database": "healthy",
      "message_queue": "healthy",
      "cache": "healthy"
    }
  }
}

3.2.2 查询监控指标

curl -H "X-API-Key: your-api-key" \
  "https://aiops.example.com/api/v1/metrics?metric_name=cpu_usage&host=server1&time_range=1h"

响应示例:

{
  "success": true,
  "code": 200,
  "message": "操作成功",
  "data": {
    "metric_name": "cpu_usage",
    "host": "server1",
    "data_points": [
      {"timestamp": "2023-05-01T00:00:00Z", "value": 45.6},
      {"timestamp": "2023-05-01T00:01:00Z", "value": 47.2},
      {"timestamp": "2023-05-01T00:02:00Z", "value": 46.8},
      ...
    ],
    "unit": "%"
  }
}

4. 最佳实践

4.1 速率限制

AIOPS平台对API调用频率进行限制,避免滥用。默认限制如下:

  • 普通用户:60次/分钟
  • 管理员用户:300次/分钟
  • API Key认证:1000次/分钟(可配置)

超过限制的请求将返回429状态码(Too Many Requests)。

4.2 错误处理

  • 总是检查API响应中的success字段和code字段
  • 对于401错误,请检查认证信息是否正确
  • 对于429错误,请减少调用频率或实现指数退避重试机制
  • 对于500系列错误,记录详细日志并联系系统管理员

4.3 性能优化

  • 批量操作:对于大量数据操作,尽量使用批量API
  • 合理设置时间范围:避免查询过长时间范围的数据
  • 使用缓存:对频繁查询的结果进行本地缓存
  • 分页处理:对大量返回数据使用分页查询

4.4 安全建议

  • 保护API密钥和JWT Token,不要在代码中硬编码
  • 使用HTTPS进行API通信
  • 定期轮换API密钥
  • 最小权限原则:为API密钥分配最小必要的权限
  • 监控API调用:定期检查API调用日志,发现异常及时处理

5. 版本兼容性

5.1 API版本控制

AIOPS平台通过URL路径中的版本号进行API版本控制,确保向后兼容。

例如:/api/v1/metrics、/api/v2/metrics

5.2 废弃和更新策略

  • 当API接口计划废弃时,会在响应头中添加X-API-Deprecation-Notice
  • 废弃的API会至少保留6个月,之后可能会被移除
  • 重大更新会提前通过文档和通知渠道告知用户

6. 联系支持

如有API使用问题,请通过以下方式联系技术支持:

  • 工单系统:在AIOPS平台中提交工单
  • 邮件支持:support@aiops.example.com
  • 电话支持:400-123-4567

请在报告问题时提供以下信息:

  • API接口路径
  • 请求参数
  • 完整的错误响应
  • 问题复现步骤
  • 浏览器或客户端环境信息
Last Updated:: 11/28/25, 3:06 PM
Contributors: sunxiaokun