Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

A package to send gelf logs to a gelf compatible backend like graylog

License

NotificationsYou must be signed in to change notification settings

hedii/laravel-gelf-logger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build StatusTotal DownloadsLicenseLatest Stable Version

Laravellaravel-gelf-logger
5.6^3.0
5.8^3.1
6.0^4.0
7.0^5.0
8.0^5.3
8.0^6.0 (with php 8)
9.0^7.0
10.0^8.0
11.0^9.0
12.0^10.0

A package to sendgelf logs to a gelf compatible backend like graylog. It is a Laravel wrapper forbzikarsky/gelf-php package.

It uses the newLaravel custom log channel introduced in Laravel 5.6.

A gelf receiver like graylog2 must be configured to receive messages with a GELF UDP, TCP or HTTP Input.

Table of contents

Installation

Install viacomposer

composer require hedii/laravel-gelf-logger

Editconfig/logging.php to add the newgelf log channel.

return ['default' =>env('LOG_CHANNEL','stack'),'channels' => [// You can use the gelf log channel with the stack log channel'stack' => ['driver' =>'stack','channels' => ['daily','gelf'],        ],// other log channels...'gelf' => ['driver' =>'custom','via' => \Hedii\LaravelGelfLogger\GelfLoggerFactory::class,// This optional option determines the processors that should be// pushed to the handler. This option is useful to modify a field// in the log context (see NullStringProcessor), or to add extra// data. Each processor must be a callable or an object with an// __invoke method: see monolog documentation about processors.// Default is an empty array.'processors' => [                \Hedii\LaravelGelfLogger\Processors\NullStringProcessor::class,                \Hedii\LaravelGelfLogger\Processors\RenameIdFieldProcessor::class,// another processor...            ],// This optional option determines the minimum "level" a message// must be in order to be logged by the channel. Default is 'debug''level' =>'debug',// This optional option determines the channel name sent with the// message in the 'facility' field. Default is equal to app.env// configuration value'name' =>'my-custom-name',// This optional option determines the system name sent with the// message in the 'source' field. When forgotten or set to null,// the current hostname is used.'system_name' =>null,// This optional option determines if you want the UDP, TCP or HTTP// transport for the gelf log messages. Default is UDP'transport' =>'udp',// This optional option determines the host that will receive the// gelf log messages. Default is 127.0.0.1'host' =>'127.0.0.1',// This optional option determines the port on which the gelf// receiver host is listening. Default is 12201'port' =>12201,// This optional option determines the chunk size used when// transferring message via UDP transport. Default is 1420.'chunk_size' =>1420,// This optional option determines the path used for the HTTP// transport. When forgotten or set to null, default path '/gelf'// is used.'path' =>null,// This optional option enable or disable ssl on TCP or HTTP// transports. Default is false.'ssl' =>false,// If ssl is enabled, the following configuration is used.'ssl_options' => [// Enable or disable the peer certificate check. Default is// true.'verify_peer' =>true,// Path to a custom CA file (eg: "/path/to/ca.pem"). Default// is null.'ca_file' =>null,// List of ciphers the SSL layer may use, formatted as// specified in ciphers(1). Default is null.'ciphers' =>null,// Whether self-signed certificates are allowed. Default is// false.'allow_self_signed' =>false,            ],// If you want to send messages to the gelf server using http basic// authentication, the following configuration is used. Only useful// if transport is set to http.'http_basic_auth' => [// The http basic authentication username.'username' =>null,// The http basic authentication password.'password' =>null,            ],// This optional option determines the maximum length per message// field. When forgotten or set to null, the default value of// \Monolog\Formatter\GelfMessageFormatter::DEFAULT_MAX_LENGTH is// used (currently this value is 32766)'max_length' =>null,// This optional option determines the prefix for 'context' fields// from the Monolog record. Default is null (no context prefix)'context_prefix' =>null,// This optional option determines the prefix for 'extra' fields// from the Monolog record. Default is null (no extra prefix)'extra_prefix' =>null,// This optional option determines whether errors thrown during// logging should be ignored or not. Default is true.'ignore_error' =>true,        ],    ],];

Usage

Once you have modified the Laravel logging configuration, you can use the gelf log channelas any Laravel log channel.

Example

// Explicitly use the gelf channelLog::channel('gelf')->debug($message, ['foo' =>'bar']);Log::channel('gelf')->emergency($message, ['foo' =>'bar']);// In case of a stack log channel containing the gelf log channel and stack// configured as the default log channelLog::notice($message, ['foo' =>'bar']);// Using the logger helperlogger($message,$context);

Testing

composer test

License

laravel-gelf-logger is released under the MIT Licence. See the bundledLICENSE file for details.

About

A package to send gelf logs to a gelf compatible backend like graylog

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp