yoursurprisecom/monolog-dd-udp-handler

Monolog Datadog UDP Handler

v1.6.4 2024-09-06 07:20 UTC

README

workflow Minimum PHP Version phpstan License: MIT

概述

Monolog 处理器会将消息发送到 dd-log-proxy 通过 UDP,而 dd-log-proxy 将消息通过 TCP 发送到 Datadog API。

Datadog 日志代理

此处理器是为了与用 go 编写的 Datadog 日志代理 一起使用。代理可以作为容器运行在与您应用程序相邻的位置,作为 sidecar 或作为独立服务。

一个代理针对所有应用程序

由于此处理器从当前跟踪中收集信息,因此只需要一个代理来处理所有应用程序。日志将连接到正确的跟踪和服务。

用法

使用 composer 安装包: composer require yoursurprisecom/monolog-dd-udp-handler

只需创建具有代理主机名和端口的处理器,并将处理器推送到 monolog

<?php

use Monolog\Logger;
use YourSurpriseCom\Monolog\DatadogUdp\Handler\DataDogUdpHandler;

$logger  = new Logger('my_logger');
$handler = new DataDogUdpHandler("<proxy host>",1053);
$logger->pushHandler($handler);

$logger->info("This log message is sent non blocking over UDP to Datadog!");

数据流

数据流如下

+-----+       +-------------------------+             +--------------+             +-------------+ 
| PHP |  ==>  | Monolog Datadog Handler |  ==> (UDP)  | dd-log-proxy |  ==> (TCP)  | Datadog API |
+-----+       +-------------------------+             +--------------+             +-------------+ 

Datadog

此处理器使用 Datadog PHP ddtrace 包 来收集有关当前跨度跟踪的信息。日志将与 UI 中的跟踪连接。

它还将创建自己的 Datadog 服务 log-proxy,并具有自己的跨度。