다중 변형 기능 플래그 규칙 이해
기능 플래그 변형을 생성할 때 해당 변형에 대한 규칙을 지정해야 합니다. 규칙은 컨텍스트 값을 입력으로 받아 부울 결과를 출력으로 생성하는 표현식입니다. 예를 들어 베타 사용자(계정 ID로 식별됨)에 대한 플래그 변형을 선택하는 규칙을 정의하여 사용자 인터페이스 새로 고침을 테스트할 수 있습니다. 이 시나리오의 경우 다음을 수행합니다.
-
UI 새로 고침이라는 새로운 기능 플래그 구성 프로필을 생성합니다.
-
ui_refresh라는 새로운 기능 플래그를 생성합니다.
-
기능 플래그를 생성한 후 편집하여 변형을 추가합니다.
-
BetaUsers라는 새 변형을 생성하고 활성화합니다.
-
요청 컨텍스트의 계정 ID가 새 베타 환경을 보도록 승인된 계정 ID 목록에 있는 경우 변형을 선택하는 BetaUsers에 대한 규칙을 정의합니다.
-
기본 변형의 상태가 비활성화로 설정되어 있는지 확인합니다.
참고
변형은 콘솔에 정의된 순서에 따라 정렬된 목록으로 평가됩니다. 목록 맨 위에 있는 변형이 먼저 평가됩니다. 제공된 컨텍스트와 일치하는 규칙이 없는 경우 AWS AppConfig에서 기본 변형을 반환합니다.
AWS AppConfig는 기능 플래그 요청을 처리할 때 제공된 컨텍스트(이 예제의 경우 AccountID)를 먼저 BetaUsers 변형과 비교합니다. 컨텍스트가 BetaUsers에 대한 규칙과 일치하면 AWS AppConfig는 베타 환경에 대한 구성 데이터를 반환합니다. 컨텍스트에 계정 ID가 포함되어 있지 않거나 계정 ID가 123으로 끝나지 않을 경우 AWS AppConfig는 기본 규칙에 대한 구성 데이터를 반환합니다. 이 경우 사용자는 현재 프로덕션 환경을 보게 됩니다.
규칙 정의
변형 규칙은 하나 이상의 피연산자와 연산자로 구성된 표현식입니다. 피연산자는 규칙 평가 중에 사용되는 특정 값입니다. 피연산자 값은 리터럴 숫자나 문자열과 같은 정적 값일 수도 있고, 컨텍스트에서 찾은 값이나 다른 표현식의 결과와 같은 가변 값일 수도 있습니다. ‘보다 큼’과 같은 연산자는 피연산자에 적용되어 값을 생성하는 테스트 또는 동작입니다. 변형 규칙 표현식이 유효하려면 ‘true’ 또는 ‘false’를 생성해야 합니다.
피연산자
유형 | 설명 | 예 |
---|---|---|
String |
큰따옴표로 묶인 UTF-8 문자 시퀀스입니다. |
|
Integer |
64비트 정수 값입니다. |
|
Float |
64비트 IEEE-754 부동 소수점 값입니다. |
|
Timestamp |
날짜 및 시간 형식에 대한 W3C 노트 |
|
불 |
true 또는 false 값입니다. |
|
컨텍스트 값 |
규칙 평가 중에 컨텍스트에서 검색되는 $ |
|
비교 연산자
연산자 | 설명 | 예 |
---|---|---|
eq |
컨텍스트 값이 지정된 값과 동일한지 여부를 결정합니다. |
|
gt |
컨텍스트 값이 지정된 값보다 큰지 여부를 결정합니다. |
|
gte |
컨텍스트 값이 지정된 값보다 크거나 같은지 여부를 결정합니다. |
|
lt |
컨텍스트 값이 지정된 값보다 작은지 여부를 결정합니다. |
|
lte |
컨텍스트 값이 지정된 값보다 작거나 같은지 여부를 결정합니다. |
|
논리 연산자
연산자 | 설명 | 예 |
---|---|---|
and |
두 피연산자가 모두 true인지 여부를 결정합니다. |
|
or |
피연산자 중 하나 이상이 true인지 여부를 결정합니다. |
|
not |
표현식의 값을 반대로 바꿉니다. |
|
사용자 지정 연산자
연산자 | 설명 | 예 |
---|---|---|
begins_with |
컨텍스트 값이 지정된 접두사로 시작하는지 여부를 결정합니다. |
|
ends_with |
컨텍스트 값이 지정된 접두사로 끝나는지 여부를 결정합니다. |
|
contains |
컨텍스트 값에 지정된 하위 문자열이 포함되어 있는지 여부를 결정합니다. |
|
in |
컨텍스트 값이 상수 목록에 포함되어 있는지 여부를 결정합니다. |
|
matches |
컨텍스트 값이 지정된 정규식 패턴과 일치하는지 여부를 결정합니다. |
|
exists |
컨텍스트 키에 값이 제공되었는지 여부를 결정합니다. |
|
split |
제공된 컨텍스트 값의 일관된 해시를 기준으로 지정된 비율의 트래픽에 대해
|
|