scissorhands/ci-logs

安装量: 10,387

依赖: 0

建议者: 0

安全性: 0

星星: 2

关注者: 2

分支: 0

公开问题: 0

类型:项目

1.0.5 2017-02-13 20:53 UTC

This package is auto-updated.

Last update: 2024-09-09 13:11:55 UTC


README

Codeigniter 和 Monolog 的简单集成

安装

使用 composer 安装 composer require scissorhands/ci-logs

测试

编辑 composer.json 文件中的 autoload 部分

"autoload": {
    "psr-4": {
        "ciutil\\": "vendor/scissorhands/ci-utilities/",
        "cilogs\\": "vendor/scissorhands/ci-logs/"
    }
}

添加一个新的迁移文件,扩展自库迁移

<?php
use cilogs\application\migrations\Create_logs_table as Logs_migration;
defined('BASEPATH') OR exit('No direct script access allowed');

class Migration_Create_logs_table extends Logs_migration {

	public function __construct()
	{
		parent::__construct();
	}
}

运行迁移

创建 Logger 模型并扩展自库模型

<?php
use cilogs\application\models\Logger_model as CILogger;
defined('BASEPATH') OR exit('No direct script access allowed');

class Logger_model extends CILogger {
	public function __construct()
	{
		parent::__construct();
	}
}

创建示例控制器

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Test extends CI_Controller {

	public function __construct()
	{
		parent::__construct();
		$this->load->model('logger_model', 'logger');
		$this->logger->init('testing', [
			'log_table' => 'app_logs',
			'extra_fields' => ['client_id']
		]);
	}

	public function log2db()
	{
		$this->logger->log('Hello world', [
			'client_id' => 123456,
		], 'info');
	}

}

运行示例 php index.php test log2db

用法

加载并初始化模型

$this->load->model('logger_model', 'logger');
$this->logger->init('channel_name', [
	'log_table' => 'table_name',
	/* Extra fields in case you need them */
	//'extra_fields' => ['extra_field']
]);

将日志记录到数据库和文件中

$this->logger->log('message_to_log', [/*extra_fields_associative_array*/], 'log_level');