java logger 예제

생성한 로거는 실제로 로거의 계층 구조이며. (점)은 계층 구조의 수준을 나타냅니다. 따라서 com.example 키에 대한 로거를 얻는 경우이 로거는 com Logger의 자식이며 com Logger는 빈 문자열에 대한 로거의 자식입니다. 기본 로거를 구성할 수 있으며 이는 모든 자식에 영향을 줍니다. 나는 어떻게 든 로깅 .properties 파일에 지정하고 싶습니다. 웹의 모든 예에서 나는 자바의 로그 시스템을 찾을 수 있습니다 로그 시스템은 중앙에서 관리됩니다. 로그 시스템의 구성과 실제 로깅을 수행하는 개체를 모두 관리하는 응용 프로그램 와이드 로그 관리자는 하나뿐입니다. 로그 관리자 클래스는 로그 파일과 상호 작용하는 단일 전역 인스턴스를 제공합니다. getLogManager라는 정적 메서드가 있습니다 아래 예제는 글로벌 logging.properties 파일에 정의 되는 부속기를 보여줍니다.: 대부분의 개발자에 대 한, Log4j는 좋은 성능을 제공 하는 좋은 선택, 매우 구성 가능 하 고 매우 활성화 개발 커뮤니티.

다른 Java 라이브러리 또는 응용 프로그램을 직접 통합하려는 경우 SLF4J와 Log4j 바인딩을 사용하여 호환성을 최대한 활용하는 것이 좋습니다. Logger 클래스는 메시지를 기록하는 데 사용되는 로거 개체를 만드는 데 사용됩니다. 로거 개체는 이름과 함께 제공되며 다른 수준에서 메시지를 기록하는 데 사용되는 메서드 집합이 있습니다. 로거에 이름을 제공할 수 있지만 패키지와 로거가 생성되는 클래스 이름을 기반으로 이름을 제공하는 것이 좋습니다. Java logger에 여러 처리기를 추가할 수 있으며 메시지를 기록할 때마다 모든 처리기가 그에 따라 처리됩니다. Java 로깅 API에서 제공하는 두 가지 기본 처리기가 있습니다. %d{HH:mm:s. SSS}는 시간, 분, 초 및 밀리초 단위로 날짜를 서식을 지정합니다. %t는 로거의 현재 스레드를 표시합니다. %수준은 로그 이벤트의 심각도를 표시합니다. %로거에는 로거의 이름이 표시됩니다. %m은 이벤트의 메시지를 표시합니다.

마지막으로 %n은 다음 이벤트에 대한 새 줄을 추가합니다. 다음은 이 변환 패턴을 사용하여 포맷된 로그 이벤트의 몇 가지 예입니다. void log(레벨 레벨, 문자열 msg, Object param1): 이 메서드는 지정된 수준으로 메시지를 기록하고 개체를 매개 변수로 기록하는 데 사용됩니다. 이 메서드를 사용할 수 있습니다 우리가 심각한 수준에서 예외 개체를 기록 한 위의 예제에서 수행 한 대로 로그에 개체를 저장 하려는 경우. 다음은 자바에서 로거의 사용을 보여주는 간단한 자바 프로그램입니다. 가장 일반적인 어텐더 중 하나는 콘솔에 로그 항목을 표시하는 ConsoleAppender입니다: http://bit.ly/1kJQ4Ji #Java @loggly 트윗이! 다음 예제에서는 NDC 및 Log4j를 사용하여 사용자 이름을 로그 항목과 연결합니다. ThreadContext는 정적 클래스이므로 ThreadContext 개체를 초기화하지 않고도 메서드에 액세스할 수 있습니다. 여기서는 ThreadContext.push(사용자 이름) 및 ThreadContext.push(sessionID)를 사용하여 스택에 사용자 이름(“admin”) 및 sessionID(“1234”)의 현재 값을 저장합니다. ThreadContext.pop()은 스택에서 개별 항목을 제거하고 ThreadContext.removeStack()을 사용하면 Java가 스택에서 사용하는 메모리를 회수하여 메모리 누수를 방지할 수 있습니다.

Posted in Uncategorized