{"id":18621261,"url":"https://github.com/sofastack/sofa-lookout","last_synced_at":"2025-05-16T03:03:50.231Z","repository":{"id":33999077,"uuid":"133381280","full_name":"sofastack/sofa-lookout","owner":"sofastack","description":"SOFALookout is a light-weight monitoring and analysis tool","archived":false,"fork":false,"pushed_at":"2023-12-01T03:46:45.000Z","size":1403,"stargazers_count":375,"open_issues_count":37,"forks_count":119,"subscribers_count":45,"default_branch":"master","last_synced_at":"2025-04-08T13:08:56.959Z","etag":null,"topics":["metrics","sofa-boot","sofa-lookout","sofastack"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sofastack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-14T15:17:39.000Z","updated_at":"2025-02-27T15:03:39.000Z","dependencies_parsed_at":"2024-06-21T19:06:50.589Z","dependency_job_id":"6ceaedeb-aed1-4bb0-b6a8-391d279c5199","html_url":"https://github.com/sofastack/sofa-lookout","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sofastack%2Fsofa-lookout","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sofastack%2Fsofa-lookout/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sofastack%2Fsofa-lookout/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sofastack%2Fsofa-lookout/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sofastack","download_url":"https://codeload.github.com/sofastack/sofa-lookout/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254459084,"owners_count":22074604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["metrics","sofa-boot","sofa-lookout","sofastack"],"created_at":"2024-11-07T04:10:05.775Z","updated_at":"2025-05-16T03:03:45.220Z","avatar_url":"https://github.com/sofastack.png","language":"Java","funding_links":[],"categories":["Observability \u0026 Monitoring","指标库"],"sub_categories":[],"readme":"# SOFALookout\n\n[![Build Status](https://travis-ci.org/sofastack/sofa-lookout.svg?branch=master)](https://travis-ci.org/sofastack/sofa-lookout)\n[![Coverage Status](https://coveralls.io/repos/github/alipay/sofa-lookout/badge.svg?branch=master)](https://coveralls.io/github/alipay/sofa-lookout?branch=master)\n![license](https://img.shields.io/badge/license-Apache--2.0-green.svg)\n![maven](https://img.shields.io/github/release/alipay/sofa-lookout.svg)\n\n[English Document](./README_EN.md)\n\n访问 [WIKI](http://www.sofastack.tech/sofa-lookout/docs/Home) 查看完整的文档使用指南。\n\nSOFALookout（已开源部分）是一个利用多维度的 metrics 对目标系统进行度量和监控的项目。SOFALookout 的多维度 metrics 参考[Metrics2.0 标准](http://metrics20.org/)。\n\n```\n+----------------+\n| Lookout Client +----+\n+----------------+    |\n+----------------+    |\n| Prometheus SDK +----+  +-------------------+   +------------+  +------------------+  +-----------+\n+----------------+    +--\u003e  Lookout Gateway  +---\u003e  DB(ES/...)\u003c--+  Lookout Server  \u003c--+  Grafana  |\n+----------------+    |  +-------------------+   +------------+  +------------------+  +-----------+\n|   Metricbeat   +----+\n+----------------+    |\n+----------------+    |\n|       ...      +----+\n+----------------+\n```\n\nSOFALookout 项目分为客户端部分与服务器端部分：\n- 客户端是一个 Java 的类库，可以将它植入您的应用代码中采集 metrics 信息，[客户端更多详情](./client/README.md)。\n- 服务端代码（Metrics）部分，对 Metrics 数据进行收集、加工、存储和查询等处理，另外结合 [grafana](https://grafana.com)，可做数据可视化展示。\n\n## 相较于常用的监控方案：\n\n- 多维度的 metrics, 在传统的 metrics 的 name 基础上，又加上了一组 tags 的集合；因此相较于 Dropwizard, Spring Boot 的 actuator 等而言可以提供更丰富的 tags 维度方便监控分析；\n- 相比于通过收集、加工应用系统产生的日志进行监控分析的方案，metrics 会显得更轻量，对系统资源的消耗也比较固定，不会随着业务量增加而增加；\n- SOFALookout 除了对自身的 Java SDK 客户端采集源支持，还支持业界主流的采集 Agent 的数据汇报；\n- 采集源可以通过配置文件或者服务发现机制找到 SOFALookout 的采集服务；\n- SOFA 的体系中产品都会默认集成了 SOFALookout SDK 进行状态度量；\n\n我们在分布式场景已经积累了一定的经验，但也处于探索的过程中。开源 SOFALookout 项目，我们是希望以更开放方式来合作确保该项目向正确的方向持续演化。后续我们可能也会开源更多的解决海量数据的配套设施。\n\n## 下一步\n会持续开源 tracing，eventing 功能。\n\n## 编译\n  - 代码编译: 至少Maven 3.2.5+, JDK Version 8+；\n  - all-in-one 启动模块编译: `./boot/all-ine-one-bootstrap/build.sh`, 打包结果在`boot/all-in-one-bootstrap/target/xxx-executable-ark.jar`\n  \n## 致谢\nLookout 的 promQL 相关解析逻辑是从 Prometheus 移植而来，做了一些优化和改进， 感谢 Prometheus 开源了如此易用和强大的 golang 版本的 QL 实现\n\n## 样例工程\n样例工程演示了如何快速使用 SOFALookout，[详细可参考](https://www.sofastack.tech/sofa-lookout/docs/useguide-samples)。\n\n## 贡献\n如何参与 SOFALookout [代码贡献](./CONTRIBUTING.md)\n\n## 开源许可\nSOFALookout 基于 [Apache License 2.0](./LICENSE) 协议，SOFALookout 依赖了一些三方组件，它们的开源协议参见[依赖组件版权说明](https://github.com/sofastack/sofa-lookout/wiki/NOTICE)。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsofastack%2Fsofa-lookout","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsofastack%2Fsofa-lookout","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsofastack%2Fsofa-lookout/lists"}