UpdateEventSourceMapping
이벤트 소스 매핑을 업데이트합니다. AWS Lambda이 호출한 함수를 변경하거나, 호출을 일시 중지하고 나중에 같은 위치에서 다시 시작할 수 있습니다.
다양한 이벤트 소스를 구성하는 방법에 대한 자세한 내용은 다음 주제를 참조하십시오.
다음 오류 처리 옵션은 스트림 소스(DynamoDB 및 Kinesis)에만 사용할 수 있습니다.
- 
         BisectBatchOnFunctionError- 함수가 오류를 반환하면 배치를 2개로 분할하고 다시 시도합니다.
- 
         DestinationConfig- 삭제된 레코드를 Amazon SQS 대기열 또는 Amazon SNS 주제로 보냅니다.
- 
         MaximumRecordAgeInSeconds- 지정된 기간보다 오래된 레코드를 삭제합니다. 기본값은 무한(-1)입니다. 무한(-1)으로 설정하면 레코드가 만료될 때까지 실패한 레코드가 다시 시도됩니다.
- 
         MaximumRetryAttempts- 지정된 횟수만큼 재시도한 후에 레코드를 삭제합니다. 기본값은 무한(-1)입니다. 무한(-1)으로 설정하면 레코드가 만료될 때까지 실패한 레코드가 다시 시도됩니다.
- 
         ParallelizationFactor- 각 샤드의 여러 배치를 동시에 처리합니다.
각 이벤트 소스에 적용되는 구성 파라미터에 대한 자세한 내용은 다음 주제를 참조하십시오.
Request Syntax
PUT /2015-03-31/event-source-mappings/UUID HTTP/1.1
Content-type: application/json
{
   "BatchSize": number,
   "BisectBatchOnFunctionError": boolean,
   "DestinationConfig": { 
      "OnFailure": { 
         "Destination": "string"
      },
      "OnSuccess": { 
         "Destination": "string"
      }
   },
   "DocumentDBEventSourceConfig": { 
      "CollectionName": "string",
      "DatabaseName": "string",
      "FullDocument": "string"
   },
   "Enabled": boolean,
   "FilterCriteria": { 
      "Filters": [ 
         { 
            "Pattern": "string"
         }
      ]
   },
   "FunctionName": "string",
   "FunctionResponseTypes": [ "string" ],
   "MaximumBatchingWindowInSeconds": number,
   "MaximumRecordAgeInSeconds": number,
   "MaximumRetryAttempts": number,
   "ParallelizationFactor": number,
   "ScalingConfig": { 
      "MaximumConcurrency": number
   },
   "SourceAccessConfigurations": [ 
      { 
         "Type": "string",
         "URI": "string"
      }
   ],
   "TumblingWindowInSeconds": number
}URI 요청 파라미터
요청은 다음 URI 파라미터를 사용합니다.
- UUID
- 
               이벤트 소스 매핑의 식별자입니다. Required: Yes 
요청 본문
요청은 JSON 형식으로 다음 데이터를 받습니다.
- BatchSize
- 
               Lambda가 스트림 또는 대기열에서 풀링하여 함수로 보내는 각 배치의 최대 레코드 수입니다. Lambda는 동기식 호출에 대한 페이로드 제한(6MB)까지 단일 호출로 배치의 모든 레코드를 함수로 전달합니다. - 
                     Amazon Kinesis - 기본값 100. 최대 10,000. 
- 
                     Amazon DynamoDB Streams - 기본값 100. 최대 10,000. 
- 
                     Amazon Simple Queue Service - 기본값 10. 표준 대기열의 경우 최대값은 10,000입니다. FIFO 대기열의 경우 최대값은 10입니다. 
- 
                     Amazon Managed Streaming for Apache Kafka - 기본값 100. 최대 10,000. 
- 
                     Self-managed Apache Kafka - 기본값은 100입니다. 최대 10,000. 
- 
                     Amazon MQ(ActiveMQ 및 RabbitMQ) - 기본값 100. 최대 10,000. 
- 
                     DocumentDB — 기본값 100입니다. 최대 10,000. 
 Type: 정수 유효한 범위: 최소값 1. 최대값은 10,000입니다. 필수 항목 여부: 아니요 
- 
                     
- BisectBatchOnFunctionError
- 
               (Kinesis와 DynamoDB 스트림만 해당) 함수가 오류를 반환하면 배치를 둘로 분할하고 다시 시도합니다. 유형: 부울 필수 항목 여부: 아니요 
