[HADOOP] MapReduce 작업에 로그인하기위한 표준 사례
HADOOPMapReduce 작업에 로그인하기위한 표준 사례
MapReduce 작업에 로그인하기위한 최선의 방법을 찾고 있습니다. 나는 다른 Java 응용 프로그램에서와 같이 log4j appender와 함께 slf4j를 사용하고 있지만 MapReduce 작업은 제한된 액세스 권한을 가진 공유 클러스터이기 때문에 클러스터 전체에서 분산 된 방식으로 실행되므로 로그 파일 위치를 어디에 설정해야하는지 모르겠습니다. 특권.
MapReduce 작업에 로그인하기위한 표준 사례가 있습니까? 따라서 작업 완료 후 클러스터 전체에서 로그를 쉽게 볼 수 있습니까?
해결법
-
==============================
1.hadoop이 사용하는 기본 로깅 프레임 워크 인 log4j를 사용할 수 있습니다. MapReduce 애플리케이션에서 다음과 같이 할 수 있습니다.
hadoop이 사용하는 기본 로깅 프레임 워크 인 log4j를 사용할 수 있습니다. MapReduce 애플리케이션에서 다음과 같이 할 수 있습니다.
import org.apache.log4j.Logger; // other imports omitted public class SampleMapper extends Mapper<LongWritable, Text, Text, Text> { private Logger logger = Logger.getLogger(SampleMapper.class); @Override protected void setup(Context context) { logger.info("Initializing NoSQL Connection.") try { // logic for connecting to NoSQL - ommitted } catch (Exception ex) { logger.error(ex.getMessage()); } } @Override protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException { // mapper code ommitted } }
이 샘플 코드는 log4j 로거 사용자가 상속 된 매퍼 로거에 이벤트를 기록하도록합니다. 모든 로그 이벤트는 해당 작업 로그에 기록됩니다. JobTracker (MRv1) / ResourceManager (MRv2) 웹 페이지에서 작업 로그를 방문 할 수 있습니다.
원사를 사용하는 경우 다음 명령을 사용하여 명령 줄에서 응용 프로그램 로그에 액세스 할 수 있습니다.
yarn logs -applicationId <application_id>
mapreduce v1을 사용하는 경우 명령 줄에서 단일 액세스 지점이 없습니다. 따라서 각 TaskTracker에 로그인하고 $ {hadoop.log.dir}에 지정된 / var / log / hadoop / userlogs / 시도 _
/ syslog를 / log4j 출력을 포함하는 userlogs로 구성된 경로를 확인해야합니다. -
==============================
2.@Ashrith의 대답에 추가하려면 JobTracker GUI를 통해 개별 작업 추적기 로그를 볼 수 있습니다. 실행중인 작업 시도는 JT Gui가 볼 수 있으며 stderr, stdout 및 시스템 로그 중 하나를 클릭 할 수 있습니다. 시스템 로그는 log4j 출력을 찾는 곳입니다.
@Ashrith의 대답에 추가하려면 JobTracker GUI를 통해 개별 작업 추적기 로그를 볼 수 있습니다. 실행중인 작업 시도는 JT Gui가 볼 수 있으며 stderr, stdout 및 시스템 로그 중 하나를 클릭 할 수 있습니다. 시스템 로그는 log4j 출력을 찾는 곳입니다.
from https://stackoverflow.com/questions/28119423/standard-practices-for-logging-in-mapreduce-jobs by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 특정 노드에 파일을 저장하는 방법은 무엇입니까? (0) | 2019.06.09 |
---|---|
[HADOOP] 파일에 대한 경로가 필요한 생성자가있는 경우 병에 포장 된 경우이를 ""만들 수 있습니까? (0) | 2019.06.09 |
[HADOOP] Hadoop Map / Reduce에서 여러 맵퍼에 대해 맵 사이드 조인 구성 (0) | 2019.06.09 |
[HADOOP] Oozie + Sqoop : JDBC 드라이버 Jar 위치 (0) | 2019.06.09 |
[HADOOP] PIG 또는 HIVE 행의 행 번호를 추가하려면 어떻게합니까? (0) | 2019.06.09 |