itsource

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

mycopycode 2022. 9. 27. 23:54
반응형

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

마커에 대해 처음 들은 것은 다음을 읽고 있을 때였습니다.

http://slf4j.org/faq.html

Logger 개체에 사용 가능한 메서드를 확인했습니다.

검출된 인터페이스:

자세한 정보는 다음에서 얻을 수 있습니다.

하지만 난 아직도 혼란스러워...사용방법이 아니라 이유물었으므로, 이것은 다음 항목의 중복이 아닙니다.

업데이트 마커를 사용하는 경우 XML 또는 .property 파일에서 설정을 수행하는 대신 사용자 정의 Java 코드를 작성해야 합니다.

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

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. 트리거링: 일부 Appender는 특정 마커가 있는 상태에서 액션을 수행하도록 지시될 수 있습니다.예를들면,SMTPAppender로깅 이벤트가 로 마크될 때마다 이메일을 보내도록 설정할 수 있습니다.NOTIFY_ADMIN로그 레벨에 관계없이 마커가 표시됩니다.로그백 설명서에서 마커 기반 트리거링을 참조하십시오.트리거를 위해 로그 레벨과 마커를 결합할 수도 있습니다.

  2. 필터링: 마커는 특정 가치 있는 로그 문을 돋보이게 하는 데 매우 유용합니다.예를 들어, 모든 지속성 관련 로그(다양한 클래스 파일 및 여러 클래스 파일)에 "DB" 색상을 지정하거나 표시할 수 있습니다.그런 다음 "DB"를 필터링할 수 있습니다. DB로 표시된 로그 문을 제외하고 로깅을 비활성화합니다.자세한 내용은 로그백 설명서의 필터 관련 을 참조하십시오(MarkerFilter 검색).마커에 대한 필터링은 로그백뿐만 아니라 로그 분석 도구로도 수행할 수 있습니다.

Markers가 등장하기 전에는 1) 사용자 지정 수준 2) 수정된 로거 이름을 사용하는 옵션이 있었습니다.SLF4J API는 현재 커스텀레벨을 지원하지 않습니다옵션 2의 경우 로거 이름의 서픽스(또는 프레픽스)는 로거를 1개 또는2개 변경해야 할 경우 사용할 수 있습니다.연관된 구성 파일을 관리할 수 없게 되기 때문에 3개 이상의 로거를 "서브 클래스"로 만들어야 하므로 이 접근 방식은 실용적이지 않습니다.

단일 마커가 이미 매우 유용할 수 있지만 SLF4J의 다음 버전인 버전 2.0에서는 로그 문마다 여러 마커를 사용할 수 있습니다.

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

반응형