ricardosierra/larametrics

Laravel应用的托管指标和通知平台

资助包维护!
aschmelyun

安装: 471

依赖项: 1

建议者: 0

安全: 0

星标: 2

观察者: 0

分支: 54

语言:CSS

v1.2.4 2020-09-13 16:56 UTC

This package is auto-updated.

Last update: 2024-09-14 02:23:16 UTC


README

Current Version License Build Status Total Downloads

Larametrics是一个Laravel应用的托管指标和通知平台,它可以记录并通知你模型、接收到的请求和写入日志的消息的变化。

完整的文档可以在这里找到,下面是快速入门指南。

Screenshot of Larametrics Dashboard

要求

  • PHP 5.6.4或更高版本
  • Laravel 5.2或更高版本
  • guzzlehttp/guzzle(如果启用通知)

安装

Larametrics通过Composer以独立包的形式安装

composer require aschmelyun/larametrics

Composer完成后,如果您不在Laravel 5.5或更高版本上,您需要将以下行添加到您的config/app.php文件中

Aschmelyun\Larametrics\LarametricsServiceProvider::class

此外,您可能需要复制配置文件并使用以下命令添加必要的数据库结构:

php artisan vendor:publish --provider="Aschmelyun\Larametrics\LarametricsServiceProvider"
php artisan migrate

注意:通知使用队列作业来防止应用程序响应时间延迟。如果您尚未为队列设置此数据库表,请运行php artisan queue:table && php artisan migrate

显示仪表板

一旦将包与您的Laravel应用程序绑定,它将根据默认配置文件收集数据并将其存储在数据库中。为了查看与Larametrics关联的仪表板以及分析指标和通知,您需要在您选择的路由文件中添加一个辅助方法。

\Aschmelyun\Larametrics\Larametrics::routes();

根据需要将仪表板包含在(和如何显示)您想要的位置。为了参考,所有Larametrics路由都包含在/metrics前缀下,但您可以调整路由显示的位置。

在以下示例中,Larametrics仪表板将仅对登录用户且访问/admin/metrics的人可见。

// routes/web.php
Route::group(['middleware' => 'auth', 'prefix' => 'admin'], function() {
    \Aschmelyun\Larametrics\Larametrics::routes();
});

配置

在您的Laravel应用程序中使用Larametrics的配置主要在config/larametrics.php文件中进行。每个项目在上面的注释行中都有详细的说明,描述该项目的作用和期望的值。

根据是否使用通知,您需要设置两个.env变量

  • LARAMETRICS_NOTIFICATION_EMAIL,所有电子邮件通知都将路由到的地址
  • LARAMETRICS_NOTIFICATION_SLACK_WEBHOOK,用于接收请求并将消息添加到指定通道的Slack webhook。更多信息这里

此外,还有一些其他特定于通知的变量可以设置。以下是每个变量的简要描述,或更多详细信息请参阅文档网站。

  • LARAMETRICS_FROM_EMAIL,通知将显示为发送的电子邮件地址
  • LARAMETRICS_FROM_NAME,将显示在相关的电子邮件通知旁边的名称
  • LARAMETRICS_MODEL_SUBJECT,当模型被创建/更新/删除时到达的通知电子邮件的主题
  • LARAMETRICS_LOG_SUBJECT,当记录应用程序日志事件时到达的通知电子邮件的主题
  • LARAMETRICS_ROUTE_SUBJECT,当访问路由时到达的通知电子邮件的主题

路线图

Larametrics仍在开发中,不断优化并尝试与较旧的Laravel版本兼容。以下是未来的道路

  • 添加忽略特定请求路径的能力
  • 将自定义webhook集成到通知选项中
  • 将监听器从根目录移出,放入它们自己的命名空间
  • 优化前端以适应移动设备
  • 扩展通知过滤器选项
  • 集成Twilio进行短信通知
  • 优化数据库查询以过期模型提高性能
  • 添加Artisan命令以显示Larametrics数据
  • 添加队列监视器
  • 添加定时任务监视器
  • 兼容Laravel 4.2+

与Laravel Telescope的区别

2018年10月,Taylor Otwell宣布了Laravel Telescope,它作为Laravel应用程序的调试工具。有关LarametricsTelescope的区别,请参阅此处讨论

联系方式

有疑问吗?在这里提交!想要联系?请随时通过Twitter向我提出任何类型的一般问题或评论。

许可证

MIT许可证(MIT)。有关更多详细信息,请参阅LICENSE.md