- DestinationConfig
- 
               (Kinesis, DynamoDB Streams, Amazon MSK 및 자체 관리형 Kafka에만 해당)Lambda가 이벤트를 처리한 후 이벤트의 대상을 지정하는 구성 객체입니다. 유형: DestinationConfig객체 필수 항목 여부: 아니요 
- DocumentDBEventSourceConfig
- 
               DocumentDB 이벤트 소스에 대한 특정 구성 설정입니다. 유형: DocumentDBEventSourceConfig객체 필수 항목 여부: 아니요 
- Enabled
- 
               true이면 이벤트 소스 매핑이 활성 상태입니다. false이면 Lambda는 폴링 및 호출을 일시 중지합니다. 기본값: True 유형: 부울 필수 항목 여부: 아니요 
- FilterCriteria
- 
               Lambda가 이벤트를 처리해야 하는지를 결정하는 필터 기준을 정의하는 객체입니다. 자세한 내용은 Lambda 이벤트 필터링을 참조하세요. 유형: FilterCriteria객체 필수 항목 여부: 아니요 
- FunctionName
- 
               Lambda 함수의 이름입니다. 이름 형식- 
                     함수 이름 - MyFunction.
- 
                     함수 ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.
- 
                     버전 또는 별칭 ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.
- 
                     부분적 ARN - 123456789012:function:MyFunction.
 길이 제한은 전체 ARN에만 적용됩니다. 함수 이름만 지정하는 경우, 길이가 64자로 제한됩니다. 유형: 문자열 길이 제약: 최소 길이는 1. 최대 길이는 140입니다. 패턴: (arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?필수 항목 여부: 아니요 
- 
                     
- FunctionResponseTypes
- 
               (Kinesis, DynamoDB Streams 및 Amazon SQS) 이벤트 소스 매핑에 적용된 현재 응답 유형 열거형 목록입니다. 유형: 문자열 배열 배열 멤버: 최소 항목 수는 0개입니다. 최대 항목 수는 1개입니다. 유효 값: ReportBatchItemFailures필수 항목 여부: 아니요 
- MaximumBatchingWindowInSeconds
- 
               Lambda가 함수를 호출하기 전에 레코드를 수집하는 데 걸리는 최대 시간(초)입니다. MaximumBatchingWindowInSeconds는 0초에서 300초 사이의 값을 초 단위로 구성할 수 있습니다.스트림 및 Amazon SQS 이벤트 소스의 경우 기본 일괄 처리 기간은 0초입니다. Amazon MSK, 자체 관리형 Apache Kafka 및 Amazon MQ, DocumentDB 이벤트 소스의 경우 기본 일괄 처리 시간은 500ms입니다. MaximumBatchingWindowInSeconds는 초 단위로만 변경할 수 있기 때문에 변경한 후에는 500ms 기본 일괄 처리 기간으로 되돌릴 수 없습니다. 기본 일괄 처리 기간을 복원하려면 새 이벤트 소스 매핑을 생성해야 합니다.관련 설정: 스트림 및 Amazon SQS 이벤트 소스의 경우, BatchSize를 10보다 큰 값으로 설정하면MaximumBatchingWindowInSeconds를 1이상으로 설정해야 합니다.유형: 정수 유효한 범위: 최소값 0. 최대값 300입니다. 필수 항목 여부: 아니요 
- MaximumRecordAgeInSeconds
- 
               (Kinesis와 DynamoDB 스트림만 해당) 지정된 기간보다 오래된 레코드를 삭제합니다. 기본값은 무한(-1)입니다. Type: 정수 유효한 범위: 최소값은 -1입니다. 최대값 604,800입니다. 필수 항목 여부: 아니요 
- MaximumRetryAttempts
- 
               (Kinesis와 DynamoDB 스트림만 해당) 지정된 횟수의 재시도 후에 레코드를 삭제합니다. 기본값은 무한(-1)입니다. 무한(-1)으로 설정하면 레코드가 만료될 때까지 실패한 레코드가 다시 시도됩니다. 유형: 정수 유효한 범위: 최소값은 -1입니다. 최대값은 10,000입니다. 필수 항목 여부: 아니요 
- ParallelizationFactor
- 
               (Kinesis와 DynamoDB스트림만 해당) 각 샤드에서 동시에 처리할 배치 수입니다. 유형: 정수 유효한 범위: 최소값 1. 최대값은 10입니다. 필수 항목 여부: 아니요 
- ScalingConfig
- 
               (Amazon SQS만 해당) 이벤트 소스의 크기 조정 구성입니다. 자세한 내용은 Amazon SQS 이벤트 소스의 최대 동시성 구성을 참조하세요. 유형: ScalingConfig객체 필수 항목 여부: 아니요 
- SourceAccessConfigurations
- 
               이벤트 소스를 보호하는 데 필요한 인증 프로토콜 또는 VPC 구성 요소 배열입니다. 유형: SourceAccessConfiguration 객체 배열 배열 멤버: 최소 항목 수는 0개입니다. 최대 항목 수는 22개입니다. 필수 항목 여부: 아니요 
- TumblingWindowInSeconds
- 
               (Kinesis 및 DynamoDB 스트림만 해당) DynamoDB 및 Kinesis 스트림 이벤트 소스에 대한 처리 시간(초)입니다. 값이 0초이면 텀블링 윈도우가 없음을 나타냅니다. 유형: 정수 유효한 범위: 최소값 0. 최대값은 900입니다. Required: No 
응답 구문
HTTP/1.1 202
Content-type: application/json
{
   "AmazonManagedKafkaEventSourceConfig": { 
      "ConsumerGroupId": "string"
   },
   "BatchSize": number,
   "BisectBatchOnFunctionError": boolean,
   "DestinationConfig": { 
      "OnFailure": { 
         "Destination": "string"
      },
      "OnSuccess": { 
         "Destination": "string"
      }
   },
   "DocumentDBEventSourceConfig": { 
      "CollectionName": "string",
      "DatabaseName": "string",
      "FullDocument": "string"
   },
   "EventSourceArn": "string",
   "FilterCriteria": { 
      "Filters": [ 
         { 
            "Pattern": "string"
         }
      ]
   },
   "FunctionArn": "string",
   "FunctionResponseTypes": [ "string" ],
   "LastModified": number,
   "LastProcessingResult": "string",
   "MaximumBatchingWindowInSeconds": number,
   "MaximumRecordAgeInSeconds": number,
   "MaximumRetryAttempts": number,
   "ParallelizationFactor": number,
   "Queues": [ "string" ],
   "ScalingConfig": { 
      "MaximumConcurrency": number
   },
   "SelfManagedEventSource": { 
      "Endpoints": { 
         "string" : [ "string" ]
      }
   },
   "SelfManagedKafkaEventSourceConfig": { 
      "ConsumerGroupId": "string"
   },
   "SourceAccessConfigurations": [ 
      { 
         "Type": "string",
         "URI": "string"
      }
   ],
   "StartingPosition": "string",
   "StartingPositionTimestamp": number,
   "State": "string",
   "StateTransitionReason": "string",
   "Topics": [ "string" ],
   "TumblingWindowInSeconds": number,
   "UUID": "string"
}응답 요소
작업이 성공하면 서비스가 HTTP 202 응답을 다시 전송합니다.
다음 데이터는 서비스에 의해 JSON 형식으로 반환됩니다.
- AmazonManagedKafkaEventSourceConfig
- 
               Amazon Managed Streaming for Apache Kafka(Amazon MSK) 이벤트 소스에 대한 특정 구성 설정입니다. 
- BatchSize
- 
               Lambda가 스트림 또는 대기열에서 풀링하여 함수로 보내는 각 배치의 최대 레코드 수입니다. Lambda는 동기식 호출에 대한 페이로드 제한(6MB)까지 단일 호출로 배치의 모든 레코드를 함수로 전달합니다. 기본값: 서비스에 따라 다릅니다. Amazon SQS의 경우 기본값은 10입니다. 다른 모든 서비스의 경우 기본값은 100입니다. 관련 설정: BatchSize를 10보다 큰 값으로 설정하면MaximumBatchingWindowInSeconds를 1이상으로 설정합니다.유형: 정수 유효한 범위: 최소값 1. 최대값은 10,000입니다. 
- BisectBatchOnFunctionError
- 
               (Kinesis와 DynamoDB 스트림만 해당) 함수가 오류를 반환하면 배치를 둘로 분할하고 다시 시도합니다. 기본값은 false입니다. 유형: Boolean 
- DestinationConfig
- 
               (Kinesis, DynamoDB Streams, Amazon MSK 및 자체 관리형 Apache Kafka 이벤트에만 해당) Lambda가 이벤트를 처리한 후 이벤트의 대상을 지정하는 구성 객체입니다. 유형: DestinationConfig객체 
- DocumentDBEventSourceConfig
- 
               DocumentDB 이벤트 소스에 대한 특정 구성 설정입니다. 
- EventSourceArn
- 
               이벤트 소스의 Amazon 리소스 이름(ARN)입니다. 유형: String 패턴: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)
