거래그룹
개요
거래그룹은 관련된 거래들을 논리적으로 묶어 관리하는 컨테이너입니다. 거래를 그룹화함으로써 다음과 같은 이점을 얻을 수 있습니다.
-
관련 거래의 체계적인 분류 및 관리
-
파싱 규칙의 상속을 통한 설정 간소화
-
계층적 구조로 대규모 시스템 관리 용이
거래그룹 생성
리소스 트리에서 원하는 업무그룹 또는 상위 거래그룹의 컨텍스트 메뉴를 열고 [리소스 생성] > [거래그룹 생성]을 선택합니다.
워크스페이스의 탭 편집기 영역에 [거래그룹 생성] 탭이 표시되면 설정 정보를 입력합니다. [거래그룹 생성] 탭은 [거래그룹 정보] 및 [파싱 정보] 탭으로 구성됩니다.
설정이 완료되면 각 탭 하단의 [생성] 버튼을 클릭합니다.
거래그룹 정보 설정
[거래그룹 정보] 탭에서는 기본 정보와 요청/응답 메시지 정보를 설정합니다.
-
① 기본 정보 설정
거래그룹의 기본 정보를 입력합니다. (*: 필수 설정 항목)
항목 설명 거래그룹 아이디 *
거래그룹의 고유 식별자입니다. 영어 소문자로 시작해야 하며, 영어 대소문자, 숫자, 및 언더스코어(_)를 조합하여 2~32자 이내로 입력합니다.
거래그룹 이름
거래그룹의 표시 이름입니다. 2~32자 이내로 입력해야 하며, 한글, 영문, 숫자 및 다음 특수문자를 사용할 수 있습니다. 미입력 시 아이디 값으로 자동 설정됩니다.
* 언더스코어(_), 하이픈(-), 대괄호([]), 중괄호({}), 괄호(()), 쉼표(,), 콜론(:)
설명
거래그룹의 용도, 특징 등을 작성합니다.
-
② 요청/응답 메시지 설정
거래그룹의 요청 및 응답 메시지를 설정하는 방법은 거래의 요청 및 응답 메시지를 설정하는 방법과 동일합니다.
파싱 정보 설정
[거래그룹 생성] > [파싱 정보] 탭에서 거래그룹의 거래 식별 코드를 설정합니다.
거래 식별 코드는 상위 거래그룹의 파싱룰을 기준으로 메시지에서 추출한 값과 비교하여 거래그룹을 식별하는 데 사용되는 코드입니다.
거래 식별 코드 테이블에서 [+ 추가] 버튼을 클릭하여 다음 정보를 입력합니다.
| 항목 | 설명 |
|---|---|
거래 식별 코드 * |
상위 파싱룰로 추출된 값과 매칭할 해당 거래그룹의 식별 코드를 입력합니다. |
종류 |
메시지 유형입니다. 파싱룰은 요청 메시지를 기준으로 거래를 식별하므로 'REQUEST’로 고정됩니다. |
하위 거래 식별 방법 |
파싱룰 타입을 선택합니다. 각 타입에 대한 설명 및 추가 설정 항목에 대해서는 파싱룰 타입을 참고합니다.
|
거래 식별 코드를 삭제하려면 편집 모드에서 삭제할 행을 선택합니다. 거래 식별 코드 테이블 상단의 [삭제] 버튼이 활성화되면, 버튼을 클릭하여 선택한 행을 삭제합니다.
파싱룰 타입
파싱룰은 수신 메시지에서 거래 식별 코드를 추출하여, 해당 메시지를 처리할 거래를 결정하는 데 사용합니다. 파싱룰이 올바르지 않으면 거래 식별에 실패하여 메시지를 정상적으로 처리하지 못할 수 있습니다.
거래그룹에 설정한 파싱룰은 하위 거래그룹 및 거래에 상속됩니다.
거래그룹 A (파싱룰: JSON_POINTER, header.type)
├── 거래그룹 B (상속됨)
│ └── 거래 1 (상속됨)
└── 거래 2 (상속됨)
|
하위 거래그룹에서 파싱룰을 재정의하면 해당 설정이 우선 적용됩니다. |
다음은 각 파싱룰과 지원하는 프로토콜에 대한 설명입니다. Offset-Length, URL Parameter, Json Pointer 룰을 선택한 경우 추가 필드를 설정해야 합니다.
| 파싱룰 타입 | 설명 | 주요 프로토콜 | ||
|---|---|---|---|---|
사용 안 함 |
파싱룰을 사용하지 않으며, 하위 거래를 엔드포인트에 직접 연결하여 거래를 식별합니다.
|
- |
||
Offset-Length |
고정 위치에서 바이트 단위로 값을 추출합니다. Offset, Length 필드를 추가로 설정해야 합니다. |
TCP |
||
HTTP Path |
HTTP 요청 경로로 거래를 식별합니다. 추출되는 값은 HTTP 요청 경로입니다. (예: |
HTTP |
||
URL Parameter |
HTTP URL의 쿼리 파라미터에서 값을 추출합니다. key 필드를 추가로 설정해야 합니다. |
HTTP |
||
Json Pointer |
JSON 메시지에서 특정 필드 값을 추출하여 거래를 식별합니다. JSON Pointer 필드를 추가로 설정해야 합니다. |
HTTP, TCP (JSON 메시지 사용 시) |
Offset-Length 추가 필드 설정
Offset-Length 룰 타입을 선택한 경우 다음 필드를 필수로 설정해야 합니다. 고정 길이 메시지에서 특정 위치의 값을 추출하며, TCP 프로토콜의 전문 통신에서 주로 사용됩니다.
| 항목 | 설명 |
|---|---|
Offset * |
추출을 시작할 바이트 위치입니다. 0부터 시작합니다. |
Length * |
추출할 바이트 수입니다. |
다음은 Offset-Length 룰을 적용한 예시입니다.
메시지: [HEADER----][CODE][BODY-------------------]
0 10 14
오프셋: 10, 길이: 4 → "CODE" 추출
URL Parameter 추가 필드 설정
URL Parameter 룰 타입을 선택한 경우 다음 필드를 필수로 설정해야 합니다. HTTP URL의 쿼리 파라미터에서 값을 추출합니다.
| 항목 | 설명 |
|---|---|
key * |
추출할 쿼리 파라미터의 키 이름입니다. |
다음은 URL Parameter 룰을 적용한 예시입니다.
URL: /api/process?txType=TRANSFER&amount=100
key: txType → "TRANSFER" 추출
Json Pointer 추가 필드 설정
Json Pointer 룰 타입을 선택한 경우 다음 필드를 필수로 설정해야 합니다. JSON 메시지에서 dot notation을 사용하여 값을 추출합니다.
| 항목 | 설명 |
|---|---|
JSON Pointer * |
dot notation 경로입니다. 점(.)으로 중첩 필드에 접근합니다. |
다음은 JSON Pointer 룰의 문법입니다.
txType → 1단계 필드
header.code → 중첩 필드
items[0].type → 배열 요소의 필드
다음은 JSON Pointer 룰을 적용한 예시입니다.
| JSON Pointer | JSON | 추출 값 |
|---|---|---|
|
|
"TRANSFER" |
|
|
"0100" |
|
|
"A" |
거래그룹 조회 및 수정
리소스 트리에서 원하는 거래그룹을 클릭하면 워크스페이스의 탭 편집기 영역에 해당 거래그룹 탭이 표시됩니다.
조회 가능한 항목에 대한 설명은 거래그룹 생성을 참고합니다. 거래그룹 정보를 수정하려면 탭 하단의 [편집] 버튼을 클릭해 편집 모드로 전환합니다.