# observability-lab **Repository Path**: imbluenotbloo/observability-lab ## Basic Information - **Project Name**: observability-lab - **Description**: 专注于可观测性技术研究与实践,涵盖监控、日志、追踪等领域,旨在提升系统透明度和故障排查效率。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-02-19 - **Last Updated**: 2025-02-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # observability-lab ## 介绍 本项目是一个关于可观测性的项目,主要用于学习和实践可观测性相关的技术和工具。 ## 项目结构 ### 目录结构 ``` bash observability-lab ├── README.md ├── docker-compose.yml # Docker Compose 配置文件 ├── app/ │ ├── Dockerfile # Go 应用 Dockerfile │ ├── main.go # 一个简单的 HTTP 服务 │ ├── go.mod # 项目依赖文件 │ └── prometheus.yml # Prometheus 配置文件 └── grafana/ └── provisioning/ # Grafana 配置文件 └── datasources/ └── prometheus.yml └── dashboards/ # Grafana Dashboard └── app.json # 预置仪表盘 ``` ## 使用 #### 镜像构建 - Dockerfile 构建 go-app:v1 (标签随意,但要与docker-compose.yml 中的 image 保持一致) - 如果不想要单独构建go-app,可以在docker-compose.yml 中在 go-app 部分使用 build ./app/Dockerfile #### 启动服务 - 数据卷挂载在本机代码路径的同级目录中,例如:/path/observability-lab 作为代码位置,则数据卷挂载在 /path/go-observe ```bash # prometheus配置 - ../go-observe/go-app/prometheus.yml:/etc/prometheus/prometheus.yml # promtail - ../go-observe/promtail/var/log:/var/log - ../go-observe/promtail/config.yaml:/etc/promtail/config.yaml # grafana配置 - ../go-observe/grafana/provisioning:/etc/grafana/provisioning ``` - 端口映射根据个人习惯,但请记得保持一致 - 启动服务 ``` bash docker-compose up -d ```