FLINK 사용 logback 로깅 및 알람

로그가 커지게되면보기 로그와 FLINK UI의 표준 출력의 포인트는,이보기가 매우 될 것입니다 있지만, 작업 실행 로그 기록은 매우 필요하며, 우리는 입력이 간단한 문제가 아니다시 로그를 볼 수 메스꺼움.

이 회사는, 그래서 여기에 우수한 logback의 검색을 인증 사서함을 지원하지 않기 때문에 FLINK의 conf의 제공 및 logback의 log4j 구성 파일, 기본은 log4j에, log4j를 사용하는 것입니다.

lib 디렉토리 폴더에 의존 항아리 패키지를 logback, 그래서 증가시킬 필요가있다되지 않는다

logback 액세스-1.2.3.jar

logback 고전-1.2.3.jar

logback 코어-1.2.3.jar

메일-1.4.7.jar

 

 

 

그리고 logback-console.xml의 logback.xml logback-yarn.xml 세 파일의 conf 수정

메일 펜더 증가에 주로 기인

<! -邮件发送的펜더 ->
<펜더 이름 = "이메일"클래스 = " ch.qos.logback.classic.net .SMTPAppender">
<의 smtpHost> smtp.partner.outlook.cn </의 smtpHost>
<smtpPort > 587 </ smtpPort>
<이름> [email protected] </ 이름>
<비밀번호> </ 암호>
<asynchronousSending> 거짓 </ asynchronousSending>
<SSL> 거짓 </ SSL>
<STARTTLS> 진정한 </ STARTTLS>
< 에> XX @ xx.com </을>
<> XX에서 @ xx.com </>에서
<대상> FLINK异常邮件</ 대상>
<! - HTML格式->
<레이아웃 클래스 = "ch.qos .logback.classic.html.HTMLLayout ">
<패턴> % 일 % 수준 % 스레드 % 로거 {0} % 광고 메시지 % </ 패턴>
</ 레이아웃>
     <! - 여기에 사용 된 등급의 필터를 전송하기 전에 지정된 레벨과 일치 ->
<필터 클래스 = "ch.qos.logback.classic.filter.LevelFilter">
<레벨> 오류 </ 레벨>
</ 필터>
<! - - 40 로그 항목 당 이메일 ->
<클래스 cyclicBufferTracker = "ch.qos.logback.core.spi.CyclicBufferTracker">
<BUFFERSIZE> 40 </ BUFFERSIZE>
</ cyclicBufferTracker>
</를 펜더>

 

<루트 레벨 = "INFO">
     <펜더-REF REF = "이메일"/>
</ 루트>

이러한 FLINK 구성이 완료됩니다.

당신이 정보를 기록하려면 시간의 개발 및 응용 프로그램에서, 당신은 SLF4J와 logback 의존하고 log4j에 의존 (기억)의 배제를 추가 할 필요가 다음 오류 정보가 기록되고, 그것은 직접 전자 메일 구성으로 전송됩니다

 

 

일반적으로, 몇 가지 실수가 가끔 문제를 완료하지 발행하지만, 더 심각한 오류되면, 구성 요소가 실패와 같은, 당신은 실시간 작업 수십만을 가질 수있는 메시지를 보내야합니다, 그것은 가능성이 높습니다 회사 메일이 울리기.

이러한 상황을 바탕으로, 우리는 큰 버퍼 크기가 중요한 역할을 전송하지만, 근본적인 해결되지 할 수있을 것입니다.

 

추천

출처www.cnblogs.com/createweb/p/11613511.html