2016-05-17 80 views
0

我是log4php的新手,我想动态更改日志文件名和路径。如何在log4php中动态更改日志文件名?

我这样做,但Test.log消息中没有任何内容。

$crawlupLogger = Logger::getRootLogger(); 
$crawlupLogger->setLevel(LoggerLevel::toLevel(LoggerLevel::DEBUG)); 
$appender = new LoggerAppenderFile("MyAppender"); 
$appender->setFile("Test.log"); 
$appender->setAppend(false); 
$appenderlayout = new LoggerLayoutPattern(); 
$pattern = '%date{U}%message%newline'; 
$appenderlayout->setConversionPattern($pattern); 
$appender->setLayout($appenderlayout); 
$appender->activateOptions(); 

$crawlupLogger->removeAllAppenders(); 
$crawlupLogger->addAppender($appender); 
// Line head 
$crawlupLogger->info("Date,Time,Level,Message"); 

回答

0

这里的解决方案:

$crawlupLogger = Logger::getRootLogger(); 
$crawlupLogger->setLevel(LoggerLevel::toLevel(LoggerLevel::DEBUG)); 
$appender = new LoggerAppenderFile("CrawlUpLogAppender"); 
$appender->setFile("Test.log"); 
$appender->setAppend(false); 
$appenderlayout = new LoggerLayoutPattern(); 
$pattern = "%date{U}\t%-5p\t%message%newline"; 
$appenderlayout->setConversionPattern($pattern); 
$appenderlayout->activateOptions();  
$appender->setLayout($appenderlayout);  
$crawlupLogger->removeAllAppenders(); 
$crawlupLogger->addAppender($appender); 

雷姆:“而不是”如果字符串是用双引号注意使用(”),PHP会解释的转义序列特殊字符: