Php log_消息在codeigniter的应用程序文件夹下不工作

Php log_消息在codeigniter的应用程序文件夹下不工作,php,codeigniter,logging,Php,Codeigniter,Logging,我有一个Codeigniter应用程序,我在其中记录错误、调试和信息消息。 在config.php中,我将阈值设置为4。我可以在application/log文件夹中看到日志文件。 现在我尝试从控制器的方法添加自定义日志。我曾经 log_message("error", "this is my custom error"); 但这并不是记录在日志文件中。 到目前为止我试过什么 更改了日志文件的位置 更改了日志文件权限 使用“调试”、“信息”更改了级别 应用服务器文件中的更改以查看它是否在其他

我有一个Codeigniter应用程序,我在其中记录错误、调试和信息消息。 在config.php中,我将阈值设置为4。我可以在application/log文件夹中看到日志文件。 现在我尝试从控制器的方法添加自定义日志。我曾经

log_message("error", "this is my custom error");
但这并不是记录在日志文件中。 到目前为止我试过什么

  • 更改了日志文件的位置
  • 更改了日志文件权限
  • 使用“调试”、“信息”更改了级别
  • 应用服务器文件中的更改以查看它是否在其他服务器中工作
没有写日志。 在现有的日志文件中,我可以看到来自核心文件的日志消息。我无法从应用程序文件夹中写入任何内容

  • 确保您的CI应用程序/日志文件具有web用户的写入权限

  • 以下是应用程序/config/config.php文件中的相关片段:

    $config['log_threshold']=4; $config['log_path']=''

  • 重新启动web服务器(对于许多版本的Linux,例如“/etc/init.d/apache2 stop/start”)

  • >P>如果您完全确定您的LogMaseAudio()正在被调用,并且在“应用程序/日志”中仍然没有看到任何条目,那么考虑将LogyPATH更改为不同的路径(例如,TMP,如果仅用于故障排除目的)。
  • 然而,即使“/tmp”也不是一件确定的事情。请看我关于Systemd如何将PHP/Apache重定向到“私有临时文件”的帖子:

  • 如果所有其他操作都失败,则问题可能是SELinux:

  • 祝你好运-请把你找到的东西发回来

  • 确保您的CI应用程序/日志文件具有web用户的写入权限

  • 以下是应用程序/config/config.php文件中的相关片段:

    $config['log_threshold']=4; $config['log_path']=''

  • 重新启动web服务器(对于许多版本的Linux,例如“/etc/init.d/apache2 stop/start”)

  • >P>如果您完全确定您的LogMaseAudio()正在被调用,并且在“应用程序/日志”中仍然没有看到任何条目,那么考虑将LogyPATH更改为不同的路径(例如,TMP,如果仅用于故障排除目的)。
  • 然而,即使“/tmp”也不是一件确定的事情。请看我关于Systemd如何将PHP/Apache重定向到“私有临时文件”的帖子:

  • 如果所有其他操作都失败,则问题可能是SELinux:


  • 祝您好运-请将您找到的内容发回!

    以调试update config.php,如下所示

    $config['log_threshold'] = 4;
    $config['log_path'] = '';
    $config['log_file_extension'] = '';
    $config['log_file_permissions'] = 0775;
    
    在命令行中,使用cd命令转到“应用程序”文件夹

    试试这些命令

  • sudo chgrp-R www-data-logs/
  • sudo chmod-R 775日志/

  • 使用controller检查日志。

    以调试update config.php,如下所示

    $config['log_threshold'] = 4;
    $config['log_path'] = '';
    $config['log_file_extension'] = '';
    $config['log_file_permissions'] = 0775;
    
    在命令行中,使用cd命令转到“应用程序”文件夹

    试试这些命令

  • sudo chgrp-R www-data-logs/
  • sudo chmod-R 775日志/

  • 使用控制器查看日志。

    您使用的是哪种web服务器和操作系统?我在Apache服务器上使用Ubuntu 18.04。我也在Windows服务器上尝试过。您使用的是哪种web服务器和操作系统?我在Apache服务器上使用Ubuntu 18.04。我也在Windows服务器上尝试过。谢谢您的回答。请在每一点上找到我的评论。谢谢您的回复r、 请查找我对每一点的评论1)日志文件具有写入权限并且正在写入。在我的应用程序中,我从核心文件调用了log_message()。它正在日志文件中写入。2)正确3)重新启动apache。4) 实际上,日志文件正在写入,但我关心的是,当我在控制器方法中添加log_message()时,它没有写入。但我还是改变了方向。5) 6)我将Ubuntu 18.04与Apache一起使用,谢谢你的回答。请找到我对每一点的评论谢谢你的回答。请查看我对每一点的评论1)日志文件具有写入权限并且正在写入。在我的应用程序中,我从核心文件调用了log_message()。它正在日志文件中写入。2) 正确3)重新启动apache。4) 实际上,日志文件正在写入,但我关心的是,当我在控制器方法中添加log_message()时,它没有写入。但我还是改变了方向。5) 6)我正在使用Ubuntu 18.04和Apache。谢谢,它成功了。我想是团体许可的问题。是的。。默认apache组名为www data。。需要书面许可。谢谢你的帮助。我是否可以为特定控制器创建自定义日志文件?日志消息(“错误”,$this->router->fetch_class()。“:这是我的自定义错误”);将添加控制器名称,并且易于调试。谢谢,它成功了。我想是团体许可的问题。是的。。默认apache组名为www data。。需要书面许可。谢谢你的帮助。我是否可以为特定控制器创建自定义日志文件?日志消息(“错误”,$this->router->fetch_class()。“:这是我的自定义错误”);将添加控制器名称并易于调试。