- FilterCriteria
- 
               Lambda가 이벤트를 처리해야 하는지를 결정하는 필터 기준을 정의하는 객체입니다. 자세한 내용은 Lambda 이벤트 필터링을 참조하세요. 유형: FilterCriteria객체 
- FunctionArn
- 
               Lambda 함수의 ARN입니다. 유형: String 패턴: arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_]+(:(\$LATEST|[a-zA-Z0-9-_]+))?
- FunctionResponseTypes
- 
               (Kinesis, DynamoDB Streams 및 Amazon SQS) 이벤트 소스 매핑에 적용된 현재 응답 유형 열거형 목록입니다. 유형: 문자열 배열 배열 멤버: 최소 항목 수는 0개입니다. 최대 항목 수는 1개입니다. 유효한 값: ReportBatchItemFailures
- LastModified
- 
               이벤트 소스 매핑이 마지막으로 업데이트된 날짜 또는 상태가 변경된 날짜입니다(Unix 시간 초). 유형: Timestamp 
- LastProcessingResult
- 
               함수의 마지막 Lambda 호출의 결과입니다. 유형: 문자열 
- MaximumBatchingWindowInSeconds
- 
               Lambda가 함수를 호출하기 전에 레코드를 수집하는 데 걸리는 최대 시간(초)입니다. MaximumBatchingWindowInSeconds는 0초에서 300초 사이의 값을 초 단위로 구성할 수 있습니다.스트림 및 Amazon SQS 이벤트 소스의 경우 기본 일괄 처리 기간은 0초입니다. Amazon MSK, 자체 관리형 Apache Kafka 및 Amazon MQ, DocumentDB 이벤트 소스의 경우 기본 일괄 처리 시간은 500ms입니다. MaximumBatchingWindowInSeconds는 초 단위로만 변경할 수 있기 때문에 변경한 후에는 500ms 기본 일괄 처리 기간으로 되돌릴 수 없습니다. 기본 일괄 처리 기간을 복원하려면 새 이벤트 소스 매핑을 생성해야 합니다.관련 설정: 스트림 및 Amazon SQS 이벤트 소스의 경우, BatchSize를 10보다 큰 값으로 설정하면MaximumBatchingWindowInSeconds를 1이상으로 설정해야 합니다.유형: 정수 유효한 범위: 최소값 0. 최대값 300입니다. 
