trigger 구성 파일
이 페이지의 내용
참고
이 페이지에서는 레거시 구성 파일 형식에 대해 설명합니다. 이 정보는 더 이상 사용되지 않는 realm-cli
을 사용하는 경우에만 사용해야 합니다.
App Services CLI로 가져오거나 UI에서 내보내는 모든 구성 파일은 최신 구성 버전을 사용합니다. 현재 구성 파일 형식에 대한 자세한 내용은 앱 구성을 참조하세요.
app/ └── triggers/ └── <trigger name>.json
일반 구성
모든 Atlas Triggers는 기본 스키마를 준수하며 trigger 유형에 따라 구체적인 변형이 있습니다. 모든 trigger 구성 파일에는 다음 필드가 존재합니다.
{ "name": "<Trigger Name>", "type": "<Trigger Type>", "config": {}, "function_name": "<Trigger Function Name>", "disabled": <Boolean> }
필드 | 설명 |
---|---|
name String | trigger 이름입니다. 최대 64자까지 입력할 수 있으며 ASCII 문자, 숫자, 밑줄, 하이픈만 포함할 수 있습니다. |
type String | 트리거 유형입니다. 이 필드의 값에 따라 정확한 구성 파일 스키마가 결정됩니다. 유효한 옵션은 다음과 같습니다.
|
config Document | 트리거의 추가 구성 옵션에 매핑되는 필드가 있는 문서입니다. 정확한 구성 필드는 trigger |
function_name String | 트리거가 실행될 때마다 실행되는 Realm 함수 의 이름입니다. |
event_processors Document | 트리거가 실행될 때마다 외부 이벤트 프로세서로 이벤트를 전송하도록 트리거를 구성하는 문서입니다. 자세한 내용은 Amazon Web Services Eventbridge에 trigger 이벤트 전송을 참조하세요. |
disabled Boolean | true 인 경우 trigger 어떤 이벤트도 수신하지 않으며 실행되지 않습니다. |
데이터베이스 트리거
데이터베이스 트리거 구성은 감시할 컬렉션과 트리거를 실행할 시기를 지정하는 추가 구성 옵션이 포함된 기본 트리거 스키마를 따릅니다. 데이터베이스 트리거 구성 파일에 존재하는 필드는 다음과 같습니다.
{ "name": "<Trigger Name>", "type": "DATABASE", "config": { "service_name": "<MongoDB Service Name>", "database": "<Database Name>", "collection": "<Collection Name>", "operation_types": ["<Operation Type>", ...], "full_document": <boolean>, "full_document_before_change": <boolean>, "tolerate_resume_errors": <boolean>, "unordered": <boolean>, "match": { <Match Filter> }, "project": { <Projection Filter> }, }, "function_name": "<Trigger Function Name>", "disabled": <Boolean> }
필드 | 설명 | ||||||||
---|---|---|---|---|---|---|---|---|---|
config.service_name String | |||||||||
config.database String | 감시되는 collection이 포함된 MongoDB database의 이름입니다. | ||||||||
config.collection String | trigger가 감시하는 collection의 이름입니다. | ||||||||
config.operation_types String[] | 트리거가 실행되도록 하는 하나 이상의 데이터베이스 작업 유형 목록입니다. 유효한 작업 유형:
팁MongoDB Compass 또는 MongoDB Atlas 데이터 탐색기에서 실행한 업데이트 작업은 이전 문서를 완전히 대체합니다. 따라서 이러한 클라이언트의 업데이트 작업은 업데이트 | ||||||||
config.full_document Boolean | |||||||||
config.full_document_before_change Boolean |
중요컬렉션 수준 사전 이미지 설정문서 사전 이미지는 oplog에 저장된 추가 정보를 사용합니다. 추가 데이터는 일부 앱의 성능에 영향을 미칠 수 있습니다. 특정 컬렉션의 트리거에 대해 문서 사전 이미지를 활성화하면 해당 컬렉션의 oplog에 사전 이미지 데이터가 포함되고 컬렉션의 다른 트리거는 추가 오버헤드 없이 사전 이미지를 사용할 수 있습니다. 트리거별로 문서 사전 이미지를 비활성화하여 변경 이벤트에서 사전 이미지를 제외할 수 있습니다. 트리거 수준 설정에 관계없이 컬렉션의 사전 이미지를 명시적으로 비활성화하지 않는 한 컬렉션의 oplog 항목에는 사전 이미지 데이터가 계속 포함됩니다. 자세한 내용은 문서 미리보기 이미지를 참조하세요. | ||||||||
config.tolerate_resume_errors Boolean |
활성화되어 있고, 클러스터의 oplog에서 이 트리거의 재개 토큰을 찾을 수 없는 경우, 트리거는 다음번 관련 변경 스트림 이벤트에서 자동으로 이벤트 처리를 재개합니다. 트리거가 일시 중단된 시점부터 트리거가 실행을 재개할 때까지의 모든 변경 스트림 이벤트에는 트리거가 실행되지 않습니다. 일시 중단된 Atlas Triggers 재개에 대한 자세한 내용은 일시 중단된 Atlas Triggers를 참조하세요 . | ||||||||
config.unordered Boolean |
이벤트 순서 지정이 활성화되면 변경 이벤트의 타임스탬프를 기준으로 이 트리거가 순차적으로 여러 번 실행됩니다. 이벤트 순서 지정이 비활성화되면 이 트리거가 순서에 관계없이 여러 번 실행됩니다. | ||||||||
config.match Document | App Services가 트리거를 발생시키는 변경 이벤트를 필터링하는 데 사용하는 $match 표현식 문서입니다. 트리거는 이 일치 표현식에 대해 수신한 모든 변경 이벤트 객체를 평가하며 해당 변경 이벤트에 대해 표현식이 참고내장된 필드에 점 표기법 사용MongoDB는 일치 표현식에 내장된 문서에 대해 완전한 동등성 매치를 수행합니다. 내장된 문서에서 특정 필드를 일치시키려면 점 표기법을 사용해 해당 필드를 직접 참조해야 합니다. 자세한 내용은 MongoDB 서버 매뉴얼의 내장된 문서에 대한 쿼리를 참조하세요. | ||||||||
config.project Document | 변경 스트림의 각 이벤트에서 필드의 하위 집합을 선택하는 $project 표현식입니다. 이를 사용 하여 trigger 의 실행을 최적화할 수 있습니다. 표현식은 변경 이벤트의 필드 이름을 필드를 제외한
|
인증 트리거
인증 트리거 구성은 감시할 인증 공급자와 트리거를 실행하는 시기를 지정하는 추가 구성 옵션이 포함된 기본 트리거 스키마를 준수합니다. 인증 트리거 구성 파일에 존재하는 필드는 다음과 같습니다.
{ "name": "<Trigger Name>", "type": "AUTHENTICATION", "config": { "operation_type": ["<Operation Type>", ...], "providers": ["<Provider Type>", ...], }, "function_name": "<Trigger Function Name>", "disabled": <Boolean> }
예약된 트리거
예정된 트리거 구성은 트리거가 실행되는 일정을 지정하는 추가 구성 옵션이 포함된 기본 트리거 스키마를 따릅니다. 예정된 트리거 구성 파일에는 다음과 같은 필드가 있습니다.
{ "name": "<Trigger Name>", "type": "SCHEDULED", "config": { "schedule": "<CRON expression>" }, "function_name": "<Trigger Function Name>", "disabled": <Boolean> }
필드 | 설명 |
---|---|
config.schedule String | 트리거의 실행을 예약하는 CRON 표현식 입니다. |