2011-01-12 3 views

Répondre

2

Cette tâche est probablement trop pour l'installation easy_init, car vous devez utiliser des filtres pour obtenir cet effet. Avec la configuration normale, vous pouvez faire ceci:

use Log::Log4perl qw(:easy); 

Log::Log4perl->init(\ qq{ 
    log4perl.logger = INFO, AppInfo, AppError 

    # Filter to match level ERROR 
    log4perl.filter.MatchError = Log::Log4perl::Filter::LevelMatch 
    log4perl.filter.MatchError.LevelToMatch = ERROR 
    log4perl.filter.MatchError.AcceptOnMatch = true 

    # Filter to match level INFO 
    log4perl.filter.MatchInfo = Log::Log4perl::Filter::LevelMatch 
    log4perl.filter.MatchInfo.LevelToMatch = INFO 
    log4perl.filter.MatchInfo.AcceptOnMatch = true 

    # Error appender 
    log4perl.appender.AppError = Log::Log4perl::Appender::Screen 
    log4perl.appender.AppError.stderr = 1 
    log4perl.appender.AppError.layout = SimpleLayout 
    log4perl.appender.AppError.Filter = MatchError 

    # Info appender 
    log4perl.appender.AppInfo = Log::Log4perl::Appender::Screen 
    log4perl.appender.AppInfo.stderr = 0 
    log4perl.appender.AppInfo.layout = SimpleLayout 
    log4perl.appender.AppInfo.Filter = MatchInfo 
}); 

ERROR "Error"; 
INFO "Info"; 
+0

Puis-je avoir un moyen tel que quand j'écris dans le journal des erreurs alors mon script devrait quitter immédiatement? –

Questions connexes