附录:完整内容和源代码下载请参照

https://doc.janettr.com/

在这里插入图片描述

一、前序章节回忆

我们在前面章节拆解了 Collector 的启动过程,并定位了控制器 TimelineWebServices
本节聚焦 Collector 对外暴露的 REST 服务,搭建「接口全景图」。

二、接口请求梳理

2.1 接口总览表

分类方法路径功能主要参数
基础GET/ws/v1/timeline服务探活-
写入POST/ws/v1/timeline/metrics写入普通指标TimelineMetrics JSON
写入POST/ws/v1/timeline/metrics/aggregated写入聚合指标AggregationResult JSON
写入POST/ws/v1/timeline/containermetrics写入容器指标List<ContainerMetric>
查询GET/ws/v1/timeline/metrics核心查询接口metricNames, appId, hostname, startTime, endTime, precision, topN
查询GET/ws/v1/timeline/metrics/{instanceId}按实例查询instanceId PathParam
查询GET/ws/v1/timeline/metrics/summary获取服务摘要-
元数据GET/ws/v1/timeline/metrics/metadata查询指标元数据appId, metricName, includeAll
元数据GET/ws/v1/timeline/metrics/{instanceId}/metadata实例元数据(实现未完整)instanceId PathParam
拓扑GET/ws/v1/timeline/metrics/hosts主机→应用映射-
拓扑GET/ws/v1/timeline/metrics/instance主机→应用→实例映射appId, instanceId
拓扑GET/ws/v1/timeline/metrics/{instanceId}/instance等价实例查询instanceId PathParam
诊断GET/ws/v1/timeline/metrics/uuid获取指标 UUIDmetricName, appId, hostname, instanceId
存活GET/ws/v1/timeline/metrics/livenodes当前活跃节点-

2.2 基础类接口

:::danger 枯燥提醒
不想看可以看后面的导入操作,我们把openapi.json文件放到了 githubgitee 中供大家自行体验
:::

2.2.1 /ws/v1/timeline
  • 方法:GET
  • 功能:探活,确认 Collector 是否在线。
  • 参数:无

2.3 写入类接口

2.3.1 /ws/v1/timeline/metrics
  • 方法:POST
  • 功能:写入普通时序指标。
  • 参数TimelineMetrics JSON
2.3.2 /ws/v1/timeline/metrics/aggregated
  • 方法:POST
  • 功能:写入主机级聚合指标。
  • 参数AggregationResult JSON
2.3.3 /ws/v1/timeline/containermetrics
  • 方法:POST
  • 功能:写入容器级指标。
  • 参数List<ContainerMetric> JSON

2.4 查询类接口

2.4.1 /ws/v1/timeline/metrics
  • 方法:GET
  • 功能:核心查询接口。
  • 主要参数metricNames, appId, hostname, startTime, endTime, precision, topN
2.4.2 /ws/v1/timeline/metrics/{instanceId}
  • 方法:GET
  • 功能:与 2.4.1 类似,支持 PathParam instanceId
2.4.3 /ws/v1/timeline/metrics/summary
  • 方法:GET
  • 功能:返回 Collector 服务摘要。
  • 参数:无

2.5 元数据接口

2.5.1 /ws/v1/timeline/metrics/metadata
  • 方法:GET
  • 功能:查询指标元数据。
  • 主要参数appId, metricName, includeAll
2.5.2 /ws/v1/timeline/metrics/{instanceId}/metadata
  • 方法:GET
  • 功能:实例元数据查询(当前实现未完整使用 PathParam)。

2.6 拓扑类接口

2.6.1 /ws/v1/timeline/metrics/hosts
  • 方法:GET
  • 功能:返回主机与应用映射。
2.6.2 /ws/v1/timeline/metrics/instance
  • 方法:GET
  • 功能:返回主机→应用→实例映射。
  • 参数appId, instanceId
2.6.3 /ws/v1/timeline/metrics/{instanceId}/instance
  • 方法:GET
  • 功能:与 2.6.2 类似,支持 PathParam instanceId

2.7 诊断与存活接口

2.7.1 /ws/v1/timeline/metrics/uuid
  • 方法:GET
  • 功能:返回指标的 UUID。
  • 主要参数metricName, appId, hostname, instanceId
2.7.2 /ws/v1/timeline/metrics/livenodes
  • 方法:GET
  • 功能:返回当前活跃的 Collector 节点列表。

三、Apifox 导入与调试

