z/OS Connect 파일 시스템 로거 인터셉터 설정

파일 시스템 로거 인터셉터를 사용하면 z/OS Connect 사용자가 파일 시스템 파일에서 요청 정보를 로깅할 수 있습니다.

이 태스크 정보

zosConnect-1.0 또는 zosConnect-1.2 기능을 구성하고 구성을 필요로 하는 경우 이 기능을 사용할 수 있습니다.

표 1. 생성된 로그 파일에 있는 항목에 대한 설명
Entry 설명
DateTime 서비스 호출 전에 로거 인터셉터가 계산한 날짜 및 시간
ThreadID 서비스 요청을 처리 중인 스레드 ID
UserName 요청을 처리 중인 사용자 이름
RequestID z/OS Connect가 생성한 요청 추적 ID
RemoteAddress 요청을 시작한 클라이언트 또는 요청을 보낸 마지막 프록시의 IP(Internet Protocol) 주소
LocalAddress 요청을 수신한 인터페이스의 IP(Internet Protocol) 주소
MessageType 페이로드가 요청과 응답 중 어디에서 시작되었는지 식별
MessageSize 페이로드의 문자 크기
MessageData 요청 또는 응답 페이로드
*****************************************************************************
ServerName: com.ibm.ws.zos.connect.interceptor.logger.fs
*****************************************************************************
DateTime:2015-07-19_12-14-02 | ThreadId:47 | UserName:Fred | RequestID:0000000000000001000000000000000000000000000000 | 
RemoteAddress:127.0.0.1 | LocalAddress:127.0.0.1
MessageType:REQUEST
MessageSize:27
MessageData:{"payload":"HELLO_SERVICE"}

DateTime:2015-07-19_12-14-02 | ThreadId:47 | UserName:Fred | RequestID:0000000000000001000000000000000000000000000000 | 
RemoteAddress:127.0.0.1 | LocalAddress:127.0.0.1
MessageType:RESPONSE
MessageSize:26
MessageData:{"payload":"HELLO_CALLER"}

프로시저

  1. fileSystemloggerInterceptor 요소를 글로벌로 구성하십시오.
    <fileSystemloggerInterceptor id="globalFileSystemLogger" logName="globalLog_%SERVERNAME%"/>
    <zosConnectInterceptors id="globalInterceptorList" interceptorRef="globalFileSystemLogger" />
    <zosConnectManager globalInterceptorsRef="globalInterceptorList/>

    예에서 모든 z/OS Connect 서비스 요청은 globalLog_myServer1_yyyy-MM-dd_HH_mm_ss_SSS.log 파일에 로깅되며, 여기서 myServer1은 서버의 이름입니다. 유일한 필수 구성 요소는 logName 속성 정의입니다. 구성 요소는 로그 작성 시 서버의 이름으로 바뀐 %SERVERNAME% 문자열을 채택합니다. 기본 로그 파일 위치는 ${server.output.dir}/logs/zosConnect입니다. 사용 가능한 구성 속성 및 기본값에 대한 자세한 정보는 z/OS Connect 1.0z/OS Connect 1.2에 대한 문서를 참조하십시오.

    또한 특정 서비스에 fileSystemloggerInterceptor 요소를 구성할 수 있습니다.
     <fileSystemloggerInterceptor id="serviceYFileSystemLogger" 
                                     logName="service1Log" 
                                     logPath="/zosConnect/logs"
                                     logOption="RESPONSE"
                                     maxPayloadSize="30720"/>
    <zosConnectInterceptors id="serviceYInterceptorList" interceptorRef="serviceYFileSystemLogger" />
    <zosConnectService serviceName="serviceY" serviceRef="serviceY" interceptorsRef="serviceYInterceptorList"/>
    <usr_myService id="serviceY"/>

    예에서 모든 z/OS Connect 서비스 요청은 service1Log_yyyy-MM-dd_HH_mm_ss_SSS.log 파일에 로깅되며 이 파일은 /zosConnect/logs 경로에 위치합니다. 로그 경로는 완전한 경로입니다. serviceY를 대상으로 하는 모든 수신 요청에 대해 응답 데이터만 로깅됩니다. 최대 JSON 페이로드는 30,720문자로 구성되므로 30,720문자보다 큰 JSON(응답) 페이로드는 구성된 최대 페이로드 크기로 잘립니다.

  2. (선택사항) 버퍼링된 로깅을 사용하도록 bufferedLoggingbufferSize 속성 정의를 구성하십시오. 기본 버퍼 크기는 8KB입니다. 버퍼가 가득 차면 버퍼의 모든 레코드를 디스크로 보내 비웁니다. 성능이 주요 관심사이며 장애 상황에서 미저장 레코드의 손실이 허용되는 경우 버퍼링된 로깅을 사용하는 것이 적합합니다.
     <fileSystemloggerInterceptor id="globalFileSystemLogger" 
                                     logName="globalLog_%SERVERNAME%"
                                     bufferedLogging="true"
                                     bufferSize="16384"/>
  3. (선택사항) rollOffLogPolicy 속성을 구성하십시오. 이 정책에 따르면 활성 로그 파일이 50MB라는 기본 파일 크기 또는 지정된 크기에 도달한 경우 새 파일이 작성됩니다. 활성 로그 파일이 작성된 후 24시간이라는 기본 시간 또는 지정된 시간이 만료되는 경우에도 새 파일이 작성될 수 있습니다. 다음 예에서는 파일 크기가 16KB에 도달하면 파일이 작성됩니다. 이름 지정 스키마는 다음과 같습니다. globalLog_myServer1_yyyy-MM-dd_HH_mm_ss_SSS.log. 작성된 로그 파일의 이름 차이는 지정된 파일 작성 시 사용되는 시간소인입니다.
    <fileSystemloggerInterceptor id="globalFileSystemLogger" 
                                     logName="globalLog_%SERVERNAME%"
                                     rollOffLogPolicy="SIZE"
                                     rollOffLogPolicySize="16384"/>

주제의 유형을 표시하는 아이콘 태스크 주제

파일 이름: twlp_zconnect_file_sys_log_int.html