cmever/log

cmever 日志包

1.0.3 2021-01-12 09:22 UTC

This package is not auto-updated.

Last update: 2024-10-02 03:35:17 UTC


README

用于内部服务记录日志,统一收口方便管理

安装方法

使用 composer 包管理工具进行安装。安装包管理工具请参考 http://www.phpcomposer.com/。安装完成后,在项目根路径下(包含 composer.json),执行以下指令进行安装:

composer require cmever/log

快速入门

在安装好依赖包后,通过以下三个步骤即可向 ES 发送日志:

第一步:引入 composer 自动加载

如果没有使用基于 composer 的框架,则需要自行引入 autoload.php 文件

use cmever\Log\ESLog;
// 1. load autoload.php
require(__DIR__.'/../vendor/autoload.php');

第二步:全局配置

// 2. init config
ESLog::setGlobalConfig([
    'log_url' => 'http://logserver',
    'server_name' => 'demo',
]);

第三步:记录日志

// 3. use ESLog to log info
$logger = new ESLog();
$res = $logger->info('test.info', 'log info demo', [
    'key' => [
        'key1' => 'sec'
    ]
]);

完整代码

<?php
use cmever\Log\ESLog;
// 1. load autoload.php
require(__DIR__.'/../vendor/autoload.php');

// 2. init config
ESLog::setGlobalConfig([
    'log_url' => 'http://logserver',
    'server_name' => 'demo',
]);

// 3. use ESLog to log info
$logger = new ESLog();
$res = $logger->info('test.info', 'log info demo', [
    'key' => [
        'key1' => 'sec'
    ]
]);

// 4. please to check es server logs
if ($res) {
    echo "Log successfully";
} else {
    echo "Log error!";
}

demos

提供的内置demo,可在对应文件夹中找到并在命令行中执行测试,例如:

$ php demos/simple_es_log.php
Log successfully

日志内置方法

debug/info/warning/error/fatal

方法类型

成员方法

作用

用于记录不同级别的日志,在对应字段中有所体现

参数
使用示例
$logger = new ESLog();
$res = $logger->info('test.info', 'log info demo', [
    'key' => [
        'key1' => 'sec'
    ]
]);

setGlobalConfig

方法类型

静态方法

作用

覆盖全局默认配置,详细配置参数见后文

使用示例
ESLog::setGlobalConfig([
    'log_url' => 'http://logserver',
    'app_type' => 'demo',
]);

setConfig

方法类型

成员方法

作用

覆盖实例配置,详细配置参数见后文

使用示例
$logger = new ESLog();
$logger->setConfig([
    'log_url' => 'http://logserver',
    'server_name' => 'demo',
]);

ESLog可配置参数