- MaximumRecordAgeInSeconds
- 
               (Kinesis와 DynamoDB 스트림만 해당) 지정된 기간보다 오래된 레코드를 삭제합니다. 기본값은 -1이며, 최대 기간을 무한으로 설정합니다. 값이 무한으로 설정되면 Lambda가 오래된 레코드를 버리지 않습니다. 참고최대 레코드 수명의 최소 유효 값은 60초입니다. 60보다 작거나 -1보다 큰 값은 파라미터의 절대 범위에 속하지만 허용되지 않습니다. 유형: 정수 유효한 범위: 최소값은 -1입니다. 최대값 604,800입니다. 
- MaximumRetryAttempts
- 
               (Kinesis와 DynamoDB 스트림만 해당) 지정된 횟수의 재시도 후에 레코드를 삭제합니다. 기본값은 -1이며, 최대 재시도 횟수를 무한으로 설정합니다. MaximumRetryAttempts가 무한인 경우 이벤트 소스에서 레코드가 만료될 때까지 Lambda가 실패한 레코드를 다시 시도합니다. 유형: Integer 유효한 범위: 최소값은 -1입니다. 최대값은 10,000입니다. 
- ParallelizationFactor
- 
               (Kinesis와 DynamoDB스트림만 해당) 각 샤드에서 동시에 처리할 배치 수입니다. 기본값은 1입니다. 유형: Integer 유효한 범위: 최소값 1. 최대값은 10입니다. 
