Quiero depurar una secuencia de comandos de mapreduce, y sin entrar en muchos problemas traté de poner algunas declaraciones de impresión en mi programa. Pero no puedo encontrarlos en ninguno de los registros.¿Dónde hadoop mapreduce framework envía mis sentencias System.out.print()? (stdout)
Respuesta
En realidad, stdout solo muestra el System.out.println()
del clases que no son de mapa.
El System.out.println()
para ver el mapa y reducir las fases se puede ver en los registros. La forma más fácil de acceder a los registros es
http://localhost:50030/jobtracker.jsp-> haga clic en el trabajo completado-> haga clic en el mapa o reduzca la tarea-> haga clic en número de tarea-> registros de tareas-> registros estándar.
Esperanza esto ayuda
Otra forma es a través del terminal:
1) entra en tu Hadoop_Installtion directorio , luego en "logs/userlogs".
2) Abra su directorio job_id.
3) Verificar directorios con _ m_ si desea que la salida asignador o _r_ si usted está buscando reductores.
Ejemplo: En Hadoop-20.2.0:
> ls ~/hadoop-0.20.2/logs/userlogs/attempt_201209031127_0002_m_000000_0/ log.index stderr stdout syslog
Los medios anteriores:
Hadoop_Installation: ~/hadoop-0.20.2
job_id: job_201209031127_0002
_m_: Mapa de tareas, " número mapa ": _000000_
4) abierta stdout si usó "system.out.println" o stderr si utilizó "system.err.append".
PS. otras versiones de hadoop pueden tener una jerarquía diferente a la vista, pero todas deben estar en $ Hadoop_Installtion/logs/userlogs.
Para obtener su mensaje de inicio de sesión y de registro en la consola, puede utilizar el marco de trabajo de Apache commons en su asignador y reductor.
public class MyMapper extends Mapper<..,...,..,...> {
public static final Log log = LogFactory.getLog(MyMapper.class)
public void map() throws Exception{
// Log to stdout file
System.out.println("Map key "+ key);
//log to the syslog file
log.info("Map key "+ key);
if(log.isDebugEanbled()){
log.debug("Map key "+ key);
}
context.write(key,value);
}
}
En un clúster Hadoop con yarn
, se puede recuperar los registros, incluyendo la salida estándar, con:
yarn logs -applicationId application_1383601692319_0008
Por alguna razón, me he encontrado que esto es más completa que lo que veo en la interfaz web. La interfaz web no me listó el resultado de System.out.println()
.
Gracias por dar una respuesta para hadoop2. ¿Me puede decir por qué estoy recibiendo este error después de ejecutar ese comando? 'Los registros no están disponibles en/tmp/logs/hadoopuser/logs/application_1441282624447_3854' y' La agregación de registros no se completó o no está habilitada. –
- 1. Error en Hadoop MapReduce
- 2. Comenzando con MapReduce/Hadoop
- 3. ¿Cómo se usa MapReduce/Hadoop?
- 4. Salida intermedia de Hadoop MapReduce
- 5. reutilizar JVM en trabajos mapreduce de Hadoop
- 6. Hadoop mapreduce la transmisión desde HBase
- 7. ¿Dónde descargo todas las clases necesarias para escribir trabajos de Hadoop MapReduce?
- 8. Hadoop o Hadoop Streaming para MapReduce en AWS
- 9. Encontrar componentes conectados usando Hadoop/MapReduce
- 10. Idea de proyecto con Hadoop MapReduce
- 11. Configuración de Hadoop: mapred. * Vs mapreduce. *
- 12. Recuento de palabras ordenadas usando Hadoop MapReduce
- 13. Hadoop: ¿Cómo funciona OutputCollector durante MapReduce?
- 14. Ordenando datos grandes usando MapReduce/Hadoop
- 15. ejecutando múltiples trabajos de MapReduce en hadoop
- 16. Debugging Entity Framework Sentencias SQL
- 17. Hadoop MapReduce: Tamaño de archivo de entrada apropiado?
- 18. Algoritmo del coeficiente de agrupamiento local distribuido (MapReduce/Hadoop)
- 19. Hadoop MapReduce: Driver para encadenar creadores de mapas dentro de un trabajo MapReduce
- 20. Hadoop envía el registro a todos los reductores
- 21. Lectura programática del resultado del programa Mapreduce de Hadoop
- 22. Encadenando múltiples tareas de mapreduce en la transmisión de Hadoop
- 23. Hadoop MapReduce - un archivo de salida para cada entrada
- 24. (Hadoop) MapReduce - Trabajos en cadena - JobControl no se detiene
- 25. Hadoop MapReduce proporcionar directorios anidados como entrada para el trabajo
- 26. Unir dos conjuntos de datos en Mapreduce/Hadoop
- 27. cómo implementar el cálculo de valores propios con MapReduce/Hadoop?
- 28. Hadoop MapReduce: ¿es posible definir dos mapeadores y reductores en una clase de trabajo de hadoop?
- 29. ¿Es correcto Hadoop para ejecutar mis simulaciones?
- 30. ¿A dónde deberían ir las sentencias 'CreateMap'?
El mismo enfoque aplica también usando Oozie bajo Hue.Oozie planifica los trabajos de mapa MR2, pero no muestra los registros correctamente. Para verlos, debes ir bajo jobtracker.jsp. –
JobTracker no existe en Hadoop 2 –