32.2. URI 옵션
AWS S3 Storage 서비스 구성 요소는 아래에 나열된 5가지 옵션을 지원합니다.
이름 | 설명 | Default | 유형 |
---|---|---|---|
구성 (고급) | AWS S3 기본 구성 | S3Configuration | |
AccessKey (common) | Amazon AWS 액세스 키 | 문자열 | |
secretKey (common) | Amazon AWS 시크릿 키 | 문자열 | |
리전 (일반) | 버킷이 있는 영역입니다. 이 옵션은 com.amazonaws.services.s3.model.CreateBucketRequest에서 사용됩니다. | 문자열 | |
resolveProperty Placeholders (advanced) | 구성 요소 시작 시 속성 자리 표시자를 자체적으로 확인해야 하는지 여부입니다. String 유형의 속성만 속성 자리 표시자를 사용할 수 있습니다. | true | boolean |
AWS S3 Storage 서비스 끝점은 URI 구문을 사용하여 구성됩니다.
aws-s3:bucketNameOrArn
다음 경로 및 쿼리 매개변수를 사용합니다.
32.2.1. 경로 매개변수(1 매개변수):
이름 | 설명 | Default | 유형 |
---|---|---|---|
bucketNameOrArn | 필수 버킷 이름 또는 ARN | 문자열 |
32.2.2. 쿼리 매개변수(50 매개변수):
이름 | 설명 | Default | 유형 |
---|---|---|---|
amazonS3Client (common) | 링크의 com.amazonaws.services.sqs.AmazonS3에 대한 참조:https://camel.apache.org/registry.htmlRegistry. | AmazonS3 | |
pathStyleAccess (공용) | S3 클라이언트에서 경로 스타일 액세스를 사용해야 하는지 여부 | false | boolean |
정책 (일반) | com.amazonaws.services.s3.AmazonS3#setBucketPolicy() 메서드에서 설정할 이 큐의 정책입니다. | 문자열 | |
proxyHost (common) | SQS 클라이언트를 인스턴스화할 때 프록시 호스트를 정의 | 문자열 | |
proxyPort (공용) | 클라이언트 정의 내에서 사용할 프록시 포트를 지정합니다. | 정수 | |
리전 (일반) | S3 클라이언트가 작동해야 하는 리전 | 문자열 | |
IAMCredentials (common) 사용 | S3 클라이언트가 EC2 인스턴스에서 인증 정보를 로드해야 하는지 또는 정적 인증 정보를 전달해야 하는지 여부를 설정합니다. | false | boolean |
EncryptionMaterials (공용) | Symmetric/Asymmetric 클라이언트 사용 시 사용할 암호화 자료 | EncryptionMaterials | |
useEncryption (common) | 암호화를 사용해야 하는지 여부를 정의합니다. | false | boolean |
bridgeErrorHandler (consumer) | Camel 라우팅 오류 처리기에 소비자를 브리징할 수 있습니다. 즉, 소비자가 들어오는 메시지를 선택하려고 하는 동안 발생한 모든 예외가 이제 메시지로 처리되고 라우팅 오류 처리기에서 처리됩니다. 기본적으로 소비자는 org.apache.camel.spi.ExceptionHandler를 사용하여 WARN 또는 ERROR 수준에서 기록되고 무시됩니다. | false | boolean |
deleteAfterread (consumer) | 검색 후 S3에서 오브젝트를 삭제합니다. 삭제는 교환이 커밋된 경우에만 수행됩니다. 롤백이 발생하면 오브젝트가 삭제되지 않습니다. 이 옵션이 false이면 폴링에서 동일한 개체를 반복해서 검색합니다. 따라서 경로에서 Idempotent Consumer EIP를 사용하여 중복을 필터링해야 합니다. S3Constants#BUCKET_NAME 및 S3Constants#KEY 헤더를 사용하거나 S3Constants#KEY 헤더만 사용하여 필터링할 수 있습니다. | true | boolean |
파일 이름 (consumer) | 지정된 파일 이름을 사용하여 버킷에서 오브젝트를 가져오려면 다음을 수행합니다. | 문자열 | |
includeBody (consumer) | true인 경우 교환 본문은 파일의 콘텐츠로 스트림으로 설정됩니다. false인 경우 헤더는 S3 오브젝트 메타데이터로 설정되지만 본문은 null입니다. 이 옵션은 autocloseBody 옵션과 밀접하게 관련이 있습니다. includeBody를 true로 설정하고 autocloseBody를 false로 설정하면 S3Object 스트림을 종료하기 위해 호출자에게 달려 있습니다. autocloseBody를 true로 설정하면 S3Object 스트림이 자동으로 종료됩니다. | true | boolean |
maxConnections (consumer) | S3 클라이언트 구성에서 maxConnections 매개변수 설정 | 60 | int |
maxMessagesPerPoll (consumer) | 각 폴링 시 폴링할 제한으로 최대 메시지 수를 가져옵니다. 기본 무제한이지만 0 또는 음수를 사용하여 무제한으로 비활성화합니다. | 10 | int |
접두사 (Consumer) | com.amazonaws.services.s3.model.ListObjectsRequest에서 관심 있는 오브젝트만 사용하도록 사용되는 접두사입니다. | 문자열 | |
sendEmptyMessagewhenIdle (consumer) | 폴링 소비자가 파일을 폴링하지 않은 경우 이 옵션을 활성화하여 대신 빈 메시지(본체 없음)를 보낼 수 있습니다. | false | boolean |
autocloseBody (consumer) | 이 옵션이 true이고 includeBody가 true이면 교환 완료 시 S3Object.close() 메서드가 호출됩니다. 이 옵션은 includeBody 옵션과 밀접하게 관련이 있습니다. includeBody를 true로 설정하고 autocloseBody를 false로 설정하면 S3Object 스트림을 종료하기 위해 호출자에게 달려 있습니다. autocloseBody를 true로 설정하면 S3Object 스트림이 자동으로 종료됩니다. | true | boolean |
exceptionHandler (consumer) | 사용자가 사용자 지정 ExceptionHandler를 사용하도록 하려면 다음을 수행합니다. bridgeErrorHandler 옵션이 활성화되어 있으면 이 옵션이 사용되지 않습니다. 기본적으로 소비자는 WARN 또는 ERROR 수준에서 기록되고 무시됩니다. | ExceptionHandler | |
exchangePattern (Consumer) | 소비자가 교환을 생성할 때 교환 패턴을 설정합니다. | ExchangePattern | |
pollStrategy (consumer) | 플러그형 org.apache.camel.PollingConsumerPollingStrategy를 사용하면 교환이 생성되고 Camel에서 라우팅되기 전에 일반적으로 폴링 작업 중에 발생한 오류 처리를 제어하기 위해 사용자 정의 구현을 제공할 수 있습니다. | PollingConsumerPoll 전략 | |
deleteAfterWrite (producer) | S3 파일이 업로드된 후 파일 오브젝트 삭제 | false | boolean |
multiPartUpload (producer) | true인 경우 camel은 다중 파트 형식으로 파일을 업로드할 것이며 part size는 partSize 옵션에 의해 결정됩니다. | false | boolean |
작업 (producer) | 사용자가 업로드만 수행하지 않으려는 경우 수행할 작업 | S3Operations | |
partSize (producer) | 다중 부분 업로드에 사용되는 partSize를 설정하면 기본 크기는 25M입니다. | 26214400 | long |
serverSideEncryption (producer) | AWS 관리 키를 사용하여 오브젝트를 암호화할 때 서버 측 암호화 알고리즘을 설정합니다. 예를 들어 AES256을 사용합니다. | 문자열 | |
StorageClass ( producer) | com.amazonaws.services.s3.model.PutObjectRequest 요청에 설정할 스토리지 클래스입니다. | 문자열 | |
awsKMSKeyId (producer) | KMS가 활성화된 경우 사용할 KMS 키의 ID 정의 | 문자열 | |
useAwsKMS (producer) | KMS를 사용해야 하는지 여부를 정의합니다. | false | boolean |
동기 (고급) | 동기 처리를 엄격하게 사용해야 하는지 또는 Camel이 비동기 처리를 사용할 수 있는지 여부를 설정합니다(지원되는 경우). | false | boolean |
accelerateModeEnabled (고급) | 가속 모드가 true 또는 false인지 여부를 정의합니다. | false | boolean |
chunkedEncodingDisabled (고급) | 비활성화된 인코딩이 true 또는 false인지 여부를 정의합니다. | false | boolean |
dualstackEnabled (고급) | Dualstack enabled가 true 또는 false인지 정의합니다. | false | boolean |
forceGlobalBucketAccess 사용 (고급) | Force Global Bucket Access가 true 또는 false인지 정의합니다. | false | boolean |
payloadSigningEnabled (고급) | Payload Signing enabled가 true 또는 false인지 정의합니다. | false | boolean |
backoffErrorThreshold (scheduler) | 백오프Multipler를 시작하기 전에 수행해야 하는 후속 오류 폴링(일부 오류로 인해 실패)의 수입니다. | int | |
backoffIdleThreshold (scheduler) | backoffMultipler가 시작되기 전에 수행해야 하는 후속 유휴 폴링의 수입니다. | int | |
backoffMultiplier (scheduler) | 행에 후속 유휴/errors가 있는 경우 예약된 폴링 소비자 백오프를 허용하려면 다음을 수행합니다. 그러면 다음 실제 시도가 다시 발생하기 전에 건너뛸 폴링 수입니다. 이 옵션이 사용 중인 경우 backoffIdleThreshold 및/또는 backoffErrorThreshold도 구성해야 합니다. | int | |
지연 (scheduler) | 다음 폴링 전의 밀리초입니다. 60초(60초), 5m30s(5분 및 30초) 및 1h(1시간)를 사용하여 시간 값을 지정할 수도 있습니다. | 500 | long |
greedy (scheduler) | greedy가 활성화된 경우 이전 실행이 1개 이상의 메시지를 폴링하면 ScheduledPollConsumer가 즉시 다시 실행됩니다. | false | boolean |
initialDelay (scheduler) | 첫 번째 폴링이 시작되기 전의 밀리초입니다. 60초(60초), 5m30s(5분 및 30초) 및 1h(1시간)를 사용하여 시간 값을 지정할 수도 있습니다. | 1000 | long |
runLoggingLevel (scheduler) | 소비자는 폴링 시 시작/완료 로그 행을 기록합니다. 이 옵션을 사용하면 로깅 수준을 구성할 수 있습니다. | TRACE | LoggingLevel |
scheduledExecutorService (scheduler) | 소비자에 사용할 사용자 지정/공유 스레드 풀을 구성할 수 있습니다. 기본적으로 각 소비자에는 자체 단일 스레드 스레드 풀이 있습니다.By default, each consumer has its own single threaded thread pool. | ScheduledExecutor 서비스 | |
scheduler (scheduler) | camel-spring 또는 camel-quartz2 구성 요소의 cron 스케줄러 사용 | none | ScheduledPollConsumer Scheduler |
schedulerProperties (scheduler) | 사용자 지정 스케줄러 또는 Quartz2, Spring 기반 스케줄러를 사용할 때 추가 속성을 구성하려면 다음을 수행합니다. | map | |
startScheduler (scheduler) | 스케줄러를 자동으로 시작해야 하는지 여부입니다. | true | boolean |
timeUnit (scheduler) | 초기 지연 및 지연 옵션의 시간 단위입니다. | MILLISECONDS | TimeUnit |
useFixedDelay (scheduler) | 고정된 지연 또는 고정 속도가 사용되는지 여부를 제어합니다. 자세한 내용은 JDK의 ScheduledExecutorService를 참조하십시오. | true | boolean |
AccessKey (보안) | Amazon AWS 액세스 키 | 문자열 | |
secretKey (보안) | Amazon AWS 시크릿 키 | 문자열 |