turbo124/collector

此包已被废弃,不再维护。作者建议使用 turbo124/beacon 包。

laravel 应用级别的数据收集器包

v2.0.2 2024-06-27 01:23 UTC

README

Beacon - 一个 Laravel 应用指标收集器包。

Latest Version on Packagist Total Downloads

此收集器实现了一个原生的 Laravel 解决方案来收集应用统计数据。目前,要启用此类功能,您需要在您的服务器上安装 Node 和 StatsD,然后开始将数据管道化。接下来,您需要安装第三方应用程序来处理数据并将其显示出来。

此客户端是 LightLogs 应用框架的一部分,该框架允许从单个开源应用程序中提取和显示数据。

安装

您可以通过 composer 安装此包

composer require turbo124/beacon

用法

发送指标的标准方法是创建一个静态属性类(请参阅 /src/ExampleMetric/GenericCounter)并构建一个类似这样的收集器

LightLogs::create(new GenericCounter())
        ->increment()
        ->batch();

这将批量处理指标请求,并且底层的调度器作业将每5分钟处理一次所有指标(请注意,您需要运行 Laravel 调度器以分派这些作业)。

虽然不建议在生产环境中这样做,因为会增加延迟开销,但如果您的指标需要立即触发,您可以使用以下方法同步执行。

LightLogs::create(new GenericCounter())
        ->increment()
        ->send();

处理需要立即触发且不阻塞的作业的更好方法是使用 ->queue() 方法,这将向应用程序的队列分派一个作业

LightLogs::create(new GenericCounter())
        ->increment()
        ->queue();

测试

composer test

更新日志

请参阅 更新日志 以获取有关最近更改的更多信息。

贡献

请参阅 贡献指南 了解详细信息。

安全

如果您发现任何与安全相关的问题,请通过电子邮件 turbo124@gmail.com 而不是使用问题跟踪器。

鸣谢

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件