
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像是基于 OpenTelemetry Collector 构建的专用版本,集成了 Site24x7 Exporter 组件。OpenTelemetry Collector 是一个开源的可观测性数据处理系统,支持接收、处理、聚合和导出遥测数据(指标、日志、追踪);Site24x7 Exporter 则负责将处理后的遥测数据转换为 Site24x7 平台兼容格式,并导出至该平台进行监控、分析与告警。
主要用途:作为数据管道中枢,连接分布式系统中的遥测数据源(如应用、服务、基础设施)与 Site24x7 监控平台,实现统一的可观测性数据采集与上报。
通过 Docker Hub 或私有镜像仓库拉取镜像(假设镜像标签为 otelcol-site24x7:latest):
bashdocker pull otelcol-site24x7:latest
OpenTelemetry Collector 通过 YAML 配置文件定义数据采集流程,核心包括 receivers(数据接收)、processors(数据处理)、exporters(数据导出)和 service(服务管道)四部分。需重点配置 exporters.site24x7 部分。
4.2.1 配置文件结构示例
yaml# otel-collector-config.yaml receivers: # 示例:接收 OTLP 协议数据(默认端口 4317/gRPC, 4318/HTTP) otlp: protocols: grpc: endpoint: 0.0.0.0:4317 http: endpoint: 0.0.0.0:4318 processors: # 示例:批处理数据以提高导出效率 batch: send_batch_size: 1000 timeout: 10s exporters: # Site24x7 Exporter 配置 site24x7: # Site24x7 API 密钥(必填,从 Site24x7 控制台获取) api_key: "YOUR_SITE24X7_API_KEY" # 服务名称(可选,默认为 "otel-collector",用于在 Site24x7 平台标识数据源) service_name: "my-app-service" # 导出端点(可选,默认使用 Site24x7 官方端点,私有化部署时需指定) endpoint: "https://www.site24x7.com/api/v2/metrics" # 超时时间(可选,默认 10s) timeout: 15s # 自定义标签(可选,添加至所有导出指标) resource_attributes: env: "production" team: "backend" service: pipelines: # 指标数据管道:接收 OTLP 指标 -> 批处理 -> 导出至 Site24x7 metrics: receivers: [otlp] processors: [batch] exporters: [site24x7] # 追踪数据管道:接收 OTLP 追踪 -> 批处理 -> 导出至 Site24x7 traces: receivers: [otlp] processors: [batch] exporters: [site24x7]
4.3.1 Docker 命令行运行
将本地配置文件挂载至容器,并启动 Collector:
bashdocker run -d \ --name otel-collector-site24x7 \ -p 4317:4317 # OTLP gRPC 接收端口 \ -p 4318:4318 # OTLP HTTP 接收端口 \ -v $(pwd)/otel-collector-config.yaml:/etc/otelcol/config.yaml \ otelcol-site24x7:latest \ --config=/etc/otelcol/config.yaml
4.3.2 Docker Compose 配置
创建 docker-compose.yml:
yamlversion: '3.8' services: otel-collector: image: otelcol-site24x7:latest container_name: otel-collector-site24x7 ports: - "4317:4317" # OTLP gRPC - "4318:4318" # OTLP HTTP volumes: - ./otel-collector-config.yaml:/etc/otelcol/config.yaml command: ["--config=/etc/otelcol/config.yaml"] restart: unless-stopped
启动服务:
bashdocker-compose up -d
| 参数名 | 类型 | 是否必填 | 描述 | 示例值 |
|---|---|---|---|---|
api_key | string | 是 | Site24x7 平台 API 密钥,用于认证(从 Site24x7 控制台 > 集成 > API 密钥获取) | "a1b2c3d4-e5f6-7890-abcd-1234567890ab" |
service_name | string | 否 | 标识数据源的服务名称,用于在 Site24x7 平台区分不同服务数据 | "order-service" |
endpoint | string | 否 | 数据导出端点 URL,默认使用 Site24x7 官方端点 | "https://www.site24x7.com/api/v2/metrics" |
timeout | string | 否 | 数据导出超时时间,默认 10s | "15s" |
resource_attributes | map | 否 | 附加至所有导出数据的资源标签(键值对),用于多维度筛选 | {"env": "prod", "region": "cn-north-1"} |
metrics_prefix | string | 否 | 指标名称前缀,避免多服务指标名称冲突 | "prod.order." |
| 参数名 | 类型 | 是否必填 | 描述 | 示例值 |
|---|---|---|---|---|
log_level | string | 否 | 日志级别(debug/info/warn/error),默认 info | "debug" |
memory_limiter | object | 否 | 内存限制配置,防止 Collector 过度占用资源 | {"limit_mib": 512, "spike_limit_mib": 128} |
启动 Collector 后,检查容器日志确认无错误:
bashdocker logs otel-collector-site24x7
若日志中出现 Successfully exported metrics to Site24x7 或 Successfully exported traces to Site24x7,表示数据导出正常。
登录 Site24x7 控制台,在 APM > 指标浏览器 或 分布式追踪 页面查看是否有新数据流入。
401 Unauthorized,检查 api_key 是否正确或未过期。memory limiter exceeded,需调整 memory_limiter 配置或优化数据采样率。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 site24x7/opentelemetry-collector 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: