2013-01-07 9 views
6

Come controllare la funzionalità di registrazione in hadoop? Hadoop utilizza il file log4j.properties predefinito per il controllo dei registri. Il mio caso d'uso è controllare i log generati dalle mie classi.Controllo della funzionalità di registrazione in hadoop

daemon Hadoop come JobTracker, TaskTracker, NameNode e DataNode processi daemon usa lima log4j.properties dal rispettivo nodo host di hadoop-conf-directory. RootLogger è impostato su "INFO, console" che registra tutti i messaggi al livello INFO nella console.

Attivare i lavori hadoop utilizzando Oozie Workflow. Ho provato a passare il mio file personalizzato log4j.properties al lavoro impostando la proprietà di sistema -Dlog4j.configuration=path/to/log4j.properties, ma non funziona. Tuttavia, prende le proprietà log4j da quella di default.

Non devo toccare il file predefinito log4j.properties.

Sto usando Oozie-v3.1.3-incubating, hadoop-v0.20 e cloudera CDH-v4.0.1.

Come è possibile sovrascrivere il file predefinito log4j.properties ?? o Come posso controllare i registri per le mie classi ??

risposta

10

In particolare, cosa stai cercando di ottenere con il tuo file Log4J? Chiedo perché i registri sono distribuiti sul tuo cluster, ma registrandoli a rootLogger, dovresti essere in grado di vederli tramite il job tracker (eseguendo il drill down sui tentativi di attività Job).

Se si desidera utilizzare i file in rotazione, è difficile recuperare tali file in un secondo momento (anche perché sono distribuiti tra i nodi attività).

Se si desidera impostare in modo dinamico livelli di registro, questo dovrebbe essere abbastanza semplice:

public static Logger log = Logger.getLogger(MyMapper.class); 

@Override 
protected void setup(Context context) throws IOException, 
     InterruptedException { 
    log.setLevel(Level.WARN); 
} 

Se si vuole aggiungere il proprio appenders, allora si dovrebbe essere in grado di farlo a livello di codice (vedi questo SO Question), nel metodo di installazione come sopra.

+0

Grazie per la tua risposta chris :-) Questo mi aiuta molto. – Suresh

+0

Sì, è utile .. Grazie –

Problemi correlati