fuelphp 日志文件保存路径以及日志文件名变更中遇到的问题总结
在不修改配置文件,也就是默认的情况下,fuelphp的日志文件是按照如下路径保存的 ?/fuel/app/logs文件夹是固定不变的,YYYY/MM/DD.php是根据日志的生成时间自动生成的。 即在默认情况下,文件夹YYYY和MM如果不存在就会自动生成 /fuel/app/logs/YYYY/MM/DD.php ? ? 如果想更改日志文件的保存位置,即不想保存在/fuel/app/logs 文件夹中,而要保存在其他地方,那么只要在fuel/app/config/config.php中修改log_path即可 //‘log_path‘ => APPPATH.‘logs/‘,‘log_path‘ => APPPATH.‘logs/batch‘,//① // ‘log_path‘ => APPPATH.‘logs/‘.date(‘Y/m‘).DS,// ② ? 注意:如果要修改log_path,一定要保证指定的路径要存在,否则会报错 我所犯的错误如②,指定的路径是随着时间的变化而变化的,一旦年份或者月份变更,指定的路径就不存在了,就会报错 ? 如果想修改文件名或者扩展名,那就要修改log_file。 ‘log_file‘ => date(‘d‘).‘.log‘,// "DD.php" という形式 注意:在不修改log_file的情况下,也就是默认情况下,fuelphp会在log_path指定的路径下自动生成YYYY文件夹和MM文件夹以及DD.php日志文件 但是一旦修改了log_file,那么就不会再自动生成YYYY文件夹和MM文件夹,而是按照指定的方式生成相应的文件和文件夹 ‘log_file‘ => date(‘d‘).‘.log‘,// 这种情况下,只会生成DD.log形式的日志文件,而不会生成文件夹,如果既想改文件名,也想和默认情况下生成YYYY和MM文件夹,可按如下方式设置
? 我的需求是只想改变日志文件的扩展名,即DD.php改为DD.log 初期修改如下 ‘log_file‘ => date(‘d‘).‘.log‘,// "DD.php" という形式 ‘log_path‘ => APPPATH.‘logs/‘.date(‘Y/m‘).DS,// APPPATH/YYYY/MM/ 结果刚改完后没什么错误,结果月份一变就报错了,原因如前面所述,月份变了后,log_path指定的路径不存在了。 正确的修改方式如下,其实只需修改log_file即可,只是要在文件名前加上变化的路径名 ‘log_file‘ => date(‘Y/m‘).DS.date(‘d‘).‘.log‘,// "DD.php" という形式 // ‘log_path‘ => APPPATH.‘logs‘.DS,// APPPATH/YYYY/MM/
总结:固定不变的路径部分设置log_path,变化的部分设置log_file。log_file不但可以设置文件名,也可以设置文件的后半部分的保存路径 log_path指定的路径要求必须存在,不会自动生成,不存在就会报错 log_file指定的路径不要求必须存在,若不存在就会自动生成,只是log_file指定的路径会保存在log_path保存的路径之下 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |