【问题标题】:yii 1.X application log issueyii 1.X 应用程序日志问题
【发布时间】:2016-01-30 03:22:46
【问题描述】:

我有托管在 Amazon EC2 实例上的应用程序 我像这样使用 Yii 1.X Logger 记录我的应用程序

Yii::log("Something i Log Here...", "info");

aaand 众所周知,我将文件登录到 WEBROOT/protected/runtime/application.log 文件。 由于我使用了许多日志,application.log 文件填充得非常快,而且,正如我所见,Yii 或服务器将该文件更改为 application.log.1 并创建一个名为 application.log 的新文件。

我的问题是,为什么,当创建新的application.log 文件时,所有者和组就像某个用户nobody,并且,当创建新文件时,我的代码(例如日志记录)不再起作用,不以www-data 用户身份写入文件的良好权限。是否有机会以与NOBODY 不同的用户身份创建新的application.log 文件?

我将提供 Image ,并看起来更接近application.log.3 所有权,application.log 也是如此,但我已经改变了 命令权限

图片:

任何人请帮助我解决这个问题。

【问题讨论】:

  • php 创建的日志文件。什么用户/组在您的服务器上运行 php?
  • www-data -user 在我的服务器上运行 php,但是,不知何故,当创建新的 application.log 日志文件时,由 nobody 用户创建。在日志中我得到这个:Yii::log("User that executes script: ".exec('whoami'), "info"); 结果是::2015/10/29 04:00:09 [info] [application] User that executes script: ec2-user
  • ec2-user -user 在我的服务器上运行 php,我错了
  • @BoJev 请看下面的回答,希望对理解有所帮助

标签: php logging yii amazon-ec2 ownership


【解决方案1】:

如果您看到CFileLogRoute.php 类,则私有变量$_maxFileSize 被定义为1024KB。 当 .log 文件的大小超过此限制时,此类将通过创建新的日志文件来轮换日志文件。

更多解释请参考http://www.yiiframework.com/doc/api/1.1/CFileLogRoute

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-06
    • 2020-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多