code

Java 로깅 프레임 워크의 마커는 무엇이며이를 사용하는 이유는 무엇입니까?

codestyles 2020. 9. 10. 07:53
반응형

Java 로깅 프레임 워크의 마커는 무엇이며이를 사용하는 이유는 무엇입니까?


처음 읽을 때 마커에 대해 들었습니다.

http://slf4j.org/faq.html

Logger 객체에 대해 사용 가능한 메서드를 확인 합니다.

발견 된 인터페이스 :

더 자세한 정보 :

하지만 여전히 혼란 스러워요 ... 그것들을 사용 하는지 묻지 않습니다 . 그래서 이것은 다음의 중복이 아닙니다 :

UPDATE 마커를 사용할 때 XML 또는 .property 파일 에서 구성을 수행하는 대신 사용자 지정 Java 코드를 작성해야하는 것 같습니다 .

http://logback.qos.ch/manual/appenders.html#OnMarkerEvaluator 에서 업데이트 2

Marker notifyAdmin = MarkerFactory.getMarker("NOTIFY_ADMIN");
logger.error(notifyAdmin,
  "This is a serious an error requiring the admin's attention",
   new Exception("Just testing"));

이것은 " SLF4J / Logback에서 마커를 사용하기위한 모범 사례 "라는 질문에 대한 제 답변 입니다.

마커를 사용하여 단일 로그 문 색칠 하거나 표시 할 수 있습니다 . 이러한 색상, 즉 마커로 수행하는 작업은 전적으로 귀하에게 달려 있습니다. 그러나 마커 사용에는 두 가지 패턴이 일반적으로 보입니다 (첫 번째 패턴이 두 번째 패턴보다 더 일반적).

  1. 트리거링 : 일부 어 펜더는 특정 마커가있는 경우 작업을 수행하도록 지시 할 수 있습니다. 예를 들어, 로그 수준에 관계없이 SMTPAppender로깅 이벤트가 NOTIFY_ADMIN마커 로 표시 될 때마다 이메일을 보내도록 구성 할 수 있습니다 . 로그 백 문서에서 마커 기반 트리거참조하세요 . 트리거를 위해 로그 수준과 마커를 결합 할 수도 있습니다.

  2. 필터링 : 예를 들어 "DB"색상으로 모든 지속성 관련 로그 (다양한 여러 클래스 파일)를 색상 / 표시 할 수 있습니다. 그런 다음 "DB"를 필터링 할 수 있습니다. DB로 표시된 로그 문을 제외하고 로깅을 비활성화합니다. 자세한 내용은 로그 백 문서의 필터대한 을 참조하십시오 (MarkerFilter 검색).

마커가 출현하기 전에 유사한 동작을 달성하기 위해 1) 사용자 지정 수준 사용 2) 수정 된 로거 이름 사용 옵션이있었습니다. SLF4J API는 현재 사용자 지정 수준을 지원하지 않습니다. 옵션 2의 경우, 하나 또는 두 개의 로거를 수정해야하는 경우 로거 이름 접미사 (또는 접두사)를 사용할 수 있습니다. 관련 구성 파일을 관리 할 수 ​​없게되므로 3 개 이상의 로거가 "하위 분류"되어야하는 즉시 접근 방식이 실용적이지 않게됩니다.

참고 URL : https://stackoverflow.com/questions/16813032/what-are-markers-in-java-logging-frameworks-and-what-is-a-reason-to-use-them

반응형