Apache Commons 로깅
Apache Commons Logging개발자 | 아파치 소프트웨어 재단 |
---|---|
안정적 해제 | 1.2 / 2014년 7월; 전 |
리포지토리 | github |
기록 위치 | 자바 |
운영 체제 | 크로스 플랫폼 |
유형 | 로깅 도구 |
면허증 | 아파치 라이선스 2.0 |
웹사이트 | commons |
Apache Commons Logging(이전에는 Jakarta Commons Logging 또는 JCL로 알려져 있음)은 Java 기반 로깅 유틸리티로, 로깅 및 기타 툴킷을 위한 프로그래밍 모델이다.다른 툴에 API, 로그 구현 및 래퍼 구현을 제공한다.[1][2][3]
로그 수준
다음 표는 심각도를 낮추기 위해 Apache Commons Logging의 로그 수준과 메시지를 정의한다.왼쪽 열에는 로그 수준 지정이 나열되고 오른쪽 열에는 각 로그 수준에 대한 간략한 설명이 제공된다.
레벨 | 설명 |
---|---|
치명적 | 조기 종료를 유발하는 심각한 오류.상태 콘솔에 이러한 항목이 즉시 표시되도록 하십시오. |
착오 | 기타 런타임 오류 또는 예기치 않은 조건.상태 콘솔에 이러한 항목이 즉시 표시되도록 하십시오. |
경고하다 | 사용되지 않는 API의 사용, API의 잘못된 사용, '대부분의' 오류, 바람직하지 않거나 예상치 못한 다른 런타임 상황, 그러나 반드시 "잘못된" 것은 아니다.상태 콘솔에 이러한 항목이 즉시 표시되도록 하십시오. |
정보 | 흥미로운 런타임 이벤트(시작/종료)콘솔에 이러한 기능이 즉시 나타날 것으로 예상하므로 보수적이면서 최소한으로 유지하십시오. |
디버그 | 시스템을 통과하는 흐름에 대한 자세한 정보.이러한 내용이 로그에만 기록될 것으로 예상하십시오. |
자취를 감추다 | 가장 자세한 정보.이러한 내용이 로그에만 기록될 것으로 예상하십시오. |
배열
두 가지 기본적인 추상화인 Log와 LogFactory는 Apache Commons Logging에서 사용된다.[3]
예
샘플 코드는 다음과 같이 보일 수 있다.
꾸러미 com.cascadetg.ch09; 수입하다 org.properties.properties.particle로그; 수입하다 org.properties.properties.particle로그팩토리; 수입하다 org.cg.properties.properties.Jdk14Logger; 공중의 계급 로그 생성기 { // 이 클래스의 인스턴스를 에 전달하십시오. // 로그 생성기.이렇게 하면 메시지를 찾을 수 있다. // 이 클래스에 의해 생성됨. 사유의 정태의 로그 통나무를 하다 = 로그팩토리.getLog(로그 생성기.계급); 공중의 정태의 공허하게 하다 configJDKLoger() { 해보다 { ((Jdk14Logger)통나무를 하다).겟로거().setLevel( 자바를 만들다.이용하다.벌목.레벨.모두); ((Jdk14Logger)통나무를 하다).겟로거().애드핸들러( (자바를 만들다.이용하다.벌목.파일핸들러)클래스 .forName("1955.util.property.properties."파일핸들러") .newInstance()); 시스템.밖으로.인쇄하다("추가된 JDK 1.4 파일 처리기"); } 잡히다 (예외 e) { 시스템.밖으로.인쇄하다("JDK 1.4 로깅을 로드할 수 없음."); e.printStackTrace(); } } 공중의 정태의 공허하게 하다 본래의(끈[] 아그) { configJDKLoger(); 시스템.세터(시스템.밖으로); 시스템.밖으로.인쇄하다(); 시스템.밖으로.인쇄하다("치명 로그 테스트"); 해보다 { 끈 foo = 무효의; 인트로 x = 0 / (새로운 정수(foo)).intvalue(); } 잡히다 (예외 e) { 통나무를 하다.치명적(e.getMessage(), e); } 시스템.밖으로.인쇄하다(); 시스템.밖으로.인쇄하다("테스트 오류 로그"); 해보다 { 오브젝트 foo = 무효의; foo.토스트링(); } 잡히다 (예외 e) { 통나무를 하다.착오(e.getMessage(), e); } 시스템.밖으로.인쇄하다(); 시스템.밖으로.인쇄하다("테스트 경고 로그"); 해보다 { 클래스.forName("com.com.comadetg.NonxistantClass"); } 잡히다 (예외 e) { 통나무를 하다.경고하다("존재하지 않는 반을 찾을 수 없단 말인가!"); } 시스템.밖으로.인쇄하다(); 시스템.밖으로.인쇄하다("테스트 정보 로그"); 통나무를 하다.정보("앱 시작!"); 통나무를 하다.정보("쿼팅 앱!"); 시스템.밖으로.인쇄하다(); 시스템.밖으로.인쇄하다("디버그 로그 테스트"); 만일 (1 > 2) { 통나무를 하다.디버그("1 > 2 평가 참"); 만일 (10 % 2 == 0) 통나무를 하다.디버그("10% 2는 0"); 다른 통나무를 하다.디버그("10% 2가 0이 아님"); } 다른 { 통나무를 하다.디버그("1 > 2 평가 거짓"); } 시스템.밖으로.인쇄하다(); 시스템.밖으로.인쇄하다("테스트 추적 로그"); 통나무를 하다.자취를 감추다("콜링 트레이스 방식."); 통나무를 하다.자취를 감추다("콜링 트레이스 방식."); 통나무를 하다.자취를 감추다("콜링 트레이스 방식."); 통나무를 하다.자취를 감추다("콜링 트레이스 방식."); 통나무를 하다.자취를 감추다("콜링 트레이스 방식."); 시스템.밖으로.인쇄하다(); 시스템.밖으로.인쇄하다("로그 테스트 완료."); } }
참고 항목
- log4j
- 체인소(로그 파일 뷰어)
- GitHub에 대한 공동 기록
참조
- ^ "commons logging". Apache.org. Apache. Retrieved 12 February 2016.
- ^ Zavala, D.A.; Lau, Y.C. (2004). Integrating Jakarta Commons Logging with IBM WebSphere Application Server V5. IBM corporation. p. 2.
- ^ a b c "contents". Apache.org. Apache. Retrieved 12 February 2016.
- ^ a b Iverson, W. (2005). Apache Jakarta Commons - Reusable Java Components. Crawfordsville, Indiana, USA: Pearson Education, Inc. pp. 120–122.