# 监控服务 API 文档 **服务**: `hl-monitor-service` **接口总数**: 18 ## 目录 - **MySQL监控** (3 个接口) - **Redis监控** (1 个接口) - **RocketMQ监控** (3 个接口) - **企微审批日志** (2 个接口) - **操作日志** (2 个接口) - **数据清理** (1 个接口) - **服务监控** (1 个接口) - **消息通知日志** (2 个接口) - **登录日志** (1 个接口) - **错误日志** (2 个接口) --- ## MySQL监控 ### `GET` /admin/monitor/mysql **MySQL实时监控数据** 返回MySQL实时状态:连接数、QPS、缓冲池命中率、线程状态、慢查询计数等核心指标 **响应** `统一响应结果«Map«string,object»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `object` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ### `GET` /admin/monitor/mysql/slow-queries **慢SQL查询统计** 仅超级管理员可操作。查询慢SQL统计信息,返回执行时间最长的SQL语句及其执行次数、平均耗时等 **查询参数** | 参数 | 类型 | 必填 | 说明 | 示例 | | --- | --- | --- | --- | --- | | `limit` | `integer(int32)` | | 返回条数 | | | `type` | `string` | | 查询类型 | | **响应** `统一响应结果«List«Map«string,object»»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `Map«string,object»[]` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ### `GET` /admin/monitor/mysql/tables **表空间列表** 查询各数据库表的空间占用情况,包含数据大小、索引大小、行数等信息。可指定schema筛选,仅允许查询hl_前缀的数据库 **查询参数** | 参数 | 类型 | 必填 | 说明 | 示例 | | --- | --- | --- | --- | --- | | `schema` | `string` | | 数据库名 | | **响应** `统一响应结果«List«Map«string,object»»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `Map«string,object»[]` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ## Redis监控 ### `GET` /admin/monitor/redis **Redis实时监控数据** 返回Redis实时状态:内存使用量、连接数、Key数量、命中率、每秒命令数等核心指标 **响应** `统一响应结果«Map«string,object»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `object` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ## RocketMQ监控 ### `GET` /admin/monitor/rocketmq **RocketMQ概览** 返回RocketMQ集群状态:Broker状态、Topic数量、消息积压量、生产者/消费者连接数等核心指标 **响应** `统一响应结果«Map«string,object»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `object` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ### `GET` /admin/monitor/rocketmq/consumer-groups **消费者组统计** 返回各消费者组的消费进度、积压量和在线消费者实例信息 **响应** `统一响应结果«List«Map«string,object»»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `Map«string,object»[]` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ### `GET` /admin/monitor/rocketmq/topics **Topic统计** 返回各Topic的消息量、最新偏移量和消费进度等信息 **响应** `统一响应结果«List«Map«string,object»»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `Map«string,object»[]` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ## 企微审批日志 ### `GET` /admin/monitor/approval-logs **审批日志分页查询** 查询企微OA审批流程记录,支持按审批状态(1-审批中/2-已通过/3-已驳回/4-已撤销)、申请人、模板名称筛选 **关联字典**: - approval_sp_status:审批状态(列表筛选+显示) **查询参数** | 参数 | 类型 | 必填 | 说明 | 示例 | | --- | --- | --- | --- | --- | | `applyUserName` | `string` | | 申请人姓名 | | | `endTime` | `string` | | 结束时间 | | | `page` | `integer(int32)` | | 页码 | | | `pageSize` | `integer(int32)` | | 每页条数 | | | `spName` | `string` | | 审批模板名称 | | | `spStatus` | `integer(int32)` | | 审批状态 | | | `startTime` | `string` | | 开始时间 | | **响应** `统一响应结果«分页结果«审批日志»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `分页结果«审批日志»` | | 响应数据 | |   `page` | `int` | | 当前页码 | |   `pageSize` | `int` | | 每页条数 | |   `records` | `审批日志[]` | | 数据列表 | |     `applyData` | `string` | | 申请表单数据(JSON) | |     `applyTime` | `string` | | 申请时间 | |     `applyUserId` | `string` | | 申请人企微UserID | |     `applyUserName` | `string` | | 申请人姓名 | |     `approvalLogId` | `long` | | 审批日志ID | |     `approvalNodes` | `string` | | 审批节点详情(JSON) | |     `createdAt` | `string` | | 创建时间 | |     `notifyNodes` | `string` | | 抄送节点详情(JSON) | |     `spName` | `string` | | 审批模板名称 | |     `spStatus` | `int` | | 审批状态: 1-审批中, 2-已通过, 3-已驳回, 4-已撤销, 6-通过后撤销, 7-已删除 | |     `templateId` | `string` | | 审批模板ID | |     `thirdNo` | `string` | | 审批编号 | |     `updatedAt` | `string` | | 更新时间 | |   `total` | `int` | | 总记录数 | | `message` | `string` | | 响应消息 | --- ### `GET` /admin/monitor/approval-logs/{id} **审批日志详情** **关联字典**: - approval_sp_status:审批状态(显示) **路径参数** | 参数 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `id` | `integer` | | 日志ID | **响应** `统一响应结果«审批日志»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `审批日志` | | 响应数据 | |   `applyData` | `string` | | 申请表单数据(JSON) | |   `applyTime` | `string` | | 申请时间 | |   `applyUserId` | `string` | | 申请人企微UserID | |   `applyUserName` | `string` | | 申请人姓名 | |   `approvalLogId` | `long` | | 审批日志ID | |   `approvalNodes` | `string` | | 审批节点详情(JSON) | |   `createdAt` | `string` | | 创建时间 | |   `notifyNodes` | `string` | | 抄送节点详情(JSON) | |   `spName` | `string` | | 审批模板名称 | |   `spStatus` | `int` | | 审批状态: 1-审批中, 2-已通过, 3-已驳回, 4-已撤销, 6-通过后撤销, 7-已删除 | |   `templateId` | `string` | | 审批模板ID | |   `thirdNo` | `string` | | 审批编号 | |   `updatedAt` | `string` | | 更新时间 | | `message` | `string` | | 响应消息 | --- ## 操作日志 ### `GET` /admin/monitor/operation-logs **操作日志分页查询** 查询管理员的操作记录,支持按模块、管理员、状态、时间范围筛选。记录包含请求参数、响应结果和耗时信息 **关联字典**: - operation_log_status:操作状态(列表筛选+显示,0=成功/1=失败) **查询参数** | 参数 | 类型 | 必填 | 说明 | 示例 | | --- | --- | --- | --- | --- | | `adminId` | `integer(int64)` | | 管理员ID | | | `endTime` | `string` | | 结束时间 | | | `module` | `string` | | 模块名称 | | | `page` | `integer(int32)` | | 页码 | | | `pageSize` | `integer(int32)` | | 每页条数 | | | `startTime` | `string` | | 开始时间 | | | `status` | `integer(int32)` | | 状态 | | **响应** `统一响应结果«分页结果«操作日志»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `分页结果«操作日志»` | | 响应数据 | |   `page` | `int` | | 当前页码 | |   `pageSize` | `int` | | 每页条数 | |   `records` | `操作日志[]` | | 数据列表 | |     `adminId` | `long` | | 管理员ID | |     `adminName` | `string` | | 管理员名称 | |     `createdAt` | `string` | | 创建时间 | |     `description` | `string` | | 操作描述 | |     `duration` | `int` | | 耗时(毫秒) | |     `errorMsg` | `string` | | 错误信息 | |     `ipAddress` | `string` | | IP地址 | |     `module` | `string` | | 操作模块 | |     `operationLogId` | `long` | | 操作日志ID | |     `requestMethod` | `string` | | 请求方法 | |     `requestParams` | `string` | | 请求参数(JSON) | |     `requestUrl` | `string` | | 请求URL | |     `responseCode` | `int` | | 响应状态码 | |     `responseMsg` | `string` | | 响应消息 | |     `serviceName` | `string` | | 服务名称 | |     `status` | `int` | | 状态: 0-成功, 1-失败 | |   `total` | `int` | | 总记录数 | | `message` | `string` | | 响应消息 | --- ### `GET` /admin/monitor/operation-logs/{id} **操作日志详情** 返回单条操作日志的完整信息,包含操作模块、操作描述、请求参数、响应结果、操作耗时、操作人信息、IP地址等。 **路径参数** | 参数 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `id` | `integer` | | 日志ID | **响应** `统一响应结果«操作日志»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `操作日志` | | 响应数据 | |   `adminId` | `long` | | 管理员ID | |   `adminName` | `string` | | 管理员名称 | |   `createdAt` | `string` | | 创建时间 | |   `description` | `string` | | 操作描述 | |   `duration` | `int` | | 耗时(毫秒) | |   `errorMsg` | `string` | | 错误信息 | |   `ipAddress` | `string` | | IP地址 | |   `module` | `string` | | 操作模块 | |   `operationLogId` | `long` | | 操作日志ID | |   `requestMethod` | `string` | | 请求方法 | |   `requestParams` | `string` | | 请求参数(JSON) | |   `requestUrl` | `string` | | 请求URL | |   `responseCode` | `int` | | 响应状态码 | |   `responseMsg` | `string` | | 响应消息 | |   `serviceName` | `string` | | 服务名称 | |   `status` | `int` | | 状态: 0-成功, 1-失败 | | `message` | `string` | | 响应消息 | --- ## 数据清理 ### `POST` /admin/monitor/data-retention/cleanup **手动触发数据清理** 仅超级管理员可操作。按数据保留策略清理过期日志(操作日志/错误日志/通知日志等),返回各类型清理的记录数 **响应** `统一响应结果«Map«string,int»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `object` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ## 服务监控 ### `GET` /admin/monitor/services **微服务列表和健康状态** 从Nacos注册中心获取所有微服务的实例列表和健康状态,包含IP、端口、注册时间和健康检查结果 **响应** `统一响应结果«List«Map«string,object»»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `Map«string,object»[]` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ## 消息通知日志 ### `GET` /admin/monitor/notification-logs **消息通知日志分页查询** 查询各渠道(短信/站内信/企微/公众号)的通知发送记录,支持按通知类型、用户、发送状态筛选 **关联字典**: - notification_send_status:发送状态(列表筛选+显示,0=待发送/1=成功/2=失败) **查询参数** | 参数 | 类型 | 必填 | 说明 | 示例 | | --- | --- | --- | --- | --- | | `endTime` | `string` | | 结束时间 | | | `notificationType` | `string` | | 通知类型 | | | `page` | `integer(int32)` | | 页码 | | | `pageSize` | `integer(int32)` | | 每页条数 | | | `sendStatus` | `integer(int32)` | | 发送状态 | | | `startTime` | `string` | | 开始时间 | | | `userName` | `string` | | 用户名 | | **响应** `统一响应结果«分页结果«通知日志»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `分页结果«通知日志»` | | 响应数据 | |   `page` | `int` | | 当前页码 | |   `pageSize` | `int` | | 每页条数 | |   `records` | `通知日志[]` | | 数据列表 | |     `createdAt` | `string` | | 创建时间 | |     `externalUserId` | `string` | | 外部联系人ID | |     `externalUserName` | `string` | | 外部联系人姓名 | |     `failReason` | `string` | | 失败原因 | |     `messageContent` | `string` | | 消息内容 | |     `notificationLogId` | `long` | | 通知日志ID | |     `notificationType` | `string` | | 通知类型: ADD_EXTERNAL_CONTACT/DEL_FOLLOW_USER/DEL_EXTERNAL_CONTACT | |     `sendStatus` | `int` | | 发送状态: 0-成功, 1-失败, 2-已过滤 | |     `serviceName` | `string` | | 来源服务名称 | |     `userId` | `string` | | 员工企微UserID | |     `userName` | `string` | | 员工姓名 | |   `total` | `int` | | 总记录数 | | `message` | `string` | | 响应消息 | --- ### `GET` /admin/monitor/notification-logs/{id} **消息通知日志详情** 返回单条通知发送日志的完整信息,包含通知类型、接收用户、发送渠道、发送状态、失败原因(如有)、消息内容等。 **路径参数** | 参数 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `id` | `integer` | | 日志ID | **响应** `统一响应结果«通知日志»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `通知日志` | | 响应数据 | |   `createdAt` | `string` | | 创建时间 | |   `externalUserId` | `string` | | 外部联系人ID | |   `externalUserName` | `string` | | 外部联系人姓名 | |   `failReason` | `string` | | 失败原因 | |   `messageContent` | `string` | | 消息内容 | |   `notificationLogId` | `long` | | 通知日志ID | |   `notificationType` | `string` | | 通知类型: ADD_EXTERNAL_CONTACT/DEL_FOLLOW_USER/DEL_EXTERNAL_CONTACT | |   `sendStatus` | `int` | | 发送状态: 0-成功, 1-失败, 2-已过滤 | |   `serviceName` | `string` | | 来源服务名称 | |   `userId` | `string` | | 员工企微UserID | |   `userName` | `string` | | 员工姓名 | | `message` | `string` | | 响应消息 | --- ## 登录日志 ### `GET` /admin/monitor/login-logs **登录日志分页查询** 查询管理员登录记录(代理到user-service),包含登录IP、设备信息、登录方式和登录结果 **关联字典**: - login_status:登录状态(列表筛选+显示) **查询参数** | 参数 | 类型 | 必填 | 说明 | 示例 | | --- | --- | --- | --- | --- | | `adminId` | `integer(int64)` | | 管理员ID | | | `endTime` | `string` | | 结束时间 | | | `page` | `integer(int32)` | | 页码 | | | `pageSize` | `integer(int32)` | | 每页条数 | | | `startTime` | `string` | | 开始时间 | | | `status` | `string` | | 状态 | | **响应** `统一响应结果«object»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `object` | | 响应数据 | | `message` | `string` | | 响应消息 | --- ## 错误日志 ### `GET` /admin/monitor/error-logs **错误日志分页查询** 查询各微服务的异常记录,支持按服务名称、异常类名、时间范围筛选。堆栈信息仅保留com.hulalv包内的调用帧 **查询参数** | 参数 | 类型 | 必填 | 说明 | 示例 | | --- | --- | --- | --- | --- | | `endTime` | `string` | | 结束时间 | | | `exceptionClass` | `string` | | 异常类名 | | | `page` | `integer(int32)` | | 页码 | | | `pageSize` | `integer(int32)` | | 每页条数 | | | `serviceName` | `string` | | 服务名称 | | | `startTime` | `string` | | 开始时间 | | **响应** `统一响应结果«分页结果«错误日志»»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `分页结果«错误日志»` | | 响应数据 | |   `page` | `int` | | 当前页码 | |   `pageSize` | `int` | | 每页条数 | |   `records` | `错误日志[]` | | 数据列表 | |     `adminId` | `long` | | 管理员ID | |     `createdAt` | `string` | | 创建时间 | |     `errorLogId` | `long` | | 错误日志ID | |     `exceptionClass` | `string` | | 异常类名 | |     `exceptionMessage` | `string` | | 异常消息 | |     `ipAddress` | `string` | | IP地址 | |     `requestMethod` | `string` | | 请求方法 | |     `requestParams` | `string` | | 请求参数(JSON) | |     `requestUrl` | `string` | | 请求URL | |     `serviceName` | `string` | | 服务名称 | |     `stackTrace` | `string` | | 堆栈跟踪 | |   `total` | `int` | | 总记录数 | | `message` | `string` | | 响应消息 | --- ### `GET` /admin/monitor/error-logs/{id} **错误日志详情** 返回单条错误日志的完整信息,包含异常类名、错误消息、过滤后的堆栈信息(仅com.hulalv包内调用帧)、请求URL、请求参数等。 **路径参数** | 参数 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `id` | `integer` | | 日志ID | **响应** `统一响应结果«错误日志»` | 字段 | 类型 | 必填 | 说明 | | --- | --- | --- | --- | | `code` | `int` | | 状态码 | | `data` | `错误日志` | | 响应数据 | |   `adminId` | `long` | | 管理员ID | |   `createdAt` | `string` | | 创建时间 | |   `errorLogId` | `long` | | 错误日志ID | |   `exceptionClass` | `string` | | 异常类名 | |   `exceptionMessage` | `string` | | 异常消息 | |   `ipAddress` | `string` | | IP地址 | |   `requestMethod` | `string` | | 请求方法 | |   `requestParams` | `string` | | 请求参数(JSON) | |   `requestUrl` | `string` | | 请求URL | |   `serviceName` | `string` | | 服务名称 | |   `stackTrace` | `string` | | 堆栈跟踪 | | `message` | `string` | | 响应消息 | ---