kikimarik/lognote

日志的Composer包

v1.0.0 2022-07-13 12:16 UTC

This package is auto-updated.

Last update: 2024-09-13 17:50:49 UTC


README

功能

  • 面向对象设计(无静态方法等)
  • 兼容PHP 7.1及更高版本,包括PHP 8.1
  • 支持json格式
  • 可以将日志写入文件或打印到控制台输出

你需要它的原因

该库帮助PHP开发者以不同级别记录应用程序事件。已实现6个级别:错误、警告、信息、致命、注意和调试。

Lognote有一个优雅的面向对象设计,它的简洁性将让您感到满意。在测试依赖于该库组件的类之前,很容易用伪类替换这个依赖。

一个简单的例子

<?php

use kikimarik\lognote\format\JsonLogLineFormat;
use kikimarik\lognote\Log;
use kikimarik\lognote\MessageLogLine;
use kikimarik\lognote\target\FileLogTarget;

//Load Composer's autoloader
require_once __DIR__ . "/../vendor/autoload.php";

$log = new Log(new FileLogTarget(__DIR__ . "/example.log", true), new JsonLogLineFormat());
$log->receiveInfo(new MessageLogLine("Start script info"));
$log->receiveWarning(new MessageLogLine("I`m the warning example"));
$log->receiveInfo(new MessageLogLine("End script info"));
/**
 * It will create file example.log in current dir with content like:
{"date":"2022-06-15 19:25:10","level":"info","message":"Start script info"}
{"date":"2022-06-15 19:25:10","level":"warning","message":"I`m the warning example"}
{"date":"2022-06-15 19:25:10","level":"info","message":"End script info"}
 */

许可证

本软件基于MIT许可证分发。

安装

  • 通过composer composer require kikimarik/lognote

测试

Lognote测试使用Codeception 4.2.0框架。所有单元测试必须通过。

要运行测试,可以运行以下命令:./vendor/bin/codecept run