设置 PHP 7.4 的 Datadog 监控核心是三件事:部署 Datadog Agent、启用适配 PHP 7.4 的 dd-trace 扩展(如 /usr/lib/php/20190902/ddtrace.so)、通过日志注入 trace_id/span_id 实现日志与追踪关联。

设置 PHP 7.4 的 Datadog 监控,核心是三件事:部署 Agent、启用 PHP APM 扩展、打通日志与追踪。不依赖复杂配置,但每步必须精准匹配 PHP 7.4 环境。
部署 Datadog Agent(宿主机或容器)
Agent 是数据采集中枢,需运行在 PHP 应用所在的机器或容器中:
- Docker 方式(推荐):
docker run -d --name datadog-agent \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v /proc/:/host/proc/:ro \
-v /sys/fs/cgroup/:/host/sys/fs/cgroup:ro \
-e DD_API_KEY=your_api_key \
gcr.io/datadoghq/agent:latest - 确保 Agent 能访问 Docker socket 和系统路径;PHP 7.4 运行在 FPM 或 Apache 模式下均兼容
安装并启用 dd-trace PHP 扩展(适配 PHP 7.4)
PHP 7.4 必须使用支持该版本的 dd-trace 扩展(非 8.x 专用版):
- Ubuntu/Debian:
sudo apt-get install datadog-php-tracer
安装后检查扩展文件是否存在:
ls /usr/lib/php/20190902/ddtrace.so(20190902 是 PHP 7.4 的 ZTS/NTS 标识) - 在对应 php.ini 中添加(注意是 php-fpm.ini 或 apache2/php.ini,不是 CLI 的):
extension=ddtrace.so
datadog.trace.enabled=1
datadog.service=your-app-name
datadog.env=prod - 重启 PHP 服务:
sudo systemctl restart php7.4-fpm(FPM)或
sudo systemctl restart apache2(Apache)
关联日志与追踪(让日志带 trace_id)
仅开启 APM 不够,要让错误日志、业务日志能点击跳转到完整调用链,必须注入上下文:
立即学习“PHP免费学习笔记(深入)”;
- 使用 Monolog 示例(Laravel/Symfony 常见):
$logger->info('Order created', [
'dd.trace_id' => \DDTrace\trace_id(),
'dd.span_id' => \DDTrace\span_id(),
'order_id' => 12345
dd.trace_id:*<br> </li> </ul> <H3>验证是否生效</H3> <p>启动后 1–2 分钟内检查:</p> <ul> <li>Datadog UI → APM → Services 查看是否有 <code>your-app-name 出现 - 触发一个 HTTP 请求(如
/health),再刷新 Traces 页面,应看到新 trace - 执行
php -m | grep ddtrace,输出含ddtrace表示扩展加载成功 - 查看 Agent 日志:



















