ubatgroup/graylog

用于将日志发送到graylog的包

1.0 2018-03-16 09:00 UTC

This package is not auto-updated.

Last update: 2024-09-22 04:48:18 UTC


README

它是bzikarsky/gelf-php包的laravel封装。

此包是为内部需求开发的。没有计划维护。

安装

通过composer安装

composer require ubatgroup/graylog

仅适用于Laravel 5至5.3

将其添加到config/app.php中的providers数组

Ubatgroup\Graylog\GraylogServiceProvider::class

要使用外观,请将其添加到config/app.php中的aliases数组

'Graylog' => Ubatgroup\Graylog\Facades\Graylog::class

对于Laravel 5.4及以上版本

Laravel自动发现新包

composer dump-autoload

配置

将graylog配置设置到.env文件中

  • GRAYLOG_SERVER : graylog服务器IP(如果未设置此键,则使用127.0.0.1)
  • GRAYLOG_PORT : graylog服务器端口(如果未设置此键,则使用12201)
  • GRAYLOG_FACILITY : graylog设施过滤器(如果未设置此键,则使用APP_URL键)
  • GRAYLOG_APPNAME : graylog源过滤器(如果未设置此键,则使用APP_NAME键)
要覆盖配置文件

首先,发布配置文件

php artisan vendor:publish --provider="Ubatgroup\Graylog\GraylogServiceProvider"

在config/graylog.php中查看已发布的配置文件内容。

// Address serveur host
'server'   => env( 'GRAYLOG_SERVER', '127.0.0.1' ),
 
// Port server host
'port'     => env( 'GRAYLOG_PORT', 12201 ),
 
// facility to filter logs (common use application URL)
'facility' => env( 'GRAYLOG_FACILITY', env( 'APP_URL', null ) ),
 
// host to filter logs (common use application name)
'host'     => env( 'GRAYLOG_HOST', env( 'APP_NAME', null ) ),
 
// Add Auth::user data automatically as AdditionaData in every exception handle by the connected user
'auto_log_auth_user' => true,

用法

 Graylog::emergency( $message, array $context = array() );
 Graylog::alert( $message, array $context = array() );
 Graylog::critical( $message, array $context = array() );
 Graylog::error( $message, array $context = array() );
 Graylog::warning( $message, array $context = array() );
 Graylog::notice( $message, array $context = array() );
 Graylog::info( $message, array $context = array() );
 Graylog::debug( $message, array $context = array() );

请查看bzikarsky/gelf-php仓库中的示例,以找到Graylog外观的可用方法。

示例

Graylog::alert('There was a foo in bar', [
    'foo' => 'bar',
    'other_context_key' => 'other_context_value',
]);
try {
    throw new \Exception('Nice exception !');
} catch (\Exception $e) {
    Graylog::emergency('Exception handled !', [
        'exception' => $e,
        'additionnal_data' => 'Hello world!
    ]);
}

注意

  • 如果auto_log_auth_user配置键和Auth::check()true,则自动将Auth::user()数据添加到上下文数组(auth_user键)
  • 如果您需要使用$guard获取认证用户,则将auto_log_auth_user配置键设置为false,并将其手动添加到附加数据数组中
  • 请勿在附加数据上下文键中使用特殊/带重音的字符

许可证

此包根据MIT许可证发布。