该页面已由社区翻译,可能不是最新的。参见参考版本(英文)。

该页面已由社区翻译,可能不是最新的。参见参考版本(英文)。

该页面已由社区翻译,可能不是最新的。参见参考版本(英文)。

由...提供支持
可观测性

可观测性

FrankenPHP 提供内置的可观测性功能:兼容 Prometheus 的指标结构化日志。 这些功能与以下推荐工具结合使用,可让你在开发和生产环境中全面了解 PHP 应用的运行状态。

# Ember TUI 和 Prometheus 导出器

Ember 是监控 FrankenPHP 最友好的方式。

它连接到 Caddy 的管理 API,并与 FrankenPHP 深度集成,提供零配置、无需外部基础设施的实时可见性。

它专为开发和生产环境设计,提供用于本地使用的 TUI 仪表盘,以及用于生产监控的 Prometheus 导出守护进程模式。

Tip

请参阅 Ember 文档了解完整功能列表和设置详情。

# 指标

当启用 Caddy 指标时,FrankenPHP 会暴露兼容 Prometheus 的指标,涵盖线程、worker、请求处理和队列深度。

请参阅指标页面获取可用指标的完整列表。

# 日志

FrankenPHP 集成了 Caddy 的日志系统,并提供 frankenphp_log() 函数用于结构化日志记录,支持严重级别和上下文数据,便于接入 Datadog、Grafana Loki 或 Elastic 等平台。

请参阅日志页面获取使用详情。

# 自定义 Prometheus/Grafana 配置

如果你更倾向于自定义监控方案,可以直接抓取 FrankenPHP 的指标。 有两种方式:

  1. 直接抓取 Caddy:Caddy 在其管理端点暴露指标(默认:localhost:2019/metrics
  2. 通过 Ember 抓取:当 Ember 以 --expose 模式运行时,它会在专用端点上暴露 FrankenPHP 指标以及从 Caddy 数据计算得出的指标(RPS、延迟百分位数、错误率)。
编辑此页面