[AIX Solaris HP-UX Linux Windows][IBM i]

오브젝트 요청 브로커 통신 추적

ORB(Object Request Broker) 통신 추적은 일반적으로 CommTrace로 참조되며 애플리케이션이 실행될 때 ORB에 의해 전송 및 수신되는 GIOP(General InterORB Protocol) 메시지를 포함합니다.

참고: 이 주제는 하나 이상의 애플리케이션 서버 로그 파일을 참조합니다. 권장되는 대안은 분배 및 IBM® i 시스템에서 SystemOut.log, SystemErr.log, trace.logactivity.log 파일을 사용하는 대신 HPEL(High Performance Extensible Logging) 로그를 사용하고 인프라를 추적하도록 서버를 구성하는 것입니다. 원시 z/OS® 로깅 기능과 연계하여 HPEL을 사용할 수도 있습니다. HPEL을 사용하는 경우 서버 프로파일 바이너리 디렉토리의 LogViewer 명령행 도구를 사용하여 모든 로그에 액세스하고 정보를 추적할 수 있습니다. HPEL 사용에 대한 자세한 정보는 HPEL을 사용한 애플리케이션 문제점 해결 정보를 참조하십시오.

문제점 판별 중 클라이언트 대 서버 또는 서버 대 서버 상호작용의 하위 레벨 시퀀스에 대한 이해가 필요할 수 있습니다. 이 주제에서는 로그 예제의 추적 항목을 사용하여 로그의 컨텐츠를 설명하고 상호작용 시퀀스에 대한 이해를 돕습니다. 이 주제는 GIOP 메시지에만 초점을 맞추고 GIOP 메시지 경계와 간섭되는 경우 표시되는 세부사항 추가 추적 정보는 논의하지 않습니다.

위치

[AIX Solaris HP-UX Linux Windows]ORB 추적이 사용으로 설정되는 경우 이 정보는 app_server_root/profiles/profile_name/logs/server_name/trace.log 디렉토리에 배치됩니다.

[IBM i]ORB 추적이 사용으로 설정되는 경우 이 정보는 profile_root/logs/server_name/trace.log 디렉토리에 배치됩니다.

ORB 추적 파일 정보

다음은 ORB 추적이 사용으로 설정되면 작성되는 파일의 특성입니다.

  • 읽기 전용
  • 관리 기능에 의해 업데이트됨
  • 이 파일을 사용하여 ORB 관련 문제점을 로컬화하고 해결합니다.

출력을 해석하는 방법

다음 섹션은 이 주제 뒷 부분에 있는 샘플 로그 출력을 참조합니다.

정보 식별
GIOP 메시지의 시작은 메시지가 프로세스에 의해 전송 또는 수신되는지 여부에 따라 OUT GOING: 또는 IN COMING:을 포함하는 행으로 식별됩니다.
편의상 형식화된 식별 행 뒤의 항목은 이 특정 메시지 상호작용에서 엔드포인트를 식별하는 원래 메시지에서 추출된 정보를 포함하는 일련의 항목입니다. 두 예제에서 행 3 - 13을 참조하십시오. 형식화된 항목은 다음을 포함합니다.
  • GIOP 메시지 유형(3행)
  • 메시지가 기록된 날짜 및 시간(4행)
  • 메시지가 기록할 때 실행되는 스레드를 식별하는 데 유용한 정보 및 기타 스레드 특정 정보(5행)
  • 상호작용에 사용되는 로컬 및 원격 TCP/IP 포트(6 - 9행)
  • GIOP 버전, 바이트 순서, 메시지가 단편인지 여부 표시 및 메시지 크기(10 - 13행)
요청 ID, 응답 예상 및 응답 상태
소개 메시지 정보 뒤 요청 ID는 ORB에서 생성되는 정수입니다. 이는 각 요청을 식별하여 해당 응답과 연관시키는 데 사용됩니다. ORB는 다중 클라이언트에서 요청을 수신할 수 있고 각 응답을 해당 시작 요청과 연관시킬 수 있어야 하기 때문에 이 연관이 필요합니다.
  • 요청 예제에서 15 - 17행은 그 뒤에 응답이 예상되는 수신 엔드포인트(CORBA는 응답이 예상되지 않는 단방향 요청 전송을 지원함)에 대한 표시가 오는 요청 ID를 표시합니다.
  • 샘플 로그 항목 - GIOP 응답에서 15행은 요청 ID를 표시하며 33행은 이전에 전송된 요청을 완료한 후에 수신되는 응답 상태를 표시합니다.
