NCC Mocha v0.2.0 发布, 新增对 Metrics 的支持
项目简介
Mocha 是一个基于 .NET 开发的 APM 系统,同时提供可伸缩的可观测性数据分析和存储平台。
项目地址:https://github.com/dotnetcore/mocha
注意:使用 git clone --recursive
克隆本仓库以及子模块。
项目进度
目前项目处于早期阶段,已经完成了对 Trace 和 Metrics 的基础支持,可以通过 OTel SDK 上报数据到 Mocha Distributor,然后通过 Grafana 展示。目前仅支持通过 docker-compose
进行简单体验。
v0.2.0 发布内容
- 支持 OTel Metrics 数据上报
- 支持通过 Grafana 展示 Metrics 数据
快速体验
在项目根目录下的docker目录中,执行以下命令启动项目:
docker-compose up -d
启动成功后,可以看到以下容器:
- distributor: 提供用于接收 OTLP 数据的 gRPC API
- query: 提供用于接收查询协议的 HTTP API
- mysql: 用于存储数据
- grafana: 用于展示数据
数据的发送
将 SDK 的 OTLP exporter 配置为 http://localhost:4317
即可将数据发送到 distributor。
数据的查询
Trace
配置 Jaeger 数据源
我们实现了支持 Jaeger 查询协议的 API,因此可以直接在 Grafana 中配置 Jaeger 数据源。
访问 http://localhost:3000/ 即可看到grafana的登录页面。用户名和密码都是admin。
登录后,点击左侧的菜单,选择 Data Sources,然后点击 Add data source。
选择 Jaeger。
配置 Jaeger 数据源的 URL 为 http://query:5775/jaeger
。
点击 Save & Test,如果显示如下信息,则说明配置成功。
如果还没往 distributor 发送过数据,会显示如下警告信息。
Trace 数据的查询
点击左侧的菜单,选择 Explore,然后选择 Jaeger 数据源,即可看到 Trace 数据。
Metrics
配置 Prometheus 数据源
我们实现了支持 PromQL 查询协议的 API,因此可以直接在 Grafana 中配置 Prometheus 数据源。
访问 http://localhost:3000/ 即可看到grafana的登录页面。用户名和密码都是admin。
登录后,点击左侧的菜单,选择 Data Sources,然后点击 Add data source。
选择 Prometheus。
配置 Prometheus 数据源的 URL 为 http://query:5775/prometheus
。
配置 HTTP Method 为 POST。
点击 Save & Test,如果显示如下信息,则说明配置成功。
Metrics 数据的查询
点击左侧的菜单,选择 Explore,然后选择 Prometheus 数据源,即可看到 Metrics 数据。
点击左侧的菜单,选择 Dashboards,即可创建一个 Dashboard。
选择我们刚刚创建的 Prometheus 数据源。
接下来就可以根据需要添加 Panel,展示 Metrics 数据了。
目前的限制
目前 Mocha 支持的 Prometheus 的查询语法有限,更完整的支持需要等待后续版本。
目前支持的 function 主要有:
abs, absent, histogram_quantile, increase, rate, avg_over_time, min_over_time, max_over_time, sum_over_time, count_over_time, stdvar_over_time, stddev_over_time
目前支持的 aggregation 主要有:
sum, min, max, avg, count, stdvar, stddev, count, count_values, topk, bottomk, quantile
NCC Mocha v0.2.0 发布, 新增对 Metrics 的支持的更多相关文章
- LAL v0.32.0发布,更好的支持纯视频流
Go语言流媒体开源项目 LAL 今天发布了v0.32.0版本.距离上个版本刚好一个月时间,LAL 依然保持着高效迭代的状态. LAL 项目地址:https://github.com/q19120177 ...
- terraform v0.12.0 发布了
v0.12.0 相比以前的有好多新的特性,包括语法,以及函数增强,昨天还在折腾的一个json解码的问题,直接使用 v0.12.0 就可以解决了,同时也包含了for 操作处理同时官方文档对于v0.12. ...
- Restful.Data v2.0发布,谢谢你们的支持和鼓励
v1.0发布后,承蒙各位博友们的热心关注,也给我不少意见和建议,在此我真诚的感谢 @冰麟轻武 等朋友,你们的支持和鼓励,是这个开源项目最大的推动力. v2.0在除了细枝末节外,在功能上主要做了一下更新 ...
- Plink v0.1.0 发布——基于Flink的流处理平台
Plink是一个基于Flink的流处理平台,旨在基于 [Apache Flink]封装构建上层平台. 提供常见的作业管理功能.如作业的创建,删除,编辑,更新,保存,启动,停止,重启,管理,多作业模板配 ...
- Event Store 2.0发布,带来了安全支持和测试版Projections库
Event Store 2.0版本于上周发布,它带来了安全支持允许锁定Event Store和在事件流上设置访问控制列表.其主要新特性包括: HTTP和TCP之上的身份认证,包括账户管理 测试版Pro ...
- Twitter Bootstrap 3.0 正式发布,更好地支持移动端开发
Twitter Bootstrap 3.0 终于正式发布了.这是一个圆滑的,直观的和强大的移动优先的前端框架,用于更快,更容易的 Web 开发.几乎一切都已经被重新设计和重建,更好的支持移动端设备. ...
- GraphScope v0.12.0 版本发布
GraphScope 每月进行常规版本的迭代与发布,GraphScope v0.12.0 全新版本在四月如期而至.v0.12.0 为交互式图查询 GAIA 引入全新的 IR 层以及新增 Giraph ...
- Kurator v0.3.0版本发布
摘要:2023年4月8日,Kurator正式发布v0.3.0版本. 本文分享自华为云社区<华为云 Kurator v0.3.0 版本发布!集群舰队助力分布式云统一管理>,作者:云容器大未来 ...
- smartjs 0.2发布 - 新增oop模块&AOP增强
SmartJS2.0发布,更新内容如下: 新增oop(klass,factory)模块: promiseEvent加入非阻塞模式noBlock: trigger加入属性监听; smartjs主模块优化 ...
- Nacos 发布 v0.8.0 Pre-GA版本,安全稳定上生产?
服务注册和服务配置开源项目 Nacos 本周发布了 v0.8.0 Pre-GA 版本,作为开源项目生命周期中的里程碑版本之一,v0.8.0 Pre-GA版本支持登录.命名空间.Metrics监控(对接 ...
随机推荐
- 附039.Kubernetes_v1.32.2高可用部署架构二
部署组件 该 Kubernetes 部署过程中,对于部署环节,涉及多个组件,主要有 kubeadm .kubelet .kubectl. kubeadm介绍 Kubeadm 为构建 Kubernete ...
- C/C++跨平台开发1-windows和linux中的类库
基本概念: 什么是库: 在windows平台和linux平台下都大量存在着库. 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行. 静态库:在程序链接的时候使用,链接器会将程序中使 ...
- 2024NOIP邮寄
渺渺兮身外无物,无喜无悲无怖,不过是大梦一场,各自沉浮. 前言 原计划这篇游记兼总结是在考完后一天之内写出来(12.1 前),但是一方面是因为家里的笔记本插上 U 盘写不了东西,一方面是这次 NOIP ...
- Windows 提权-SeBackupPrivilege 特权
本文通过 Google 翻译 Sebackupprivilege – Windows Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注 ...
- 一文搞懂 MCP Servers
一文搞懂 MCP Servers 什么是MCP MCP概念 MCP(Model Context Protocol,模型上下文协议)是由 Anthropic 提出并于 2024 年 11 月开源的一种通 ...
- FastAPI 请求体参数与 Pydantic 模型完全指南:从基础到嵌套模型实战 🚀
title: FastAPI 请求体参数与 Pydantic 模型完全指南:从基础到嵌套模型实战 date: 2025/3/7 updated: 2025/3/7 author: cmdragon e ...
- pandas 操作excel
一 Series 什么是series 相当于表格中的行和列,不同的设置可以按行或列排序 2.series 创建 空的series import pandas as pd s2=pd.Series() ...
- mongodb logical sessions can't have multiple authenticated users
前言 使用 mongodb db.auth,切换用户时,报以下错误 logical sessions can't have multiple authenticated users 原因是 mongo ...
- cnpm : 无法加载文件 C:\Users\Raytine\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本。
解决方式: 1.在系统中搜索框 输入 Windos PowerShell 2.点击"管理员身份运行" 3.输入" set-ExecutionPolicy RemoteSi ...
- 如何不购买域名在云服务器上搭建HTTPS服务
step 1: 事前准备 step 1.1: 云服务器 购买一台云服务器(带有弹性公网IP),阿里云,腾讯云,华为云什么的都可以. 选择ubuntu系统 开放安全组策略(把你需要的协议/端口暴露出来) ...