tokenly/fluentd-logger 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tokenly/fluentd-logger

最新稳定版本:v1.2.0

Composer 安装命令:

composer require tokenly/fluentd-logger

包简介

A Fluentd logging component for Laravel

README 文档

README

Sends application log messages and events to a fluentd log shipper.

Installation

Add the package via composer

composer require tokenly/fluentd-logger

Usage with Laravel

Add the Service Provider

Add the following to the providers array in your application config:

Tokenly\FluentdLogger\FluentdLoggerServiceProvider::class,

Set the environment variables

APP_CODE=myapp
FLUENTD_ENABLED=true
FLUENTD_APPLOG_LEVEL=debug

# this makes the default Laravel monolog handler very quiet to not fill up the hard drive
APP_LOG_LEVEL=emergency

# for a local fluentd instance
FLUENTD_SOCKET=/tmp/fluentd.sock

# if using a remote fluentd server (or fluent bit)
# FLUENTD_HOST=127.0.0.1
# FLUENTD_PORT=5170

# if using fluent bit
# FLUENTD_USE_FLUENT_BIT=true

Standard Log Events

Normal log events are sent to fluentd using standard Laravel logging functions

Illuminate\Support\Facades\Log::info("hello world");

Measurement Events

To measure an event, use fluent_measure($event, $data=[], $tags=null);

fluent_measure('widget.created', ['widgets' => 4], ['username' => 'leroy']);

$data should contain numeric data. Think of $tags as additional indexes for that data. A timestamp is included by default.

Usage without Laravel

$fluent_logger = new \Tokenly\FluentdLogger\FluentLogger($host, $port);

# set a tag prefix
$app_code = 'myapp';
$environment = 'production';
$tag = 'applog.'.$app_code.'.'.$environment;

# set up monolog
$monolog->pushHandler(new \Tokenly\FluentdLogger\FluentMonologHandler($fluent_logger, $tag));

# set up fluent event logger for measurements
$measurement_logger = new \Tokenly\FluentdLogger\FluentEventLogger($fluent_logger, 'measure.'.$app_code.'.'.$environment);

# Or, instead of the above, set up fluent using fluent bit event logger for measurements
# $measurement_logger = new \Tokenly\FluentdLogger\FluentEventLogger($fluent_logger, 'measure.'.$app_code.'.'.$environment, [], new \Tokenly\FluentdLogger\Packer\FluentBitJsonPacker());


# use monolog
$monolog->info("hi world");

# use measurements
$measurement_logger->log('widget.created', ['widgets' => 4], ['username' => 'leroy']);

统计信息

  • 总下载量: 18.71k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 3
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-06-09