mondago/laravel-application-insights

一个用于将应用洞察发送到微软应用洞察的 Laravel 8 包

0.70.0 2023-02-15 16:30 UTC

This package is auto-updated.

Last update: 2024-09-30 02:07:59 UTC


README

安装

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

"repositories": [
    {
      "type": "git",
      "url": "https://github.com/mondago/ApplicationInsights-PHP"
    },
    {
        "type": "git",
        "url": "https://github.com/mondago/laravel-azure-application-insights"
    }
],

并在您的 composer.json 文件中的 "require" 部分添加以下行

"mondago/laravel-application-insights": "^0.6.0"

可选地,您可以使用以下命令发布此包的配置文件

php artisan vendor:publish --provider="Mondago\ApplicationInsights\ServiceProvider"

中间件

作为便利,您可以选择使用 Mondago\ApplicationInsights\Middleware\TrackRequest 中间件,该中间件会将请求和响应发送到应用洞察。中间件利用 Laravel 的 可终止中间件 确保跟踪请求不会阻塞响应的发送。

从 0.6.2 版本开始,如果请求已启动会话,则此中间件将设置会话 ID 为匿名用户 ID 以允许跟踪用户流程。请确保将其包含在您想要跟踪请求的路由组中,因为将其附加到全局中间件将导致会话永远不会设置。您可以通过将环境变量 APPINSIGHTS_TRACK_ANONYMOUS_USERS 设置为 false 来禁用此功能。

日志记录

从 0.6.2 版本开始,提供了一个自定义的 monolog 处理程序,用于将日志发送到应用洞察。此处理程序捕获异常以及其他日志级别。异常作为异常进行跟踪,而日志消息则发送与其最接近的严重级别。

要使用此功能,请使用以下内容更新您的 config/logging.php 配置

'channels' => [
    // other channels...
    'app-insights' => [
        'driver' => 'custom',
        'via' => Mondago\ApplicationInsights\Logging\CreateApplicationInsightsLogger::class,
    ],
]

然后您可以选择将其包含在您的 stack 日志处理程序中

'channels' => [
    // other channels...
    'stack' => [
        'driver' => 'stack',
        'channels' => ['stderr', 'daily', 'app-insights'],
    ],
]

记录迁移

当启用时,此包会自动将迁移事件发送到应用洞察。从 0.6.2 版本开始,这包括没有运行迁移的情况。这对于在启动时运行 php artisan migrate 的容器镜像非常有用。

支持矩阵