实时监控系统服务运行状态与可靠性

API接口说明

本系统提供以下RESTful API接口,用于服务状态的上报和查询。

认证方式

目前所有API接口均无需认证,可直接访问。后续版本可能会添加认证机制。

API端点列表

POST /api/checkin/ - 客户端上报接口

用于客户端上报服务状态信息。如果服务不存在,系统会自动创建。

请求体示例:

{
  "service_name": "Web服务",
  "host": "192.168.1.100",
  "port": 80,
  "check_type": "http",
  "status": "UP",
  "response_time": 120.5,
  "message": "连接成功"
}

响应示例:

{
  "code": 200,
  "message": "服务状态已更新",
  "service_id": 1
}

GET /api/services/ - 服务列表查询接口

获取所有服务的列表及其最新状态。

响应示例:

[
  {
    "id": 1,
    "name": "Web服务",
    "host": "192.168.1.100",
    "port": 80,
    "check_type": "http",
    "group": "Web服务组",
    "description": "公司主网站",
    "latest_status": "UP",
    "latest_check_time": "2025-06-15T10:30:00Z",
    "latest_response_time": 120.5
  }
]

GET /api/services/{id}/history/ - 服务历史记录查询接口

获取指定服务的历史检测记录。

响应示例:

{
  "count": 1,
  "total_pages": 1,
  "current_page": 1,
  "page_size": 20,
  "results": [
    {
      "id": 1,
      "service": 1,
      "status": "UP",
      "response_time": 120.5,
      "message": "连接成功",
      "check_time": "2025-06-15T10:30:00Z"
    }
  ]
}

GET /api/status-summary/ - 状态摘要查询接口

获取所有服务的状态摘要统计信息。

响应示例:

{
  "total_services": 10,
  "up_count": 8,
  "down_count": 1,
  "unknown_count": 1
}

状态码说明

  • UP: 服务正常运行
  • DOWN: 服务不可用
  • UNKNOWN: 服务状态未知

检测类型说明

  • http: HTTP检测
  • https: HTTPS检测
  • tcp: TCP端口检测
  • ping: PING检测