蚂蚁金服轻量级监控分析系统 SOFALookout 服务端开源

简介: SOFA Scalable Open Financial Architecture是蚂蚁金服自主研发的金融级分布式中间件,包含了构建金融级云原生架构所需的各个组件,是在金融场景里锤炼出来的最佳实践。

SOFA Scalable Open Financial Architecture
是蚂蚁金服自主研发的金融级分布式中间件,包含了构建金融级云原生架构所需的各个组件,是在金融场景里锤炼出来的最佳实践。

SOFALookout 是蚂蚁金服在 SOFAStack 体系内研发开源的一款解决系统的度量和监控问题的轻量级中间件服务。本文给大家介绍下 SOFALookout 服务器端主要提供的特性以及使用方式。

SOFALookout:https://github.com/sofastack/sofa-lookout

| 前言

容器,K8S,微服务,Mesh 以及 Serverless 这些新技术方向正在根本的变革我们运行软件的方式。我们构建的系统更加分布式化,另外由于容器,系统的生命周期更加短,变得易逝。针对这些变化,SOFALookout 希望提供一套轻量级的监控分析解决方案。之前 SOFALookout 已经开源客户端的能力。今天,SOFALookout 服务器端 Metrics 部分的代码终于正式开源啦!本文给大家介绍下 SOFALookout 服务器端的主要特性以及使用方法。

| 什么是 SOFALookout

SOFALookout 是蚂蚁金服开源的一款解决系统的度量和监控问题的轻量级中间件服务。它提供的服务包括:Metrics 的埋点、收集、加工、存储与查询等。该开源项目包括了两个独立部分,分别是客户端与服务器端服务。

SOFALookout 目标是打造一套轻量级 Observability 实时工具平台,帮助用户解决基础设施、应用和服务等的监控和分析的问题。SOFALookout 是一个利用多维度的 Metrics 对目标系统进行度量和监控的项目。SOFALookout(目前已开源部分) 的多维度 Metrics 参考 Metrics2.0 [1] 标准。

SOFALookout [2]:

https://github.com/sofastack/sofa-lookout

SOFALookout 安装文档 [3]:

https://www.sofastack.tech/sofa-lookout/docs/quickstart-metrics-server

image.png

SOFALookout 服务器端的主要特性:

适配社区主要 Metrics 数据源协议写入(比如: Prometheus[4],Metricbeat [5]等);

数据的存储支持扩展,暂时开源版默认支持 Elasticsearch [6],并且透明和自动化了相关运维操作;

遵循 Prometheus 查询 API 的标准以及支持 PromQL [7] ,并进行了适当改进;

自带数据查询的控制台,并支持 Grafana [8] 进行数据可视化;

使用简单,支持单一进程运行整个服务器端模块。

随着 SOFALookout (Metrics)服务器端代码开源,Metrics 数据的处理已经形成闭环。后续我们将会进一步开源 Trace 和 Event 相关的服务能力,敬请期待。

| SOFALookout 项目结构

服务器端代码分别包括两部分:Gateway 模块和 Server 模块。如下图所示(展示了 SOFALookout 源码项目的模块概要结构)

├── boot

├── client

├── gateway

└── server

项目中的 boot 模块作用是方便集成和运行服务端的模块,既可以单独运行 Gateway 和 Server 的服务,也可以借助 SOFAArk 完成(Gateway 和 Server)的 All in One 的合并为单一进程运行。

| SOFALookout 工作机制

下图完整展示了 SOFALookout 如何从 Metrics 数据采集、上报、存储到最终展示的完整流程路径。

image.png

目前 SOFALookout 支持灵活的 Metrics 数据存储选型。但开源版本我们暂时只支持了 Elasticsearch 作为存储的方案(后续可能继续支持 Cassandra,InfluxDB...),其他存储地适配我们希望更多同学能参与共建和支持。优先支持 Elasticsearch 是因为我们考虑到了 ELK 解决方案在业界已经广泛使用,尤其是日志数据。

为了开箱即用,同时考虑到不熟悉 Elasticsearch 的同学的使用,SOFALookout已经内置了关于 mMetrics 数据存储的自动化运维工具,可以免除大家自己建 Index,和日常维护 ES Index 的麻烦,更多细节后续单独讲解。

| 本次新增开源模块

一、SOFALookout Gateway 模块

SOFALookout Gateway 轻量的数据管道,它提供丰富的协议接入支持,包括自有SDK(SOFALookout Client)上报协议,还支持 Prometheus 的数据协议(推模式和拉模式),Metricbeat 协议(版本是6),OpenTSDB [9] 写入协议。每种数据来源对应于一个 Importer 的概念。

SOFALookout Gateway 对于远程(推模式)上报提供本地硬盘缓冲的支持。Gateway 总体设计是围绕数据加工的Pipeline 形式,包括前置后置的数据过滤器方便进行开发者数据加工。 另外 Gateway 可以支持自定义 Exporter,默认提供了 Elasticsearch Exporter,Standard Exporter(用于 Gateway 间数据中继),开发者也可以自定义其他存储的 或 Kafka 等各式各样 Exporter。