我们将接口定义整理为 OpenAPI 规范文件,可以直接导入 Apifox:

👉 openapi.json 文件地址

image-20250904152941457

导入效果如下:

image-20250904152820170

所有接口自动分组,支持调试和测试:

db9848c2e0af05caa183245e048824dd

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/96794.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/96794.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/96794.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

论文阅读 2025-9-13 论文阅读随心记

随便记录一下最近阅读的几篇论文 1. Does DINOv3 Set a New Medical Vision Standard? 第一章 动机 (Motivation) 自然图像领域的成功范式&#xff1a;大型语言模型&#xff08;LLMs&#xff09;和视觉基础模型&#xff08;如 DINO 系列&#xff09;证明&#xff0c;通过自监督…

Avalonia 基础导航实现:从页面切换到响应式交互全指南

在 Avalonia 开发中&#xff0c;导航功能是构建多页面应用的核心需求。Avalonia 无需依赖第三方库&#xff0c;仅通过内置控件与 MVVM 模式即可实现灵活的页面切换。本文将以 “基础导航” 为核心&#xff0c;从 ViewModel 与 View 设计、导航逻辑实现&#xff0c;到样式美化与…

UniApp 分包异步化配置及组件引用解决方案

具体参考微信小程序文档基础能力 / 分包加载 / 分包异步化 一、分包页面组件配置 在 UniApp 的pages.json中&#xff0c;为分包页面&#xff08;或主包如 tabbar 页面&#xff09;配置异步组件时&#xff0c;需同时设置usingComponents和componentPlaceholder&#xff1a; {&…

系统核心解析:深入操作系统内部机制——进程管理与控制指南(一)【进程/PCB】

♥♥♥~~~~~~欢迎光临知星小度博客空间~~~~~~♥♥♥ ♥♥♥零星地变得优秀~也能拼凑出星河~♥♥♥ ♥♥♥我们一起努力成为更好的自己~♥♥♥ ♥♥♥如果这一篇博客对你有帮助~别忘了点赞分享哦~♥♥♥ ♥♥♥如果有什么问题可以评论区留言或者私信我哦~♥♥♥ ✨✨✨✨✨✨个人…

微论-神经网络特征空间的动态聚集,对抗灾难性遗忘的新范式

这是一个非常有趣且富有想象力的理论构想。受陀螺仪启发&#xff0c;我将陀螺仪的“定轴性”与“进动性”原理引入神经网络的特征空间&#xff0c;探讨一种对抗灾难性遗忘的新范式。---### **基于陀螺仪原理的神经网络记忆巩固理论探讨**#### **引言&#xff1a;记忆的流失与稳…

鸿蒙审核问题——折叠屏展开态切换时,输入框内容丢失

文章目录背景解决历程1、无意中发现了眉目2、确定问题原因3、解决办法4、官方文档5、总结背景 奇葩的事情年年有啊&#xff0c;今年特别多。这不今天又遇到了一个奇葩的问题。鸿蒙NextAPP上架AppGallery市场&#xff0c;审核拒了&#xff0c;说是折叠屏手机展开态切换时&#…

前后端分离架构中,Node.js的底层实现原理与线程池饥饿问题解析

在VueJava/.NET的前后端分离架构中&#xff0c;Node.js的底层实现原理与线程池饥饿问题解析 一、架构概述&#xff1a;Node.js的定位与角色 在现代Web开发中&#xff0c;Vue.js作为前端框架与Java/.NET后端结合的架构非常流行。在这种架构中&#xff0c;Node.js通常扮演着两个关…

Django ModelForm:快速构建数据库表单

Django 中的 forms.ModelForm —— 它是 Django 表单系统和 ORM 的一个“桥梁”&#xff0c;能帮助你快速基于 数据库模型&#xff08;Model&#xff09; 自动生成表单&#xff0c;极大减少重复代码。1. 什么是 ModelForm 普通 Form (forms.Form)&#xff1a;完全手写字段&…

补 json的作用

&#xff1a;“我开车直接拧钥匙就能走&#xff0c;为什么还要看仪表盘和用中控台&#xff1f;”直接点击“运行”&#xff0c;就像是汽车的自动驾驶模式。它能帮你开起来&#xff0c;但你不知道它走的是哪条路&#xff0c;油门踩多深。使用 launch.json 配置&#xff0c;就像是…

apache详细讲解(apache介绍+apache配置实验+apache实现https网站)

