jonnyanyc / gmetric-php
一个简单、轻量级的PHP客户端,用于通过UDP将Gmetric数据发送到Ganglia节点。
0.3.0-alpha2
2015-05-01 09:17 UTC
Requires
- php: >=5
Requires (Dev)
- php: >=5.5
- phpunit/phpunit: ~4.0
This package is not auto-updated.
Last update: 2024-09-24 04:09:55 UTC
README
一个非常简单、轻量级的PHP客户端,用于通过UDP将Gmetric数据发送到Ganglia节点。这使您可以将PHP应用程序与Ganglia集成,并通过Ganglia Web UI跟踪特定于应用程序的度量。
Ganglia会自动为任何新指标生成一个图表。因此,跟踪新指标只需要在应用程序中编写一行或两行代码。
消息以乐观方式通过单向、非阻塞UDP数据报发送。这使跟踪指标的成本尽可能接近零。
安装
最简单的方法是使用Composer
composer require jonnyanyc/gmetric-php:~0.2.0
或者将包手动添加到您的composer.json文件中
"require": { "jonnyanyc/gmetric-php": "~0.2.0" }
使用方法
$gmetric = new \jonnyanyc\Ganglia\Gmetric\Gmetric(); $gmetric->sendMetric("app1.job2.execution_time", "app", "float", 3.12, "hours"); $gmetric->sendMetric("app1.job2.method3.failures", "app", "uint16", 3, "failures"); // send more metrics if needed
如果您在本地运行gmond
,则可以使用Gmetric->useConfigFile()
方法来设置连接细节。此方法读取本地的gmond
配置文件,以设置应接收您的度量的服务器的主机和端口。它还设置报告度量时的主机名称。
如果您愿意,可以在创建Gmetric对象时定义这些设置。或者,您可以使用默认设置:将度量发送到本地主机UDP端口8649,并在报告度量时使用主机的默认主机名。
Gmetric字段
name
:您要跟踪的度量的名称。group
:一个任意组,其中该度量应在Ganglia Web界面中显示。将所有特定于应用程序的度量收集在名为“app”的组下,或根据服务、作业、消费者、类型(例如错误计数)等分别。type
:值的类型。有效值包括uint16
int16
uint32
int32
float
double
string
value
:您要为给定度量记录的值。unit
:您值的任意单位,它显示为图表的Y轴。例如:“秒”、“失败”、“行”等。valueTTL
:此度量的值的正常生存期(以秒为单位)。例如,每小时批处理作业的错误计数将有一个生存期为1小时(3600秒)。metricTTL
:Ganglia在未收到任何新值后还应显示图表的时间(以秒为单位)。例如,如果您将其设置为3天(259,200秒),则Ganglia将在3天的非活动后删除图表。先前数据将保留,因此如果您发送新值,图表将重新出现并带有历史数据。counter
:用于确定数据应如何存储在RRDtool中。在大多数情况下,您将想要使用默认的数据处理。如果您希望度量只会增加,可以传递“counter”值,这样RRDtool将存储增量。这相当于向Gmetric二进制文件的“slope”选项传递“positive”值。
即将推出
性能
详细信息待定。在初步测试中,发送值似乎小于1毫秒。