# 已有 Prometheus / VictoriaMetrics

把现有存储注册为数据源，抓取配置原样保留，让第一条规则在它上面跑起来——数据不用搬。

最后校对于 2026-10-10

这条路的终点：一条告警规则在你**现有**的时序库上跑起来，抓取配置一行没改，数据一个字节没搬。 大约 10 分钟。

## 开始之前[​](#开始之前 "开始之前的直接链接")

* 夜莺已经起来了（还没起看[快速开始](https://n9e.github.io/zh/docs/get-started/quick-start.md)）；
* 你的 Prometheus / VictoriaMetrics / Thanos / Mimir 的查询地址， 以及夜莺所在机器**能访问**这个地址；
* 如果对方开了认证，准备好用户名和密码。

## 1. 注册数据源[​](#1-注册数据源 "1. 注册数据源的直接链接")

**集成中心 → 数据源 → 新增 → Prometheus**。

只有两个字段是必填的：

| 字段 | 填什么                                 |
| ---- | -------------------------------------- |
| 名称 | 起个能认出来的名字，规则里按它选数据源 |
| URL  | 查询地址。表单里就列着各家的写法       |

各家的 URL 长这样（表单里的提示同款）：

```
Prometheus                    http://localhost:9090/

Thanos Querier                http://localhost:19192/

VictoriaMetrics 单机版        http://{vmselect}:8428/

VictoriaMetrics 集群版        http://{vmselect}:8481/select/0/prometheus/

Mimir Query Frontend          http://mimir:9009/prometheus

M3                            http://localhost:7201/
```

VictoriaMetrics、Thanos、Mimir 都实现了 PromQL HTTP API，所以都注册成 **Prometheus Like** 这一种类型——没有单独的 VictoriaMetrics 类型。接 VictoriaMetrics 时把表单最下面的 **时序库类型** 选成 `VictoriaMetrics` 即可，那个字段只影响仪表盘查询的优化方式。

开了 basic auth 的，在 **认证** 区填用户名密码——填**原始密码**， 不是 Prometheus `web-config.yml` 里那串 bcrypt 哈希。 自签证书打开「跳过 SSL 验证」。

点 **测试连通性并保存**。测试不通过不会入库，错误信息会直接告诉你卡在哪一步。 （旁边那个 **不测试连通性直接保存** 用于地址暂时不可达、想先把配置存下来的情况。）

![Prometheus 数据源表单](https://n9e.github.io/zh/img/docs/data/form-prometheus.zh.webp)![Prometheus 数据源表单](https://n9e.github.io/zh/img/docs/data/form-prometheus.zh.dark.webp)

## 2. 保存之后会弹一个引导[​](#2-保存之后会弹一个引导 "2. 保存之后会弹一个引导的直接链接")

保存不会直接跳回列表，而是弹出一个引导：它当场替你回答「这个数据源现在能不能用」， 再给出接下来能做的几件事。

![保存数据源后弹出的引导弹窗](https://n9e.github.io/zh/img/docs/get-started/ds-next-step.zh.webp)![保存数据源后弹出的引导弹窗](https://n9e.github.io/zh/img/docs/get-started/ds-next-step.zh.dark.webp)

### 数据体检[​](#数据体检 "数据体检的直接链接")

弹窗打开时会真的往这个数据源发一条查询，结论分四种：

| 结论                         | 意味着                                                 | 该做什么                                 |
| ---------------------------- | ------------------------------------------------------ | ---------------------------------------- |
| 数据正常                     | 顺带报出指标个数、最近数据时间、查询耗时和一个示例指标 | 往下走                                   |
| 连接正常，但没有发现任何指标 | 地址是通的，库里没有数据                               | 多半是采集端还没往里写，不是数据源配错了 |
| 历史有数据，近期没有新写入   | 指标在，但最近没有新样本                               | 去看采集器是不是停了                     |
| 无法连接数据源               | 地址、认证或网络不通                                   | 点弹窗里的「返回修改配置」               |

体检只对 Prometheus 系数据源做，其它类型会显示「暂不支持数据体检」—— 去[即时查询](https://n9e.github.io/zh/docs/query/metric-explorer.md)里实际查一次即可。

### 「下一步」的三个入口[​](#下一步的三个入口 "「下一步」的三个入口的直接链接")

三个入口都在新标签打开，弹窗不会被冲掉：

* **探索这些数据**：带着体检查到的那个示例指标直接打开即时查询，落地就有图， 不用自己想第一条查询该写什么；
* **去创建仪表盘** / **去创建告警规则**：落到对应的列表页，顶部有一条 「数据源『xxx』已就绪」的横幅提示你先选业务组——这两处的新增入口都要求先有业务组上下文。

### 组件模板匹配[​](#组件模板匹配 "组件模板匹配的直接链接")

如果这个数据源里有夜莺认识的组件，弹窗底部会把它们列出来，按组件给出「几盘几警」。

判定方式是哨兵指标：每个内置模板从自己的查询里挑一到三个代表性指标，拼成一条查询打到你的 数据源，最近五分钟有样本的就算「这个组件的数据在这儿」。所以列出来的都是你**真的在采**的组件， 不是一份全量模板清单。

点卡片进导入弹窗：

![从数据源引导里导入组件模板](https://n9e.github.io/zh/img/docs/get-started/ds-template-import.zh.webp)![从数据源引导里导入组件模板](https://n9e.github.io/zh/img/docs/get-started/ds-template-import.zh.dark.webp)

选业务组，勾要导的仪表盘或告警规则，导入时会自动绑定到刚保存的这个数据源上。 另外两个导入入口和模板本身的说明见[导入仪表盘与规则](https://n9e.github.io/zh/docs/data/integrations/import.md)。

### 关掉之后还想再看[​](#关掉之后还想再看 "关掉之后还想再看的直接链接")

**集成中心 → 数据源**，那一行的 **数据状态** 打开的是同一个弹窗，体检会重新跑一次。 数据源停用期间不体检，弹窗会直接说明这一点。

## 3. 确认真的能查到数据[​](#3-确认真的能查到数据 "3. 确认真的能查到数据的直接链接")

上一步点「探索这些数据」落地的就是这个页面。手动过来的话： **数据查询 → 指标**，数据源选你刚建的那个，输入一条你确定有数据的 PromQL，比如：

```
up
```

有曲线出来，这条路就通了。查不到先别往下走—— [数据源连上了，为什么查不到数据？](https://n9e.github.io/zh/docs/troubleshooting/no-data.md)。

## 4. 写第一条规则[​](#4-写第一条规则 "4. 写第一条规则的直接链接")

**告警通知 → 规则管理 → 新增**，选中你的数据源，写一条会触发的查询。 先用一条**必然成立**的表达式，好确认链路是通的，比如：

```
up == 1
```

评估周期 15 秒、持续时长 60 秒、级别 S2，保存。

一分钟后去 **告警通知 → 告警事件**，应该能看到事件。 看到了，说明「数据源 → 查询 → 判定 → 事件」这条链路是通的。

**确认之后记得把这条测试规则改成真实阈值或者删掉**，不然它会一直响。

## 下一步[​](#下一步 "下一步的直接链接")

* 让事件真的送到人：[通知](https://n9e.github.io/zh/docs/notifications/overview.md)
* 认真写规则：[告警规则](https://n9e.github.io/zh/docs/alerting/overview.md)
* 还想顺便监控机器：[从 Categraf 开始](https://n9e.github.io/zh/docs/get-started/choose-your-path/categraf.md)
