Kuvasz 监控服务 API 接口详解
项目概述
Kuvasz(发音为"koovas")是一款开源的在线状态和SSL证书监控服务,提供全面的API接口用于管理监控任务、获取监控数据以及配置系统设置。本文将详细介绍Kuvasz的API功能和使用方法。
API 基础信息
Kuvasz API遵循OpenAPI 3.0.1规范,所有接口都需要API密钥进行认证。API主要分为三大类操作:
- 管理操作(Management operations)
- 监控操作(Monitor operations)
- 设置操作(Settings operations)
监控操作 API
获取监控列表
端点:GET /api/v1/monitors
此接口返回所有监控任务的详细信息,支持以下查询参数进行筛选:
enabled:布尔值,筛选启用/禁用的监控uptimeStatus:数组,按在线状态筛选sslStatus:数组,按SSL状态筛选sslCheckEnabled:布尔值,筛选启用/禁用SSL检查的监控
响应:返回MonitorDetailsDto数组,包含每个监控任务的完整信息。
创建监控任务
端点:POST /api/v1/monitors
创建新的监控任务需要提供以下必填字段:
name:监控名称(最小长度1)url:监控URL(需符合URL格式)uptimeCheckInterval:检查间隔(秒,最小5)
可选字段包括:
enabled:是否启用(默认true)sslCheckEnabled:是否启用SSL检查(默认false)requestMethod:HTTP方法(默认GET)- 以及其他监控配置选项
注意:如果系统配置为从YAML文件加载监控任务,此接口将返回405错误。
导出监控配置
端点:GET /api/v1/monitors/export/yaml
以YAML格式导出所有监控任务的配置,便于备份或迁移。
获取监控统计
端点:GET /api/v1/monitors/stats
获取所有监控任务的累计统计数据,支持period参数指定统计周期(默认为7天)。
单个监控操作
端点:/api/v1/monitors/{monitorId}
支持以下操作:
GET:获取指定监控的详细信息DELETE:删除指定监控PATCH:更新监控配置(仅更新请求中包含的字段)
监控事件查询
Kuvasz提供以下事件查询接口:
GET /api/v1/monitors/{monitorId}/ssl-events:获取SSL相关事件GET /api/v1/monitors/{monitorId}/uptime-events:获取在线状态事件GET /api/v1/monitors/{monitorId}/stats:获取单个监控的统计数据
系统管理 API
健康检查
端点:GET /api/v1/health
返回服务健康状态:
- 200:服务正常运行
- 503:服务不可用
系统设置
端点:GET /api/v1/settings
获取当前系统设置信息。
数据模型说明
MonitorDetailsDto
监控任务详细信息,包含:
- 基本信息(ID、名称、URL等)
- 状态信息(在线状态、SSL状态)
- 时间信息(创建时间、最后检查时间等)
- 配置信息(检查间隔、HTTP方法等)
- 集成信息(通知集成配置)
MonitorCreateDto/MonitorUpdateDto
用于创建/更新监控任务的数据传输对象,包含可配置的所有监控参数。
状态枚举
UptimeStatus:在线状态(UP/DOWN/UNKNOWN)SslStatus:SSL状态(VALID/INVALID/EXPIRING/EXPIRED)HttpMethod:HTTP方法(GET/HEAD)
最佳实践
-
监控创建:创建监控时建议先设置较长的检查间隔(如60秒),确认无误后再调整为实际需要的频率。
-
错误处理:所有API都可能返回400/404/405等错误,客户端应妥善处理这些响应。
-
批量操作:获取监控列表时可以使用筛选参数减少数据传输量。
-
监控更新:使用PATCH方法更新监控时,只需发送需要修改的字段,未包含的字段将保持不变。
总结
Kuvasz提供了一套完整的API接口,使开发者能够轻松集成监控功能到自己的系统中。通过合理使用这些API,可以实现监控任务的自动化管理、实时状态查询以及历史数据分析等功能。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C043
MiniMax-M2.1从多语言软件开发自动化到复杂多步骤办公流程执行,MiniMax-M2.1 助力开发者构建下一代自主应用——全程保持完全透明、可控且易于获取。Python00
kylin-wayland-compositorkylin-wayland-compositor或kylin-wlcom(以下简称kywc)是一个基于wlroots编写的wayland合成器。 目前积极开发中,并作为默认显示服务器随openKylin系统发布。 该项目使用开源协议GPL-1.0-or-later,项目中来源于其他开源项目的文件或代码片段遵守原开源协议要求。C01
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
agent-studioopenJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力TSX0121
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00