首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >log4php中的动态文件路径

log4php中的动态文件路径
EN

Stack Overflow用户
提问于 2011-07-05 22:23:37
回答 1查看 1.6K关注 0票数 1

我是log4php的新手。

我希望将日志文件保存为/logs/UserId/Info_ddmmyyyy.php格式,其中UserId是动态数据。

(基本上,我希望为每个用户保存一个日志。)

有没有办法动态改变日志文件的路径?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-06 16:18:00

默认情况下不支持此行为。但您可以扩展LoggerAppenderFile (或RollingFile、DailyFile,随您的喜好)来支持它。

为此创建您自己的类并将其加载到您的脚本中。

然后从这个类扩展:http://svn.apache.org/repos/asf/logging/log4php/trunk/src/main/php/appenders/LoggerAppenderFile.php

代码语言:javascript
复制
class MyAppender extends LoggerAppenderFile { ... }

您需要重写setFile()方法,类似于:

代码语言:javascript
复制
public function setFile($file) {
    $path = getYourFullPath();
    $this->file = $path.$file;
}

毕竟,您需要在配置中使用新的附加器

代码语言:javascript
复制
log4php.appender.myAppender = MyAppender
log4php.appender.myAppender.layout = LoggerLayoutSimple
log4php.appender.myAppender.file = my.log

请注意,您现在需要添加一个普通名称,而不是提供日志文件的完整路径。必须使用getYourFullPath()方法计算完整路径(包括用户名)。

希望这能有所帮助!克里斯蒂安

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6584234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档