![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
사용자 정의 로그 파일 형식
요청이 처리될 때 규칙 세트를 작성하여 로그에 포함시킬 데이터, 표시 순서, 포함되는 요청 필터링을 위한 조건부 로직, 로그 파일 번호 및 이름을 지정할 수 있습니다.
사용자 정의 특성 오브젝트
규칙 세트, 규칙, 조치 레벨에서 사용자 정의 특성 오브젝트를 사용할 수 있습니다. 규칙은 실행되는 로그 조치를 기반으로 조건을 판별합니다. 표현식 필드는 로그할 요청과 응답을 판별하는 데 사용됩니다. 이 표현식은 표준 HTTP 언어 피연산자와 response.code 피연산자를 사용하여 HTTP 응답 코드(예: 404 또는 503)별로 필터링합니다. 예를 들어, response.code = 200은 응답 코드 200에 대해 모든 응답을 필터링합니다. HTTP 피연산자 targetserver는 WebSphere® Application Server 형식으로 요청이 전송된 서버를 표시하는 데 사용됩니다. HTTP 사용자 정의 로그 피연산자 service.time은 애플리케이션 서버로 요청이 전송되는 시간과 애플리케이션 서버에서 응답이 수신되는 시간 사이의 시간 범위입니다. HTTP 사용자 정의 로그 피연산자 response.time은 ODR에 요청이 수신되는 시간과 ODR에서 요청 응답이 전송되는 시간 사이의 시간 범위입니다. 자세한 정보는 HTTP 사용자 정의 로그 피연산자에 대해 읽으십시오.
규칙 우선순위는 규칙 평가 순서를 판별합니다. 규칙이 일치하면 특정 로그 조치가 발생합니다. 로그 조치에는 continue 필드가 있습니다. continue가 true로 설정되면 후속 로그 조치를 실행할 수 있습니다. 그러나 continue가 false로 설정된 경우에는 로그 조치가 완료되면 후속 로그 조치가 수행되지 않습니다. manageODR.py 스크립트를 사용하여 ODR 클러스터를 작성하고 사용자 정의 로깅을 관리하십시오. 자세한 정보는 manageODR.py 스크립트에 대해 읽으십시오.
규칙 세트
- 이름
- 규칙 세트 이름을 지정합니다(문자열, 필수)
- type
- 규칙 세트 유형을 지정합니다(문자열, HTTP와 같은 프로토콜 ID).
- continueDefault
- continue의 기본값을 판별합니다(부울, 필수)
- 특성
- 선택적
- rule
- 필수
규칙
- 이름
- 규칙의 이름을 지정합니다. (문자열, 규칙 세트 내에서 고유함).
- priority
- 필수, 정수(규칙 세트 내에서 고유함).
- expression
- 문자열, 필수
- action
- 필수.
- 특성
- 선택적
조치
- 이름
- 조치의 이름을 지정합니다. (문자열, 규칙 내에서 고유함).
- priority
- 선택사항, 정수(규칙 내에서 고유함)
- type
- 문자열, 필수, 로그
- value
- 필수(문자열, @로 구분된 일련의 logFormat을 포함).
예를 들어 다음과 같습니다.
value="custom01.log %a%z@custom02.log @(#) 10 1.7@(#)Z"
- continue
- 선택사항, 부울. 설정되지 않으면 기본값은 continueDefault 값(true, false)으로 설정됩니다.
- 특성
- 선택적
customProperties
- 이름
- 사용자 정의 특성 이름을 지정합니다(문자열)
- value
- 필수(문자열)
- continue
- 선택사항, 부울. 설정되지 않으면 기본값은 continueDefault 값(true, false)으로 설정됩니다.
로그 조치 형식
조치 값 속성은 로그의 파일 이름과 형식을 표시할 인수 세트를 포함합니다. 값 속성에 여러 개의 로그를 작성하려면 @를 사용하여 인수를 구분하십시오. 로그 조치의 첫 번째 인수는 ODR logs 디렉토리에 상대적인 로그 파일 이름입니다. 다음 인수는 로그에 배치할 정보를 지정하는 매개변수입니다. 매개변수가 지정된 순서로 데이터가 표시되어 있습니다.
매개변수 | 설명 |
---|---|
%a | 원격 IP 주소입니다. |
%A | 로컬 IP 주소입니다. |
%B | 전송된 바이트(HTTP 헤더 제외)입니다. |
%b | 전송된 바이트(HTTP 헤더 제외)입니다. CLF 형식으로 바이트가 전송되지 않은 경우 0이 아닌 '-'입니다. |
%{FOOBAR}C | 서버로 전송된 요청의 쿠키 컨텐츠입니다. |
%{FOOBAR}i | 서버로 전송된 요청의 Foobar(헤더 라인) 컨텐츠입니다. |
% I | 수신된 바이트(요청과 헤더 포함)는 0이 아니어야 합니다. |
%{FOOBAR}e | ODR 프로세스의 JVM에 대해 지정된 디버그 인수("-D") FOOBAR의 컨텐츠입니다. |
%h | 원격 호스트입니다. |
%H | 요청 프로토콜 HTTP 또는 HTTPS입니다. |
%m | 요청 메소드입니다. |
%{FOOBAR}o | 응답의 Foobar(헤더 라인) 컨텐츠입니다. |
%O | 전송된 바이트(헤더 포함)입니다. 이 숫자는 0이 아니어야 합니다. |
%p | 요청을 서비스하는 서버의 정규 포트입니다. |
%q | 조회 문자열입니다(조회 문자열이 있는 경우 ? 접두부가 있음). 그렇지 않으면 빈 문자열입니다. |
%r | 요청의 첫 번째 행입니다. |
%R | 응답 시간(밀리초)입니다. ODR과 애플리케이션 서버에서 전송된 결합 시간입니다. |
%s | 상태, HTTP 응답 코드(즉, 503, 404, 200)입니다. |
%t | 시간(표준 영어 형식의 공통 로그 형식 시간 형식)입니다. |
%{format}t | 형식별로 주어진 양식의 시간입니다(strftime(3) 형식이어야 함). 자국어로 지원 가능성이 있습니다. |
%T | 요청을 서비스하는 데 소요된 시간(밀리초)입니다. |
%U | 요청된 URL 경로입니다(조회 문자열을 포함하지 않음). |
%v | 요청을 서비스하는 서버의 정규 ServerName입니다. |
%z | 대상 IP 주소입니다. |
%Z | 대상 서버 이름(셀/노드/서버)입니다. |