오브젝트 키
요청 예제에서 18 - 20행은 요청 메시지를 수신하도록 의도된 대상 오브젝트를 식별하고 찾기 위해 ORB가 사용하는 내부 표시인 오브젝트 키를 표시합니다. 오브젝트 키는 표준화되지 않습니다.
조작
요청 예제에서 21행은 대상 오브젝트가 수신 엔드포인트에서 시작하는 조작의 이름을 표시합니다. 이 예제에서 요청된 특정 조작의 이름은 _get_value입니다.
서비스 컨텍스트 정보
메시지의 서비스 컨텍스트도 편의상 형식화됩니다. 각 GIOP 메시지는 각 엔드포인트에서 전송되고 수신된 일련의 서비스 컨텍스트를 포함할 수 있습니다. 고유하게 ID로 식별되는 서비스 컨텍스트는 보안, 문자 코드 세트 변환 및 ORB 버전 정보와 같은 특정 상호작용에서 사용되는 데이터를 포함합니다. 다른 서비스 컨텍스트가 독점적이고 각 공급업체에 의해 지정되는 반면에 일부 서비스 컨텍스트의 컨텍스트는 OMG에 의해 표준화되고 지정됩니다. IBM 특정 서비스 컨텍스트는 0x4942로 시작하는 ID로 식별됩니다.

요청 예제에서 22 - 41행은 일반적인 서비스 컨텍스트 항목을 보여줍니다. 요청 메시지에는 22행에 표시된 대로 세 개의 서비스 컨텍스트가 있습니다. 각 서비스 컨텍스트의 ID, 데이터 길이 및 원시 데이터가 다음에 출력됩니다. 23 - 25행은 0x49424D12 ID로 표시되는 IBM 독점 컨텍스트를 표시합니다. 26 - 41행은 0x6 ID(26행) 및 0x1 ID(39행)로 식별되는 두 개의 표준 서비스 컨텍스트를 표시합니다.

샘플 로그 항목 - GIOP 응답에서 16 - 32행은 두 개의 서비스 컨텍스트인 한 개의 IBM 독점적 서비스 컨텍스트(17행)와 한 개의 표준화된 서비스 컨텍스트(20행)를 보여줍니다.

표준화된 서비스 컨텍스트의 정의는 CORBA 스펙을 참조하십시오. 서비스 컨텍스트 0x1(CORBA::IOP::CodeSets)은 문자 데이터를 전송하는 데 사용되는 코드 세트를 협상하고 판별하기 위해 ORB가 지원하는 문자 코드 세트를 공개하는 데 사용됩니다. 서비스 컨텍스트 0x6(CORBA::IOP::SendingContextRunTime)는 SendingContextRuntime 오브젝트의 IOR에 수신 엔드포인트를 제공하기 위해 RMI-IIOP(Remote Method Invocation over the Internet Inter-ORB Protocol)에서 사용됩니다. IBM 서비스 컨텍스트 0x49424D12는 전송 ORB와 수신 ORB 간 릴리스 대 릴리스 상호 운용성을 지원하기 위해 ORB PartnerVersion 정보를 공개하는 데 사용됩니다.

데이터 오프셋
요청 예제에서 42행은 GIOP 메시지의 시작과 관련되며 요청 또는 응답 메시지의 나머지 본문이 있는 위치인 오프셋을 표시합니다. 메시지의 이 부분은 각 조작에 특정하고 조작별로 달라집니다. 따라서 ORB에 특정 컨텐츠가 알려지지 않은 경우 형식화되지 않습니다. 오프셋은 원래 GIOP 메시지 덤프에서 조작에 특정한 데이터를 빠르게 찾기 위한 도구로 출력되며 데이터 오프셋 뒤에 옵니다.
원래 GIOP 메시지 덤프
요청 예제에서는 45행부터 시작하고 샘플 로그 항목 - GIOP 응답에서는 36행부터 시작하는 전체 GIOP 메시지의 원래 덤프는 16진 형식으로 출력됩니다. 요청 메시지는 지정된 조작에 필요한 매개변수를 포함하고 응답 메시지는 지정된 조작에서 필요한 리턴 값 및 출력 매개변수의 컨텐츠를 포함합니다. 간략하게 하기 위해 모든 원시 데이터를 그림에 포함시키지는 않았습니다.