二、 SOFALookout Server 模块

SOFALookout Server 兼容和增强了 Prometheus 的数据及元数据查询的 RESTful API。同样对应 PromQL 我们也基本实现了兼容和增强(不包括 Alert 相关语法),SOFALookout 的 promQL 相关解析逻辑是从 Prometheus 移植而来,做了一些优化和改进, 感谢 Prometheus 开源了如此易用和强大的 golang 版本的 QL 实现。

为了方便方便开发者做数据探索和试验,我们也提供了自有 Web-UI 的支持,能够满足基本功能使用。

image.png

我们还是推荐大家使用 Grafana 进行数据展示。Grafana 集成 SOFALookout 很简单,只需要选择 Prometheus 作为数据源协议即可(SOFALookout默认查询端口也是: 9090)。下图展示 Grafana 新增数据源配置:

image.png

image.png

| 近期计划

下图是近期的 Roadmap:

image.png

非常欢迎更多同学参与 SOFALookout 共建,尤其是支持更多的 Metrics 存储库。

| 文中涉及的相关链接

[1] Metrics2.0:

http://metrics20.org/

[2] SOFALookout:

https://github.com/sofastack/sofa-lookout

[3] SOFALookout 安装文档:

https://www.sofastack.tech/sofa-lookout/docs/quickstart-metrics-server

[4] Prometheus:

https://prometheus.io

[5] Metricbeat:

https://www.elastic.co/guide/en/beats/metricbeat/6.4/index.html

[6] Elasticsearch:

https://www.elastic.co/cn/products/elasticsearch

[7] PromQL:

https://prometheus.io/docs/prometheus/latest/querying/basics/

[8] Grafana:

https://grafana.com/

[9] OpenTSDB:

http://opentsdb.net/

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
11天前
|
人工智能 开发工具 iOS开发
Claude Code 新手完全上手指南:安装、国产模型配置与常用命令全解
Claude Code 是一款运行在终端环境中的 AI 编程助手,能够直接在命令行中完成代码生成、项目分析、文件修改、命令执行、Git 管理等开发全流程工作。它最大的特点是**任务驱动、终端原生、轻量高效、多模型兼容**,无需图形界面、不依赖 IDE 插件,能够深度融入开发者日常工作流。
3312 10
|
3天前
|
人工智能 自然语言处理 文字识别
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
Qwen3.7-Max是阿里云百炼面向智能体时代推出的新一代旗舰模型,对标GPT-5.5、Claude Opus 4.7等闭源旗舰。该模型支持百万级token上下文窗口,具备顶级推理能力、多模态搜索与视觉理解增强、流式输出低延迟响应等核心优势,覆盖编程、办公、长周期自主执行等复杂场景。同时支持OpenAI接口兼容,便于系统快速迁移。用户可通过Token Plan团队或节省计划等订阅方式灵活调用,适合企业级高要求场景使用。
1683 5
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
|
14天前
|
Shell API 开发工具
Claude Code 快速上手指南(新手友好版)
AI编程工具卷疯啦!Claude Code凭借任务驱动+终端原生的特性,成了开发者的效率搭子。本文从安装、登录、切换国产模型到常用命令,手把手带新手快速上手,全程避坑,30分钟独立用起来。
3359 24
|
7天前
|
人工智能 Linux BI
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
JeecgBoot AI专题研究 一键脚本:Claude Code + JeecgBoot Skills + DeepSeek 全平台接入 一行命令装好 Claude Code + JeecgBoot Skills + DeepSeek 接入,无需翻墙使用 Claude Code,支持 Wind
2403 4
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
|
26天前
|
人工智能 JSON 供应链
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
LucianaiB分享零成本畅用JVS Claw教程(学生认证享7个月使用权),并开源GeoMind项目——将JVS改造为科研与产业地理情报可视化AI助手,支持飞书文档解析、地理编码与腾讯地图可视化,助力产业关系图谱构建。
23602 15
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
|
5天前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全+三种模式+记忆体系+实战工作流完整手册
Claude Code 是当前最流行的终端级 AI 编程助手,能够直接在命令行中完成代码生成、项目理解、文件修改、命令执行、错误修复等全流程开发工作。它不依赖图形界面、不占用额外资源,却能深度理解项目结构,自动生成规范代码,大幅提升研发效率。
965 2
|
12天前
|
存储 Linux iOS开发
【2026最新】MarkText中文版Markdown编辑器使用图解(附安装包)
MarkText是一款免费开源、跨平台的Markdown编辑器,主打所见即所得实时预览,支持Windows/macOS/Linux。内置数学公式、流程图、代码高亮、多主题及PDF/HTML导出,是Typora的轻量免费替代首选。(239字)

热门文章

最新文章