1.앞에서 말 했 듯 이 자바 의 개원 프로젝트 가 너무 많 습 니 다.이런 곳곳에 꽃 이 피 는 국면 은 중국 5 대 10 개국 시대 의'백가쟁명','백화 쟁명'의 번영 을 따라 잡 을 수 있 습 니 다.자바 기술 을 사용 하면 우리 의 프로젝트 는 자바 기반 개발 제품 을 구 매 할 필요 가 거의 없습니다.하나의 오픈 소스 제품 을 구조 사의 손 을 거 쳐 합 리 적 으로 조합 하고 연결 하면 유연성 이 좋 고 성능 이 좋 은 상업 제품 을 만 들 수 있 습 니 다.의심 할 여지없이 유행 하 는 로그 기록 도구 로 서 Log4j 는 자바 오픈 소스 프로젝트 에서 가장 빛 나 는 부분 중 하나 입 니 다.필자 가 본 자바 프로젝트 는 십중팔구 Log4j 를 사 용 했 는데 그 원인 을 따 져 보면 다음 과 같은 몇 가지 가 있다 고 생각 합 니 다.a)Log4j 는 대부분의 웹 응용 서버 의 지 지 를 받 고 있 습 니 다.제 가 현재 알 고 있 는 바 와 같이 tomcat,weblogic,websphere,jboss 는 모두 log4j 를 지원 합 니 다.b)빠 르 고 강력 한 기능:Log4J 프로필 은 콘 솔,파일,스크롤 백 파일,로그 메 일 발송,데이터베이스 로그 시트 출력,사용자 정의 탭 등 모든 기능 을 실현 합 니 다.속도 에 있어 log 4 j 가 나타 나 기 시 작 했 을 때 운행 을 중시 하 는 속도 가 1 위 를 차 지 했 고 꾸준히 개선 하고 보완 했다.c)사용 이 간단 하고 편리 합 니 다.간단 한 log4j-1.2.x.jar 를 가 져 온 다음 프로그램 류 의 시작 부분 에 다음 private final static Logger log=Logger.getLogger(ClassName.class)를 쓰 십시오.이렇게 하면 로그 대상 log 를 얻 을 수 있 고 특정한 목표 에 로 그 를 쉽게 쓸 수 있 습 니 다.2.왜 Log4j 가 필요 합 니까?프로젝트 의 디 버 깅 은 log4j 가 발생 하 는 내 적 구 동력 의 원시 적 인 방법 으로 정 보 를 화면(console)에 출력 하고 JDK 가 제공 하 는 System.out.println 을 이용 하 는 것 입 니 다.그러나 이렇게 하 는 나 쁜 점 은 분명 하 다.a)정보의 수출 이 원활 하지 않 고 번거롭다.예 를 들 어 실행 중인 파일 이름,줄 수,현재 시간 등 을 출력 하려 면 println 이 원시 적 으로 보 입 니 다.b)출력 내용 과 형식 을 바 꾸 려 면 원본 프로그램 을 다시 컴 파일 해 야 합 니 다.c)더 심각 한 것 은 프로그램 에 println 이 많 으 면 프로그램의 성능 에 심각 한 영향 을 줄 수 있다 는 것 이다.3.Log4j 가 사용 하 는 몇 가지 관건 은?루트 기록 기(Logger),출력 단(appenders)과 레이아웃(layouts)a)은 루트 기록 기의 형식 을 log4j.rootLogger=[level],appendName 1,appendName 2,...appendNamen 으로 정의 합 니 다.같은 기록 기 는 여러 개의 출력 단 을 가 질 수 있다.PS:level 의 등급(이 단 계 는 사용자 정의 할 수 있 습 니 다.시스템 은 기본적으로 다음 단 계 를 제공 합 니 다)◆debug//디 버 깅 정보◆info//일반 정보◆warn//경고 정보◆error//오류 정보◆fatal//치 명 적 인 오류 정보 위 에 열거 한 것 은 log 4 j 의 출력 등급 입 니 다.log 4 j 는 위 에서 아래로 각각 ERROR,WARN,INFO,DEBUG 를 사용 합 니 다.정 의 된 단계 가 info 라 고 가정 하면 error 와 warn 의 로 그 는 그 보다 낮은 debug 정 보 를 표시 하지 않 습 니 다.b)appender 의 출력 목적 지 를 log4j.appeender.appenderName=fully.qualified.name.of.appeender.class 로 정의 합 니 다.log4j 는 다음 과 같은 몇 가지 자주 사용 하 는 출력 목적 지 를 제공 합 니 다.◆org.apache.log4j.consoleAppender,로그 정 보 를 콘 솔◆org.apache.log4j.FileAppender 에 출력 하고 로그 정 보 를 한 파일 에 출력 합 니 다◆org.apache.log4j.Daily Rolling FileAppender,로그 정 보 를 한 파일 에 출력 합 니 다.또한 매일 새로운 로그 파일◆org.apache.log4j.RollingFileAppender 로 로그 정 보 를 파일 에 출력 합 니 다.지정 한 파일 의 사 이 즈 를 통 해 파일 크기 가 지정 한 크기 에 이 르 렀 을 때 자동 으로 파일 이름 을 바 꿉 니 다.예 를 들 어 example.log 라 는 문 서 는 example.log.1 로 이름 을 바 꾸 고 새로운 example.log 파일 을 만 듭 니 다.새 파일 이 다시 지정 한 크기 에 도달 하면 자동 으로 파일 을 example.log.2 로 바 꾸 고 example.log 파일 을 만 듭 니 다.이 유추 에 따 르 면 example.log.MaxBackupIndex,MaxBackupIndex 의 값 은 설정 파일 에서 정의 할 수 있 습 니 다.◆org.apache.log4j.Writer Appender,로그 정 보 를 임의의 지정 한 곳 으로 스 트림 형식 으로 보 냅 니 다.◆org.apache.log4j.jdbc.JDBCappender,JDBC 를 통 해 로그 정 보 를 데이터베이스 에 출력 한다.c)출력 형식(레이아웃)layout Log4j 는 몇 가지 레이아웃 을 제공 합 니 다.◆org.apache.log4j.HTML Layout,HTML 표 형식 으로 레이아웃◆org.apache.log4j.PatternLayout,레이아웃 모드◆org.apache.log4j.Simple Layout 를 유연 하 게 지정 할 수 있 습 니 다.로그 정 보 를 포함 하 는 단계 와 정보 문자열 은 PatternLayout 레이아웃 을 정의 하 는 문 구 를 log4j.appeender.stdout.layot=org.apache.log4j.PatternLayout log4j.appender.stdout.layot.ConversionPattern=%d{ABSOLUTE}%5p%c{1}-%m%n PS:ConversionPattern 매개 변수의 형식 의미 형식 명 의미%c 출력 로그 정보 에 속 하 는 클래스 의 전체 이름%d 로 지 는 것 을 정의 합 니 다.로그 시점 의 날짜 나 시간,기본 형식 은 ISO 8601 이 며,다음 형식 도 지정 할 수 있 습 니 다.예 를 들 어%d{yy-MM-dd HH:mm:ss},출력 유사:2002-10-18-22:10:28%f 출력 로그 정보 에 속 하 는 클래스 이름%l 출력 로그 이벤트 의 발생 위치,로그 정 보 를 출력 하 는 문 구 는 로그(message)의 message%n 에서 Enter 줄 바 꿈 자 를 출력 합 니 다.Windows 플랫폼 은'\r'이 고 유 닉 스 플랫폼 은'%p 출력 우선 순위'입 니 다.즉,DEBUG,INFO,WARN,ERROR,FATAL 입 니 다.debug()출력 을 호출 하 는 경우 DEBUG 입 니 다.이 유추%r 는 로그 정 보 를 출력 하 는 데 걸 리 는 밀리초%t 출력 으로 로그 이 벤트 를 만 드 는 스 레 드 이름 4,log4j 의 설정 파일 입 니 다.log4j.properties 또는 log4j.xml a)는 Log4J◆프로그램 에서 Basic Configurator.configure()방법 을 설정 할 수 있 는 몇 가지 방법 이 있 습 니 다.◆설정 을 파일 에 넣 고 명령 행 매개 변 수 를 통 해 파일 이름 을 전달 하고 Property Configurator.configure(args[x])를 통 해 분석 하고 설정 합 니 다.◆설정 을 파일 에 넣 고 환경 변 수 를 통 해 파일 이름 등 정 보 를 전달 하고 log4j 의 기본 초기 화 과정 을 이용 하여 분석 하고 설정 합 니 다.◆설정 을 파일 에 넣 고 서버 설정 을 통 해 파일 이름 등 정 보 를 전달 하고 특수 한 servlet 를 이용 하여 설정 을 완성 합 니 다.b)프로필 초기 화:응용 서버 를 통 해 초기 화 완료 servlet 보조 로 초기 화 c)log4j.properties 파일 예제
jar 가방 두 개가 필요 합 니 다:servlet.jar 와 log4j-1.2.9.jar.준비 가 다 되 었 습 니 다.tomcat 또는 weblogic 에서 실 행 됩 니 다.필 자 는 잠시 weblogic 로 대 체 했 습 니 다.Logger logger=Logger.getLogger(MyServlet.class)를 실행 할 때마다;E:\wangzj\myapplication.log 파일 을 생 성 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다: