-
Notifications
You must be signed in to change notification settings - Fork 24
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
cc842d2
commit f0950ae
Showing
13 changed files
with
150 additions
and
28 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
Mocha | ||
===== | ||
|
||
[![codecov](https://codecov.io/gh/dotnetcore/mocha/graph/badge.svg?token=v9OE7dV8ZS)](https://codecov.io/gh/dotnetcore/mocha) | ||
|
||
[English](./README.md) | [简体中文](./README.zh-CN.md) | ||
|
||
Mocha 是一个基于 [OpenTelemetry](https://opentelemetry.io) 的 APM 系统,同时提供可伸缩的可观测性数据分析和存储平台。 | ||
|
||
## 快速开始 | ||
现阶段,我们提供了 Docker Compose 文件,方便用户在本地体验我们的系统。 | ||
|
||
+ [快速开始](./docs/quick-start/docker-compose/quick-start.zh-CN.md) | ||
|
||
# 平台功能 | ||
![](./docs/assets/functional_architecture.png) | ||
Mocha 将要提供的功能集合: | ||
- APM 和 分布式追踪 | ||
- 服务概览、R.E.D 指标和可用性监控 | ||
- 服务拓扑 | ||
- 调用监控,包括 HTTP、RPC、Cache、DB、MQ 等 | ||
- 调用链路查询和检索 | ||
- 基础设施监控 | ||
- 主机监控 | ||
- 容器和 Kubernetes 监控 | ||
- 主流中间件监控 | ||
- 日志 | ||
- 日志查询 | ||
- 日志聚合分析 | ||
- 报警 | ||
- 报警规则管理 | ||
- 报警通知 | ||
- M.T.L 数据探索 [Data Explore / Inspect] | ||
|
||
# 技术架构 | ||
![](./docs/assets/technical_architecture.png) | ||
|
||
Mocha 整体架构由下面的部分组成 | ||
- Mocha Distributor Cluster:作为 mocha 系统的数据入口,负责接收 OTel SDK 和 Collector 上报的数据,并通过一致性Hash 将数据路由到对应的 aggregator 节点上。为了保证数据不丢失,最终 Distributor 应该具备本地 FIFO 队列的能力。 | ||
- Mocha Streaming Cluster:mocha 的核心组件,通过读取预配置或者用户配置的 aggr rule dsl 生成对应的 streaming data flow 并执行。Streaming 是具备分布式 shuffle 的能力的有状态组件,需要将自身信息注册到ETCD中。 | ||
- Storage:mocha M.T.L 存储,可以选用开源存储组件,如 ClickHouse、ElasticSearch、victoriametrics 等。 | ||
- Mocha Querier + Grafana: 从存储查询数据并提供给 grafana 做展示。因此要兼容 promql / jeager / loki 等数据源的查询。 | ||
- Mocha Manager : 包括 manager server、dashboard和ETCE组件,集群元数据和 M.T.L 数据分析规则存储。 | ||
- OTel SDK / Collector : 开源 OpenTelemetry 采集套件。 | ||
|
||
## 参与贡献 | ||
参与贡献的最简单的方式是参与讨论并讨论问题。您也可以通过提交代码更改的拉取请求来进行贡献。 | ||
|
||
## 许可证 | ||
Mocha 是在 MIT 许可下发布的。有关详细信息,请参阅 [LICENSE](LICENSE) 文件。 |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
File renamed without changes
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
## Start the Project | ||
|
||
Execute the following command in the docker directory under the project root directory to start the project: | ||
|
||
```bash | ||
docker-compose up -d | ||
``` | ||
|
||
After the startup is successful, you can see the following containers: | ||
|
||
+ distributor: Provides gRPC API for receiving OTLP data | ||
+ jaeger-query: Provides HTTP API for receiving Jaeger query protocol | ||
+ mysql: Used to store data | ||
+ grafana: Used to display data | ||
|
||
## Send Trace Data | ||
|
||
Configure the OTLP exporter of the SDK as `http://localhost:4317` to send data to the distributor. | ||
|
||
## Configure Jaeger Data Source | ||
|
||
We have implemented an API that supports the Jaeger query protocol, so you can configure the Jaeger data source directly in Grafana. | ||
|
||
Visit http://localhost:3000/ to see the grafana login page. Both the username and password are admin. | ||
|
||
After logging in, click the menu on the left, select Data Sources, and then click Add data source. | ||
|
||
![](./asserts/add-jaeger-data-source.png) | ||
|
||
![](./asserts/add-jaeger-data-source-2.png) | ||
|
||
Select Jaeger. | ||
![](./asserts/add-jaeger-data-source-3.png) | ||
|
||
Configure the URL of the Jaeger data source as `http://jaeger-query:5775`. | ||
|
||
![](./asserts/add-jaeger-data-source-4.png) | ||
|
||
Click Save & Test. If the following information is displayed, the configuration is successful. | ||
|
||
![](./asserts/add-jaeger-data-source-5.png) | ||
|
||
If no data has been sent to the distributor yet, the following warning message will be displayed. | ||
|
||
![](./asserts/add-jaeger-data-source-warning.png) | ||
|
||
## Query Trace Data | ||
|
||
Click the menu on the left, select Explore, and then select the Jaeger data source to see the Trace data. | ||
|
||
![](./asserts/query-trace.png) | ||
|
||
![](./asserts/query-trace-2.png) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters