datadog/php-datadogstatsd

一个极其简单的PHP datadogstatsd客户端


README

CircleCI Author Packagist Version Total Downloads

这是一个极其简单的PHP DogStatsD客户端。

需要PHP >= 5.6.0。

查看CHANGELOG.md了解更改。

有关特定于Laravel的实现,该实现封装了此库,请参阅laravel-datadog-helper

安装

将以下内容添加到您的composer.json

"datadog/php-datadogstatsd": "1.5.*"

Composer中首次发布的版本是0.0.3

或手动克隆此存储库,并用require './src/DogStatsd.php'。设置

安装完成后,打开PHP的套接字扩展,该扩展必须在编译时通过给configure命令行选项传递--enable-sockets来启用。

配置

使用composer实例化DogStatsd对象

<?php

require __DIR__ . '/vendor/autoload.php';

use DataDog\DogStatsd;

$statsd = new DogStatsd(
    array('host' => '127.0.0.1',
          'port' => 8125,
     )
  );

DogStatsd构造函数接受一个配置数组。请参阅DogStatsD客户端实例化参数的完整列表。

在Kubernetes中使用UDP进行源检测

源检测是一种检测DogStatsD数据包来自哪个Pod的方法,以便将Pod的标签添加到标签列表中。

要启用UDP上的源检测,请将以下行添加到您的应用程序清单中

env:
  - name: DD_ENTITY_ID
    valueFrom:
      fieldRef:
        fieldPath: metadata.uid

DogStatsD客户端附加了一个内部标签entity_id。此标签的值是DD_ENTITY_ID环境变量的内容,即Pod的UID。代理使用此标签推断数据包的来源,并相应地标记度量。

用法

为了使用DogStatsD度量、事件和服务检查,代理必须运行并可用

度量

创建客户端后,您可以将自定义度量发送到Datadog。请参阅专门的度量提交:DogStatsD文档,了解如何使用示例代码将所有支持的度量类型提交到Datadog。

在提交度量时支持一些选项,例如为您的度量应用样本率使用自定义标签标记您的度量

事件

创建客户端后,您可以将事件发送到您的Datadog事件流。请参阅专门的事件提交:DogStatsD文档,了解如何将事件提交到您的Datadog事件流。

服务检查

客户端创建后,您可以开始向Datadog发送服务检查。请参阅专门的服务检查提交:DogStatsD文档以了解如何将服务检查提交给Datadog。

路线图

  • 编写单元测试
  • 记录服务检查功能

测试

composer test

代码风格检查

composer lint

修复代码风格检查问题

composer fix-lint