Stackdriver Trace PHP:如何在后台发送跨度?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Stackdriver Trace PHP:如何在后台发送跨度?相关的知识,希望对你有一定的参考价值。

根据https://cloud.google.com/trace/docs/setup/php,适用于php的App Engine灵活环境可以运行后台程序,该后台程序在后台而不是请求处理的一部分将跟踪范围发送到Stackdriver,这可能会导致响应延迟增加。

我正在运行Kubernetes Engine,但仍想在后台发送跟踪请求。因此:

  1. 是否可以自己运行该批处理守护程序?
  2. 出于好奇,Stackdriver PHP Exporter如何将这些范围传递给守护程序?我试图在源代码中进行搜索,但无法找到完成的方法。
  3. 如果不可能使用#1,是否还有另一种方法可以在后台执行跨度发送?

[Stackdriver Trace with Google Cloud Run似乎涵盖了类似的主题,但没有解决如何手动运行守护程序。

答案

如果其他人正在寻找这个,我可以按如下方式运行批处理守护程序:

sudo -u www-data vendor/bin/google-cloud-batch daemon

请注意,守护程序本身必须与您的“正在服务”的PHP进程必须以同一用户身份运行,以便访问两者之间共享的SysV内存,从而访问sudo。您还将需要启用PHP sysv和pcntl扩展。

以上是关于Stackdriver Trace PHP:如何在后台发送跨度?的主要内容,如果未能解决你的问题,请参考以下文章

Stackdriver Trace 与 Google Cloud Run

来自文件的 C# Stackdriver Trace 凭据

用于 Stackdriver Trace 的 Google Cloud Java 客户端

php [stackdriver] PHP Stackdriver调试器#cloud

Spring-Cloud-Gateway 创建的初始 Trace 都命名为“/”,无论路径如何

如何在 Stackdriver 中导出以前的日志