tsfcorp/graylog

用于创建和向Graylog发送消息的库

v0.0.10 2021-03-10 10:14 UTC

This package is auto-updated.

Last update: 2024-09-10 17:34:47 UTC


README

用于组合和向Graylog发送消息的Fluent接口。

此包旨在与独立项目或项目集群一起使用,这些项目将消息推送到作为收集器的父项目/数据库。

如果您以集群模式使用此包,请确保在主项目中运行进程 php artisan graylog:dispatch-jobs。这可以通过 supervisor 保持运行。

安装

在您的 composer.json 中要求此包并更新composer。运行以下命令

composer require tsfcorp/graylog

更新composer后,服务提供程序将自动通过自动发现注册和启用

如果您的Laravel版本低于5.5,请确保您在 app.php 配置文件中添加了服务提供程序。

'providers' => [
    // ...
    TsfCorp\Graylog\GraylogServiceProvider::class,
];

下一步是运行 artisan 命令以安装配置文件和可选的迁移文件。该命令将引导您完成此过程。

php artisan graylog:install

使用您的设置更新 config/graylog.php

要求

此包使用Laravel队列/作业将消息发送到Graylog。请确保已正确配置队列系统。

使用说明

use TsfCorp\Graylog\GraylogMessage;

$message = (new GraylogMessage)
    ->setLevel(GraylogMessage::ERROR)
    ->setShortMessage('Short message.')
    ->setFullMessage('Full message.')
    ->setSubsystem('subsystem')
    ->setAdditional('custom_1', 'value_1')
    ->setAdditional('custom_2', 'value_2')
    ->setContext([
        'prop' => 'value'
    ]);

使用 enqueue() 方法将消息保存到数据库而无需发送到Graylog。当您只想保存消息但延迟发送时很有用。或者当 database_connection 配置值是另一个数据库且发送是从那里执行时。

$message->enqueue();

保存消息并安排作业将消息发送到graylog

$message->enqueue()->dispatch();