控制台日志
Swoft提供简便的控制台日志使用,便于在开发时打印调试信息。
配置
启动应用里面 (app\Application.php
) 重写父类方法,可以覆盖配置控制台日志参数。
namespace App;
use Swoft\SwoftApplication;
/**
* Class Application
*
* @since 2.0
*/
class Application extends SwoftApplication
{
public function getCLoggerConfig(): array
{
return [
'name' => 'swoft',
'enable' => true,
'output' => true,
'levels' => 'info,error',
'logFile' => ''
];
}
}
选项说明
name
名称enable
是否开启output
是否打印到控制台levels
输入日志的级别,为空全部输出,具体日志级别配置值,可以引用Logger::NOTICE/...
logFile
控制台日志默认打印到控制台,也可以配置路径,同时写到指定文件
swoft 2.0.3
levels
修改成字符串,方便开发者覆盖框架默认配置
使用
控制台日志可以直接使用框架提供的 CLog
类里面的静态方法操作。
- 每个日志级别方法都可以传递参数,底层是一个
sprintf()
函数封装 - 特殊的:
debug
日志级别,需要开启SWOFT_DEBUG
才会显示 - 框架内置不同级别不同颜色
// debug
CLog::debug('debug');
// info
CLog::info('info');
// warning
CLog::warning('warning');
// error
CLog::error('error');
// 2019/05/12-07:02:57 [DEBUG] Swoft\Processor\ConsoleProcessor:handle(33) debug
// 2019/05/12-07:02:57 [INFO] Swoft\Processor\ConsoleProcessor:handle(33) info
// 2019/05/12-07:02:57 [WARNING] Swoft\Processor\ConsoleProcessor:handle(33) warning
// 2019/05/12-07:02:57 [ERROR] Swoft\Processor\ConsoleProcessor:handle(33) error
关闭信息
默认情况下,启动时会打印一些启动信息到控制台。
如果你的
.env
开启了SWOFT_DEBUG=1
将会看到更多详细的启动与加载信息。
如果你想关闭这些信息,可以在 app/Application
添加:
public function getCLoggerConfig(): array
{
$config = parent::getCLoggerConfig();
// Disable print console log
$config['enable'] = false;
return $config;
}
修改保存后,重启swoft,可以看到不会有任何信息输出了。