将 PHP 中的应用程序指标暴露到 Caddy 的指标注册表中 (frankenphp_metric_*)
作者: Caligone创建于 2026年8月13日更新于 2026年8月13日
标签enhancement
描述您的功能请求
FrankenPHP 通过 Caddy 的 Prometheus 注册表暴露了服务器端指标(frankenphp_busy_workers,frankenphp_queue_depth…)。该注册表提供了 Caddy 支持的两种输出:用于 Prometheus 采集的 /metrics 端点,以及通过 metrics { otlp } 启用的 OpenTelemetry 导出器。该流程已配置、采集和导出。应用程序指标无法使用它。PHP 脚本没有办法将计数器或度量器发送到该注册表中。frankenphp_log() 是连接到 Caddy 可观察性的唯一桥梁,而日志并不是指标:没有类型、没有聚合、没有标签。因此,发布类似于"每秒队列中的消息数"这样的内容需要另一个并行流程:一个 OpenTelemetry SDK 或厂商客户端,具有自己的凭据、传输和刷新时机,而一个工作流程则在同一个进程中运行。我们目前维护两个导出器和两种身份验证机制,用于从一个容器中单独导出的单一指标流,而应用程序指标则位于与解释它们的服务器指标不同的位置。
内容来源: php/frankenphp