欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

thinkphp 日志记录没有文件生成

程序员文章站 2022-06-05 08:29:33
...
我在官网文档上看到只要是调试模式 日志就会记录。可我的日志文件怎么弄都不会生成。
index.php内容是:


页面内容是:


请问还需要配置什么才会在Logs目录里出现日志文件。


回复讨论(解决方案)

1、日志的记录并非实时保存的,只有当当前请求完成或者异常结束后才会实际写入日志信息,否则只是记录在内存中。
2、record方法只会记录当前配置允许记录的日志级别的信息,所以你还需要配置一下记录的级别:
'LOG_LEVEL' =>'EMERG,ALERT,CRIT,ERR', // 只记录EMERG ALERT CRIT ERR 错误
3、采用record方法记录的日志信息不是实时保存的,如果需要实时记录的话,可以采用write方法,write方法写入日志的时候 不受配置的允许日志级别影响,可以实时写入任意级别的日志信息:
Think\Log::write('测试日志信息,这是警告级别,并且实时写入','WARN');

调试模式会自动开启debug.php

/** * ThinkPHP 默认的调试模式配置文件 */defined('THINK_PATH') or exit();// 调试模式下面默认设置 可以在应用配置目录下重新定义 debug.php 覆盖return  array(    'LOG_RECORD'            =>  true,  // 进行日志记录    'LOG_EXCEPTION_RECORD'  =>  true,    // 是否记录异常信息日志    'LOG_LEVEL'             =>  'EMERG,ALERT,CRIT,ERR,WARN,NOTIC,INFO,DEBUG,SQL',  // 允许记录的日志级别    'DB_FIELDS_CACHE'       =>  false, // 字段缓存信息    'DB_SQL_LOG'            =>  true, // 记录SQL信息    'TMPL_CACHE_ON'         =>  false,        // 是否开启模板编译缓存,设为false则每次都会重新编译    'TMPL_STRIP_SPACE'      =>  false,       // 是否去除模板文件里面的html空格与换行    'SHOW_ERROR_MSG'        =>  true,    // 显示错误信息    'URL_CASE_INSENSITIVE'  =>  false,  // URL区分大小写);

我将 页面内容改为




还是没用。Logs目录就是不生成文件。。求解

你是部署问题还是啥哟?检查下文件夹下的操作权限。

http://document.thinkphp.cn/manual_3_2.html#log
http://blog.sina.com.cn/s/blog_7fb1495b0100xkk8.html
看看就会了

楼主,你的问题很可能是你把Runtime/Logs/下面的Home目录,或者你绑定的其它目录给删除了。重建一个看看。

你是操作的HOME模块吗 如果不是 像我操作的是Admin模块 就自己在Runtime/Logs/下建一个Admin目录