diff --git a/README.md b/README.md new file mode 100644 index 0000000..591c24a --- /dev/null +++ b/README.md @@ -0,0 +1,41 @@ +这是针对 VictoriaMetrics 全家桶 (Metrics, Logs, Traces) 配合 OpenTelemetry 的 GitHub Description 和 README。这个架构的核心优势是:极致的高性能和低资源占用(相比 Prometheus/Loki/Elasticsearch)。1. GitHub Description (Repository Description)🏆 专业解决方案版 (The Professional Solution)English:"High-performance, unified observability solution combining OpenTelemetry for collection with the VictoriaMetrics Ecosystem (Metrics, Logs, Traces) and Grafana."中文:"基于 VictoriaMetrics 全家桶 (Metrics, Logs, Traces) 和 OpenTelemetry 的高性能统一可观测性解决方案,集成 Grafana 可视化。"🏷 推荐 Topics (Tags)observability victoriametrics victorialogs opentelemetry grafana high-performance monitoring vmetrics vlogs2. README.md此 README 强调了 VictoriaMetrics 体系的简单性和效率。Markdown# High-Performance Observability Stack (VictoriaMetrics + OTel) + +[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) +[![Docker](https://img.shields.io/badge/docker-compose-ready-green.svg)](docker-compose.yml) +[![VictoriaMetrics](https://img.shields.io/badge/Powered_by-VictoriaMetrics-red.svg)](https://victoriametrics.com/) + +> **Next-generation observability solution** engineered for efficiency. Leveraging **OpenTelemetry** for unified data collection and the **VictoriaMetrics ecosystem** for high-speed storage of Metrics, Logs, and Traces. + +## ⚡ Why This Stack? + +Moving away from traditional stacks (Prometheus/Loki/ELK), this solution focuses on: +* **🚀 High Performance:** Handling millions of data points with minimal latency. +* **📉 Low RAM Usage:** Significantly lower resource footprint compared to Prometheus or Java-based stacks. +* **🧩 Unified Architecture:** Single ecosystem for all observability signals. + +## 🏗 Architecture + +Data flows from your application via OTel Agent to the storage backends, visualized centrally in Grafana. + +```mermaid +flowchart LR + App[Your Application] -->|OTLP| OTel[OTel Collector] + + subgraph Storage [VictoriaMetrics Ecosystem] + OTel -->|Metrics & Traces| VM[VictoriaMetrics] + OTel -->|Logs| VL[VictoriaLogs] + end + + Grafana -->|PromQL| VM + Grafana -->|LogQL-like| VL +🛠 ComponentsComponentRoleDescriptionOpenTelemetryCollectorUniversal agent for Metrics, Logs, and Traces.VictoriaMetricsMetrics & TracesLong-term storage for time-series and trace data. Drop-in replacement for Prometheus.VictoriaLogsLogsHigh-performance, resource-efficient log database.GrafanaVisualizationUnified dashboard for all data sources.🚀 Quick StartPrerequisitesDocker & Docker ComposeDeploymentClone the repo:Bashgit clone [https://github.com/your-username/vm-otel-stack.git](https://github.com/your-username/vm-otel-stack.git) +cd vm-otel-stack +Start services:Bashdocker-compose up -d +Access Dashboards:Grafana: http://localhost:3000 (Default: admin/admin)VictoriaMetrics UI: http://localhost:8428VictoriaLogs UI: http://localhost:9428⚙️ Configuration & PortsServiceInternal PortExternal PortFunctionVictoriaMetrics84288428Metrics Ingest & Query (PromQL)VictoriaLogs94289428Logs Ingest & QueryOTel Receiver43174317OTLP gRPCOTel Receiver43184318OTLP HTTPGrafana30003000UI📊 Data Source Setup (Grafana)When configuring Grafana, use the following settings:Metrics (Prometheus Type):URL: http://victoriametrics:8428Logs (VictoriaLogs Plugin):URL: http://victorialogs:9428🤝 ContributingPRs regarding performance tuning and dashboard examples are highly welcome!📄 LicenseMIT © [Your Name] +### 💡 关键调整说明 + +1. **Highlight Performance (强调性能):** VictoriaMetrics 最大的卖点就是比 Prometheus 省内存、速度快,所以我在 Introduction 部分专门加了 "Why This Stack" 章节。 +2. **Mermaid 结构:** 流程图中清晰地画出了 OTel 分流,一部分去 VM (Metrics/Traces),一部分去 VL (Logs)。 +3. **Data Source 提示:** 在 README 里加了一小段 Grafana 配置提示,因为 VictoriaLogs 在 Grafana 里的配置方式和 Loki 不太一样(通常需要专门的插件或配置方式),这是一个贴心的细节。 + +需要我为您生成对应的 `docker-compose.yml` 吗?VictoriaLogs 目前比较新,配置起来比 Loki 简单,但端口和镜像需要注意版本。