- Queues
- 
               (Amazon MQ) 소비할 Amazon MQ 브로커 대상 대기열의 이름입니다. 유형: 문자열 배열 배열 멤버: 고정된 항목 수는 1개입니다. 길이 제약: 최소 길이는 1입니다. 최대 길이는 1,000입니다. 패턴: [\s\S]*
- ScalingConfig
- 
               (Amazon SQS만 해당) 이벤트 소스의 크기 조정 구성입니다. 자세한 내용은 Amazon SQS 이벤트 소스의 최대 동시성 구성을 참조하세요. 유형: ScalingConfig객체 
- SelfManagedEventSource
- 
               이벤트 소스에 대한 자체 관리형 Apache Kafka 클러스터입니다. 유형: SelfManagedEventSource 객체 
- SelfManagedKafkaEventSourceConfig
- 
               자체 관리형 Apache Kafka 이벤트 소스에 대한 특정 구성 설정입니다. 
- SourceAccessConfigurations
- 
               이벤트 소스를 보호하기 위한 일련의 인증 프로토콜 또는 VPC 구성 요소입니다. 유형: SourceAccessConfiguration 객체 배열 배열 멤버: 최소 항목 수는 0개입니다. 최대 항목 수는 22개입니다. 
- StartingPosition
- 
               읽기를 시작하는 스트림 내의 위치입니다. Amazon Kinesis 및 Amazon DynamoDB Streams 이벤트 소스에 필요합니다. AT_TIMESTAMP는 Amazon DynamoDB Streams, Amazon DocumentDB, Amazon MSK, 자체 관리형 Apache Kafka에 대해서만 지원됩니다.유형: 문자열 유효 값: TRIM_HORIZON | LATEST | AT_TIMESTAMP
- StartingPositionTimestamp
- 
               StartingPosition을AT_TIMESTAMP로 설정했을 때 읽기를 시작하는 시간(Unix 시간 초)입니다.StartingPositionTimestamp는 미래가 될 수 없습니다.유형: 타임스탬프 
- State
- 
               이벤트 소스 매핑의 상태입니다. Creating,Enabling,Enabled,Disabling,Disabled,Updating또는Deleting중 하나일 수 있습니다.유형: 문자열 
- StateTransitionReason
- 
               사용자 또는 Lambda가 이벤트 소스 매핑을 마지막으로 변경했는지 여부를 나타냅니다. 유형: 문자열 
- Topics
- 
               Kafka 주제의 이름입니다. 유형: 문자열 배열 배열 멤버: 고정된 항목 수는 1개입니다. 길이 제약: 최소 길이는 1입니다. 최대 길이는 249입니다. 패턴: ^[^.]([a-zA-Z0-9\-_.]+)
- TumblingWindowInSeconds
- 
               (Kinesis 및 DynamoDB 스트림만 해당) DynamoDB 및 Kinesis 스트림 이벤트 소스에 대한 처리 시간(초)입니다. 값이 0초이면 텀블링 윈도우가 없음을 나타냅니다. 유형: 정수 유효한 범위: 최소값 0. 최대값은 900입니다. 
- UUID
- 
               이벤트 소스 매핑의 식별자입니다. 유형: 문자열 
Errors
모든 작업에서 발생하는 일반적인 오류에 대한 자세한 내용은 일반적인 오류 섹션을 참조하세요.
- InvalidParameterValueException
- 
               요청의 파라미터 중 하나가 유효하지 않습니다. HTTP 상태 코드: 400 
- ResourceConflictException
- 
               리소스가 이미 있거나 다른 작업이 진행 중입니다. HTTP 상태 코드: 409 
- ResourceInUseException
- 
               작업이 리소스의 가용 상태와 충돌합니다. 예를 들어 CREATING 상태에서 이벤트 소스 매핑을 업데이트하려 했거나, 현재 UPDATING 상태인 이벤트 소스 매핑을 삭제하려 했을 수 있습니다. HTTP 상태 코드: 400 
- ResourceNotFoundException
- 
               요청에 지정된 리소스가 없습니다. HTTP 상태 코드: 404 
- ServiceException
- 
               AWS Lambda 서비스에 내부 오류가 발생했습니다. HTTP 상태 코드: 500 
- TooManyRequestsException
- 
               요청 처리량 제한을 초과했습니다. 자세한 내용은 Lambda 할당량을 참조하세요. HTTP Status Code: 429 
참고
이 API를 언어별 AWS SDK 중 하나로 사용하는 방법에 대한 자세한 설명은 다음을 참조하세요.