1.2. APIcast에서 3scale API 사용을 캡처하기 위한 매핑 규칙을 적용하는 방법
API에 대한 요청에 따라 매핑 규칙은 메트릭을 정의하거나 API 사용량을 캡처할 메서드를 지정합니다. 다음은 매핑 규칙의 예입니다.
					이 규칙은 지표 적중 횟수를 1 만큼 늘리거나 로 시작하는 GET 요청을 의미합니다. 이 규칙은 API에 대한 모든 요청과 일치합니다. 이 규칙은 유효한 매핑 규칙이지만 너무 일반적이며 보다 구체적인 매핑 규칙을 추가하면 종종 두 번 카운트가 발생합니다.
				
Echo API에 대한 다음 매핑 규칙은 더 구체적인 예를 보여줍니다.
매핑 규칙은 API 제품 및 API 백엔드 수준에서 작동합니다.
- 제품 수준에서 룰 매핑. - 매핑 규칙이 우선합니다. 즉, 제품 매핑 규칙이 평가되는 첫 번째 규칙입니다.
- 매핑 규칙은 리디렉션된 트래픽을 수신하는 백엔드와 관계없이 항상 평가됩니다.
 
- 백엔드 수준에서 규칙 매핑. - 백엔드에 매핑 규칙을 추가하면 백엔드가 결합된 모든 제품에 추가됩니다.
- 매핑 규칙은 제품 수준에서 정의된 매핑 규칙 다음에 평가합니다.
- 매핑 규칙은 트래픽이 매핑 규칙이 속하는 동일한 백엔드로 리디렉션되는 경우에만 평가됩니다.
- 제품의 백엔드 경로는 언급된 제품에 번들로 묶인 백엔드의 각 매핑 규칙에 자동으로 앞에 추가됩니다.
 
제품 및 백엔드를 사용하여 룰 매핑의 예
다음 예제에서는 백엔드가 1개인 제품에 대한 매핑 규칙을 보여줍니다.
- Echo API 백엔드: - 
									프라이빗 엔드 포인트가 있음: https://echo-api.3scale.net
- 다음 패턴과 함께 2개의 매핑 규칙이 포함되어 있습니다. - /hello /bye - /hello /bye- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
- 
									프라이빗 엔드 포인트가 있음: 
- collectd API 제품: - 
									이 공용 엔드 포인트가 있음 : https://cool.api
- 
									이 라우팅 경로 /echo와 함께 Echo API 백엔드를 사용합니다.
 
- 
									이 공용 엔드 포인트가 있음 : 
- 다음 패턴을 사용한 매핑 규칙은 자동으로 API 제품의 일부입니다. - /echo/hello /echo/bye - /echo/hello /echo/bye- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
이제 동일한 Echo API 백엔드를 사용하는 Tools For Devs 라는 추가 제품을 고려해 보십시오.
- Devs용 툴: - 
									이 공용 엔드 포인트가 있음 : https://dev-tools.api
- 
									다음과 같은 라우팅 경로와 함께 Echo API 백엔드를 사용합니다. /tellmeback.
 
- 
									이 공용 엔드 포인트가 있음 : 
- 다음 패턴을 사용하여 룰 매핑은 자동으로 Tools For Devs 제품의 일부입니다. - /tellmeback/hello /tellmeback/bye - /tellmeback/hello /tellmeback/bye- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- /ping패턴과 함께 매핑 규칙을 Echo API 백엔드에 추가하면 두 제품(API 및 Tools for Devs)이 모두 영향을 받습니다.- 
									cool API 에는 이 패턴 /echo/ping과 매핑 규칙이 있습니다.
- 
									Devs용 도구 에는 이 패턴이 있는 매핑 규칙이 있습니다. /tellmeback/ping.
 
- 
									cool API 에는 이 패턴 
매핑 규칙 일치
3scale은 접두사를 기반으로 매핑 규칙을 적용합니다. 표기법은 OpenAPI 및 ActiveDocs 사양을 따릅니다.
- 
							매핑 규칙은 슬래시(/)로 시작해야 합니다.
- 리터럴 문자열(예: - /hello)을 통해 경로에서 일치하는 작업을 수행합니다.- 매핑 규칙은 저장되면 각 매핑 규칙에 대해 정의한 지표 또는 메서드를 설정하고 호출한 URL 문자열에 대한 요청이 발생합니다.
 
- 
							매핑 규칙은 쿼리 문자열 또는 본문에 매개 변수를 포함할 수 있습니다(예: /{word}?value={value}).
- APIcast는 다음과 같은 방식으로 매개변수를 가져옵니다. - 
									GET메서드: 쿼리 문자열에서 다음을 수행합니다.
- 
									POST,DELETE또는PUT메서드: 본문에서.
 
- 
									
- 
							매핑 규칙은 이름이 지정된 와일드카드(예: /{word})를 포함할 수 있습니다. 이 규칙은 자리 표시자{word}의 모든 내용과 일치하므로/morning과 같은 요청이 매핑 규칙과 일치합니다. 슬래시 간에 또는 슬래시와 점 사이에 와일드카드가 표시될 수 있습니다. 매개 변수에는 와일드카드가 포함될 수도 있습니다.
- 
							기본적으로 모든 매핑 규칙은 지정한 정렬 순서에 따라 처음부터 마지막까지 평가됩니다. 규칙 /v1을 추가하면 경로가 /v11/word 또는로 시작되는 요청과 일치합니다./v1/
- 
							패턴 끝에 달러 기호($)를 추가하여 정확한 일치를 지정할 수 있습니다. 예를 들어/v1/word는/v1/word요청만 일치하며/v1/word/hello요청과 일치하지 않습니다. 정확한 일치를 위해 모든(/)와 일치하는 기본 매핑 규칙이 비활성화되었는지 확인해야 합니다.
- 둘 이상의 매핑 규칙이 요청 경로와 일치할 수 있지만 일치하지 않으면 요청이 HTTP 404 상태 코드로 삭제됩니다.
룰 워크플로 매핑
매핑 규칙에는 다음과 같은 워크플로우가 있습니다.
- 언제든지 새 매핑 규칙을 정의할 수 있습니다. 매핑 규칙 정의를 참조하십시오.
- 실수로 수정되지 않도록 다음 재로드 시 매핑 규칙이 회색으로 표시됩니다.
- 기존 매핑 규칙을 편집하려면 오른쪽의 연필 아이콘을 클릭하여 먼저 활성화해야 합니다.
- 규칙을 삭제하려면 휴지통 아이콘을 클릭합니다.
- 통합 > 구성 변경 사항을 승격하면 모든 수정 및 삭제가 저장됩니다.
다른 매핑 규칙 중지
하나 이상의 매핑 규칙을 처리한 후 다른 매핑 규칙 처리를 중지하려면 새 매핑 규칙을 생성할 때 Last? (마지막?)를 선택합니다. 예를 들어 API 통합 설정에 정의된 다음 매핑 규칙이 있고 각 규칙과 연결된 메트릭이 있다고 가정합니다.
(get) /path/to/example/search
(get) /path/to/example/{id}
(get) /path/to/example/search
(get) /path/to/example/{id}
					규칙과 일치하면 (get) /path/to/example/search 를 호출할 때 APIcast는 나머지 매핑 규칙 처리를 중지하고 지표 증가를 중지합니다.
				
 
    