샘플 로그 항목 - GIOP 요청

1.  OUT GOING:

3.
Request Message
4.  Date:          April 17, 2002 10:00:43 PM CDT
5.
Thread Info:   P=842115:O=1:CT
6.  Local Port:    1243 (0x4DB)
7.  Local IP:      jdoe.austin.ibm.com/192.168.1.101
8.  Remote Port:   1242 (0x4DA)
9.  Remote IP:     jdoe.austin.ibm.com/192.168.1.101
10. GIOP Version:  1.2
11. Byte order:    big endian
12. Fragment to follow: No   
13. Message size:  268 (0x10C)
--
15. Request ID:        5
16. Response Flag:     WITH_TARGET
17. Target Address:     0
18. Object Key:        length = 24 (0x18)
                       4B4D4249 00000010 BA4D6D34 000E0008 
                       00000000 00000000                   
21. Operation:         _get_value
22. Service Context:   length = 3 (0x3)
23. Context ID:  1229081874 (0x49424D12)
24. Context data:  length = 8 (0x8)
                       00000000 13100003                   
26. Context ID:  6 (0x6)
27. Context data:  length = 164 (0xA4)
                       00000000 00000028 49444C3A 6F6D672E 
                       6F72672F 53656E64 696E6743 6F6E7465 
                       78742F43 6F646542 6173653A 312E3000 
                       00000001 00000000 00000068 00010200 
                       0000000E 3139322E 3136382E 312E3130 
                       310004DC 00000018 4B4D4249 00000010 
                       BA4D6D69 000E0008 00000000 00000000 
                       00000002 00000001 00000018 00000000 
                       00010001 00000001 00010020 00010100 
                       00000000 49424D0A 00000008 00000000 
                       13100003                            
39. Context ID:  1 (0x1)
40. Context data:  length = 12 (0xC)
                       00000000 00010001 00010100          
42. Data Offset:       118


45. 0000: 47494F50 01020000 0000010C 00000005   GIOP............
46. 0010: 03000000 00000000 00000018 4B4D4249   ............KMBI
47. 0020: [remainder of message body deleted for brevity]

샘플 로그 항목 - GIOP 응답

1.  IN COMING:

3.
Reply Message
4.  Date:          April 17, 2002 10:00:47 PM CDT
5.
Thread Info:   RT=0:P=842115:O=1:com.ibm.rmi.transport.TCPTransportConnection 
5a (line 5 broken for publication).   remoteHost=192.168.1.101 remotePort=1242 localPort=1243
6.  Local Port:    1243 (0x4DB)
7.  Local IP:      jdoe.austin.ibm.com/192.168.1.101
8.  Remote Port:   1242 (0x4DA)
9.  Remote IP:     jdoe.austin.ibm.com/192.168.1.101
10. GIOP Version:  1.2
11. Byte order:    big endian
12. Fragment to follow: No   
13. Message size:  208 (0xD0)
--
15. Request ID:        5
16. Service Context:   length = 2 (0x2)
17. Context ID:  1229081874 (0x49424D12)
18. Context data:  length = 8 (0x8)
                       00000000 13100003                   
20. Context ID:  6 (0x6)
21. Context data:  length = 164 (0xA4)
                       00000000 00000028 49444C3A 6F6D672E 
                       6F72672F 53656E64 696E6743 6F6E7465 
                       78742F43 6F646542 6173653A 312E3000 
                       00000001 00000000 00000068 00010200 
                       0000000E 3139322E 3136382E 312E3130 
                       310004DA 00000018 4B4D4249 00000010 
                       BA4D6D34 000E0008 00000001 00000000 
                       00000002 00000001 00000018 00000000 
                       00010001 00000001 00010020 00010100 
                       00000000 49424D0A 00000008 00000000 
                       13100003                            
33. Reply Status:      NO_EXCEPTION


36. 0000: 47494F50 01020001 000000D0 00000005   GIOP............
37. 0010: 00000000 00000002 49424D12 00000008   ........IBM.....
38. 0020: [remainder of message body deleted for brevity]

주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rorb_traceo
파일 이름:rorb_traceo.html