# ONVIF Exporter(自建) 本目录为自建的 ONVIF 探测容器,供边缘节点可选使用。通过 ONVIF `GetDeviceInformation` 探测设备是否在线,并暴露 Prometheus 指标。 ## 指标 - `onvif_device_up`:1=可达,0=不可达(标签:instance, location, model, device_type) - `onvif_probe_duration_seconds`:探测耗时(秒) ## 配置 - 从 **config/onvif-targets.json** 读取设备列表(与 `targets.csv` 中 onvif 行一致,由 `config/update-configs.sh` 生成)。 - 环境变量:`TARGETS_FILE`(默认 `/config/targets.json`)、`EXPORTER_PORT`(默认 9600)。 ## 构建与运行 在边缘节点目录下启用 ONVIF 并构建、启动: ```bash cd edge-agent docker compose --profile onvif up -d --build ``` 或仅构建镜像: ```bash docker build -t onvif-exporter:local ./onvif-exporter ``` ## 依赖 - Go 1.21(仅构建时需要,Dockerfile 内已包含) - [github.com/use-go/onvif](https://github.com/use-go/onvif)(ONVIF 协议) - [prometheus/client_golang](https://github.com/prometheus/client_golang)(指标暴露)