【问题标题】:log_message is not working under application folder in codeigniterlog_message 在 codeigniter 的应用程序文件夹下不起作用
【发布时间】:2020-01-29 09:44:17
【问题描述】:

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

log_message("error", "this is my custom error");

但这并没有记录在日志文件中。 到目前为止我尝试了什么

  • 更改了日志文件位置
  • 更改了日志文件权限
  • 使用“调试”、“信息”更改了级别。
  • 在服务器文件中应用更改以查看它是否适用于其他服务器。

没有写日志。 在现有的日志文件中,我可以看到来自核心文件的日志消息。我无法从应用程序文件夹中写入任何内容。

【问题讨论】:

  • 您使用的是哪个网络服务器和操作系统?
  • 我正在使用 Ubuntu 18.04 和 Apache 服务器。我也在 Windows 服务器上试过。

标签: php codeigniter logging


【解决方案1】:

用于调试更新config.php如下

$config['log_threshold'] = 4;
$config['log_path'] = '';
$config['log_file_extension'] = '';
$config['log_file_permissions'] = 0775;

在命令行中使用 cd 命令转到您的“应用程序”文件夹

试试这些命令

  1. sudo chgrp -R www-data logs/
  2. sudo chmod -R 775 logs/

使用控制器检查日志。

【讨论】:

  • 谢谢,它成功了。我认为这是组权限的问题。
  • 是的..默认的apache组名是www-data..它需要写权限..
  • 感谢您的帮助。我可以为特定控制器创建自定义日志文件吗?
  • log_message("error", $this->router->fetch_class()." :this is my custom error");将添加控制器名称,并且易于调试。
【解决方案2】:
  1. 确保您的 CI 应用程序/日志文件具有 Web 用户的写入权限。

  2. 以下是您的 application/config/config.php 文件中的相关 sn-ps:

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

  3. 重新启动您的网络服务器(例如,对于许多版本的 Linux,“/etc/init.d/apache2 stop/start”。

...

  1. 如果您绝对确定您的 log_message() 被调用,并且您仍然没有在“应用程序/日志”中看到任何条目,那么考虑将 log_path 更改为不同的路径(例如 /tmp,如果只是为了进行故障排除目的)。

  2. 但是,即使“/tmp”也不是确定的。查看我关于 Systemd 如何将 PHP/Apache 重定向到“私人临时”的帖子:

    Why doesn't PHP 7.2 fopen(/tmp, a) write to the file?

  3. 其他一切都失败了,问题可能是 SELinux:

    CentOS 7 + SELinux + PHP + Apache – cannot write/access file no matter what

祝你好运 - 请发回你找到的东西!

【讨论】:

  • 感谢您的回答。请在每个点上找到我的 cmets
  • 感谢您的回答。请在每一点上找到我的 cmets 1) 日志文件具有写入权限并且正在写入。在我的应用程序中,我从核心文件调用了 log_message()。它正在写入日志文件。 2) 正确 3) 重新启动 apache。 4)实际上,日志文件正在写入,但我担心的是,当我在控制器方法中添加 log_message() 时,它没有写入。我还是改变了路径。 5) 6) 我正在使用 Ubuntu 18.04 和 Apache
猜你喜欢
  • 1970-01-01
  • 2020-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多