Php 如何在codeigniter中设置日志消息的限制

Php 如何在codeigniter中设置日志消息的限制,php,codeigniter,Php,Codeigniter,我对CodeIgniter中的log\u消息设置限制有一些问题, 我正在尝试使用 $config['log_file_permissions'] = 0644; 这是行不通的 在600行日志消息之后,我想创建新文件。有人能帮我吗?Q-在600行日志消息之后,我想创建新文件。 A-CI还没有这种功能 供日后参考 CI可以对要写入日志文件的数据进行分类。(例如:错误消息、调试消息、信息…) 您可以扩展system/core/Log.php并重写write\u Log($level,$msg)方

我对CodeIgniter中的
log\u消息设置限制有一些问题,
我正在尝试使用

$config['log_file_permissions'] = 0644;
这是行不通的


在600行日志消息之后,我想创建新文件。有人能帮我吗?

Q-在600行日志消息之后,我想创建新文件。
A-CI还没有这种功能


供日后参考 CI可以对要写入日志文件的数据进行分类。(例如:错误消息、调试消息、信息…)


您可以扩展
system/core/Log.php
并重写
write\u Log($level,$msg)
方法

主要任务是更改命名日志文件的方案

CI_Log
类使用以下内容作为当前文件的名称

$filepath = $this->_log_path.'log-'.date('Y-m-d').'.'.$this->_file_ext;
这基本上意味着任何一天都有一个日志文件。但是,您所需的功能可能会导致一天生成多个文件。我没有一个优雅的方式来解决这部分问题。答案将取决于您希望如何命名其他日志文件。在
日期('Y-m-d')
中添加“_1”、“_2”、“_n”是一种可能性。同样,我没有提供一种方法来确定要使用的正确“sub day”版本

但是,一旦您弄清楚了当前文件是什么,确定文件中的行数就很简单了

$file="current_log_file_name";
$linecount = 0;
$handle = fopen($file, "r");
while(!feof($handle)){
  $line = fgets($handle);
  $linecount++;
}

fclose($handle);

如果
$linecount>600
则创建一个新文件,否则使用“当前日志文件名”。

CI还没有此类功能。不要认为其他框架也支持这个,在600行日志消息之后,我想创建新文件。但在CI中,您可以限制使用logHi Subrat编写的内容,欢迎使用SO!你的问题目前有点宽泛,通常是说“这不起作用”的问题,没有任何解释你希望达到的目标和你实际达到的目标,这些问题都被认为是离题的。我想请你回顾一下,并进一步充实你的答案:谢谢你的建议@AbdullaNilam,你能帮我实现这一点吗。
$file="current_log_file_name";
$linecount = 0;
$handle = fopen($file, "r");
while(!feof($handle)){
  $line = fgets($handle);
  $linecount++;
}

fclose($handle);