samplejunction/laravel-logger-for-teams

Laravel 处理器,用于通过Incoming Webhook连接器将消息发送到Microsoft Teams

v1.0.3 2019-06-24 19:07 UTC

This package is auto-updated.

Last update: 2024-09-26 05:50:11 UTC


README

Latest Version on Packagist Software License Total Downloads

Laravel 处理器,通过Incoming Webhook连接器将消息发送到Microsoft Teams。

安装

使用composer安装此包。

$ composer require samplejunction/laravel-logger-for-teams

集成

包已测试且与Laravel和Lumen框架(5.7+)兼容。使用laravel日志文件创建自定义通道或为Lumen创建新的日志配置文件。

将以下配置添加到config/logging.php文件

'teams' => [
    'driver'    => 'custom',
    'via'       => \SampleJunction\LaravelLoggerForTeams\LoggerChannel::class,
    'level'     => 'debug',
    'url'       => env('INCOMING_WEBHOOK_URL'),
    'style'     => 'simple',    // Available style is 'simple' and 'card', default is 'simple'
],

或简单添加名称以指定不同项目的名称。

'teams' => [
    'driver'    => 'custom',
    'via'       => \SampleJunction\LaravelLoggerForTeams\LoggerChannel::class,
    'level'     => 'debug',
    'url'       => env('INCOMING_WEBHOOK_URL'),
    'style'     => 'simple',    // Available style is 'simple' and 'card', default is 'simple'
    'name'      => 'Dummy Project'
],

为Microsoft Teams消息提供两种可用样式:简单和卡片。您可以在结果样式中查看卡片样式,它与简单样式不同。

在将配置添加到您的config/logging.php文件后,将INCOMING_WEBHOOK_URL变量添加到您的.env文件中,并使用您的Microsoft Teams连接器的连接器URL。请阅读Microsoft Teams文档以找到您的连接器URL。

用法

要将简单的错误消息发送到teams通道,请使用以下脚本

Log::channel('teams')->error('Error message');

或者,您可以使用日志上下文向卡片消息添加更多信息。

Log::channel('teams')->error('Error message', [
    [
        'name'  => 'Assigned to',
        'value' => 'Unassigned',
    ]
]);

在简单样式下,日志上下文将忽略消息。

您还可以将teams添加到默认的stack通道,以便所有错误都自动发送到teams通道。

'channels' => [
    'stack' => [
        'driver' => 'stack',
        'channels' => ['single', 'teams'],
    ],
],

结果

以下是一些使用卡片样式发送到Microsoft Teams通道的通知结果。

  • Microsoft Teams通道中的调试日志预览 截图

  • Microsoft Teams通道中的信息日志预览 截图

  • Microsoft Teams通道中的通知日志预览 截图

  • Microsoft Teams通道中的警告日志预览 截图

  • Microsoft Teams通道中的错误日志预览 截图

  • Microsoft Teams通道中的关键日志预览 截图

  • Microsoft Teams通道中的警报日志预览 截图

  • Microsoft Teams频道中紧急日志预览 屏幕截图

许可协议

此laravel-teams-logging包在MIT许可协议下可用。请参阅LICENSE文件以获取更多信息。