1.apache HTTP server介绍httpd项目地址:https://httpd.apache.org/ 在Apache2中有三种工作模式&#xff0c;使用者可以根据不同的业务场景来进行选择(1)prefork模式prefork模式是一种老而稳的模式:一个主进程管理者多个子进程&#xff0c;每个子进程单独处理用户请求&#xf…

jajajajajajajava

线程1 线程概念进程:进程指正在内存中运行的程序。进程具有一定的独立性。线程:线程是进程中的一个执行单元。负责当前进程中程序的执行。一个进程中至少有一个线程。如果一个进程中有多个线程&#xff0c;称之为多线程程序。java中的线程采用的是抢占式调度&#xff0c;如果线…

虚拟机CentOS里JDK的安装与环境配置

---本文以JDK17为例---步骤 1&#xff1a;进入/tmp临时目录# 进入临时目录 cd /tmp步骤 2&#xff1a;下载 Java 17 安装包wget https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.9%2B9/OpenJDK17U-jdk_x64_linux_hotspot_17.0.9_9.tar.gz步骤 3&am…

mybatis-plus多租户兼容多字段租户标识

默认租户插件处理器的缺陷 在springboot工程中引入mybatis-plus的租户插件TenantLineInnerInterceptor&#xff0c;能简化我们的数据隔离操作&#xff0c;例如各类含租户用户登录权限的rest接口中&#xff0c;不需要再根据登录用户-set租户条件-触发查询&#xff0c;租户插件能…

HBase高级特性(布隆过滤器和协处理器)、列族设计、rowkey设计以及热点问题处理

在阐述HBase高级特性和热点问题处理前&#xff0c;首先回顾一下HBase的特点&#xff1a;分布式、列存储、支持实时读写、存储的数据类型都是字节数组byte[]&#xff0c;主要用来处理结构化和半结构化数据&#xff0c;底层数据存储基于hdfs。 同时&#xff0c;HBase和传统数据库…

redis sentinel 与 clauster 的区别

Redis Sentinel(哨兵)和Redis Cluster(集群)是Redis提供的两种不同的高可用和扩展性解决方案,它们的设计目标和适用场景有显著区别: 1. 核心功能与目标 Redis Sentinel 主要解决主从架构的高可用问题,实现自动故障转移 监控主从节点状态,当主节点故障时自动将从节点提…

MySQL数据库中快速导入大数据sql

1.PwerShell命令页面导入全表数据库 -P3310 指定数据库端口号Get-Content "本地sql文件目录" | .\mysql -u root -p -P 33102.PwerShell命令页面导入单表到数据库 -P3310 指定数据库端口号Get-Content "本地sql文件目录" | .\mysql -u root -p -P 3310 数…

消息类型proto的编写和生成

消息类型proto的编写和生成 代码如下&#xff1a; syntax"proto3"; package xypmq;enum ExchangeType {UNKNOWNTYPE0;DIRECT1;FANOUT2;TOPIC3; };enum DeliveryMode {UNKNOWNMODE0;UNDURABLE1;DURABLE2; };message BasicProperties {string id1;DeliveryMode deliver…

Vuetify:构建优雅Vue应用的Material Design组件库

Vuetify是一个基于Material Design设计规范的Vue.js UI组件库&#xff0c;它提供了80多个精心设计的组件&#xff0c;帮助开发者快速构建美观且功能丰富的企业级应用。核心特性1. 完整的Material Design实现// 所有组件遵循Material Design规范 <v-btn color"primary&q…

SpringBoot 注解深剖:@RequestParam 与 @RequestBody 的终极对决,90% 的开发者都踩过这些坑!

在 SpringBoot 开发中&#xff0c;处理 HTTP 请求参数是我们每天都要面对的工作。而RequestParam和RequestBody这两个注解&#xff0c;就像是我们手中的两把利剑&#xff0c;既能高效解决问题&#xff0c;用不好也可能 "误伤" 自己。作为一名资深 Java 开发者&#x…

【Docker】P2 Docker环境构建准备:MacOS 与 Linux

目录操作系统与 Docker 的兼容性分析Docker 技术本质MacOS 环境下的 Docker 构建1. 安装前准备2. Docker Desktop安装3. 镜像加速配置高级操作&#xff1a;文件共享配置Linux 环境下的 Docker 构建卸载历史版本配置软件源Docker 核心组件安装系统服务配置镜像加速器配置应用配置…