Red Hat Training

A Red Hat training course is available for Red Hat Fuse

29.2. URI オプション

AWS S3 Storage Service コンポーネントは、以下に示す 5 個のオプションをサポートしています。

名前説明デフォルトタイプ

configuration (advanced)

AWS S3 のデフォルト設定

 

S3 設定

accessKey (common)

Amazon AWS Access Key

 

String

secretKey (common)

Amazon AWS Secret Key

 

String

region (common)

バケットが配置されているリージョン。このオプションは、com.amazonaws.services.s3.model.CreateBucketRequest で使用されます。

 

String

resolveProperty Placeholders (advanced)

起動時にコンポーネントがプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。

true

boolean

AWS S3 Storage Service エンドポイントは、URI 構文を使用して設定されます。

aws-s3:bucketNameOrArn

パスおよびクエリーパラメーターを使用します。

29.2.1. パスパラメーター (1 個のパラメーター):

名前説明デフォルトタイプ

bucketNameOrArn

必須 バケット名または ARN

 

String

29.2.2. クエリーパラメーター(50 パラメーター):

名前説明デフォルトタイプ

amazonS3Client (common)

link:registry.htmlRegistry の com.amazonaws.services.sqs.AmazonS3 を参照してください。

 

AmazonS3

pathStyleAccess (common)

S3 クライアントがパススタイルアクセスを使用するかどうか

false

boolean

policy (common)

com.amazonaws.services.s3.AmazonS3setBucketPolicy() メソッドに設定されるこのキューのポリシー。

 

文字列

proxyHost (common)

SQS クライアントをインスタンス化するときにプロキシーホストを定義します。

 

String

proxyPort (common)

クライアント定義内で使用されるプロキシーポートを指定します。

 

Integer

region (common)

S3 クライアントが機能する必要があるリージョン

 

String

useIAMCredentials (common)

S3 クライアントが EC2 インスタンスに認証情報をロードすることを期待するか、静的認証情報が渡されることを期待するかを設定します。

false

boolean

encryptionMaterials (common)

対称/非対称クライアントを使用する場合に使用する暗号化マテリアル

 

EncryptionMaterials

useEncryption (common)

暗号化を使用する必要があるかどうかを定義する

false

boolean

bridgeErrorHandler (consumer)

コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。

false

boolean

deleteAfterRead (consumer)

取得後に S3 からオブジェクトを削除します。削除は、エクスチェンジがコミットされた場合にのみ実行されます。ロールバックが発生すると、オブジェクトは削除されません。このオプションが false の場合、同じオブジェクトがポーリングで繰り返し取得されます。そのため、ルートで Idempotent Consumer EIP を使用して重複を除外する必要があります。リンク S3ConstantsBUCKET_NAME とリンク S3ConstantsKEY ヘッダー、またはリンク S3ConstantsKEY ヘッダーのみを使用してフィルタリングできます。

true

boolean

fileName (consumer)

指定のファイル名を持つバケットからオブジェクトを取得します。

 

String

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

prefix (consumer)

対象のオブジェクトのみを消費するために com.amazonaws.services.s3.model.ListObjectsRequest で使用される接頭辞。

 

String

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 Strategy

deleteAfterWrite (producer)

S3 ファイルのアップロード後にファイルオブジェクトを削除します。

false

boolean

multiPartUpload (producer)

true の場合、Camel はマルチパート形式のファイルをアップロードし、パートサイズは partSize のオプションによって決定されます。

false

boolean

operation (producer)

ユーザーがアップロードだけをしたくない場合に行う操作

 

S3 オペレーション

partSize (producer)

マルチパートのアップロードで使用される partSize を設定します。デフォルトのサイズは 25M です。

26214400

long

serverSideEncryption (producer)

AWS が管理するキーを使用してオブジェクトを暗号化するときに、サーバー側の暗号化アルゴリズムを設定します。たとえば、AES256 を使用します。

 

String

storageClass (producer)

com.amazonaws.services.s3.model.PutObjectRequest リクエストに設定するストレージクラス。

 

String

awsKMSKeyId (producer)

KMS が有効になっている場合に使用する KMS キーの ID を定義します。

 

String

useAwsKMS (producer)

KMS を使用する必要があるかどうかを定義します。

false

boolean

synchronous (advanced)

同期処理を厳密に使用するか、Camel が非同期処理を使用できるかどうかを設定します (サポートされている場合)。

false

boolean

accelerateModeEnabled (advanced)

アクセラレートモードの有効化が true か false かを定義する

false

boolean

chunkedEncodingDisabled ( advanced)

無効化されたチャンクエンコーディングが true か false かを定義します

false

boolean

dualstackEnabled (advanced)

Dualstack の有効化が true か false かを定義する

false

boolean

forceGlobalBucketAccess Enabled (advanced)

Force Global Bucket Access の有効化が true か false かを定義します

false

boolean

payloadSigningEnabled (advanced)

有効なペイロード署名が true か false かを定義する

false

boolean

backoffErrorThreshold (scheduler)

backoffMultipler が開始する前に発生する必要がある後続のエラーポーリング (エラーによって失敗した) の数。

 

int

backoffIdleThreshold (scheduler)

backoffMultipler が開始する前に発生する必要がある後続のアイドルポーリングの数。

 

int

backoffMultiplier (scheduler)

後続のアイドル状態/エラーが連続して発生した場合に、スケジュールされたポーリングコンシューマーのバックオフを許可します。乗数は、実際に次の試行が行われる前にスキップされるポーリングの数です。このオプションが使用されている場合は、backoffIdleThreshold や backoffErrorThreshold も設定する必要があります。

 

int

delay (scheduler)

次のポーリングまでの時間 (ミリ秒単位)。60s (60 秒)、5m30s (5 分 30 秒)、1h (1 時間) などの単位を使用して時間値を指定することもできます。

500

long

greedy (scheduler)

greedy が有効で、以前の実行が 1 つ以上のメッセージをポーリングした場合、ScheduledPollConsumer は即座に再度実行されます。

false

boolean

initialDelay (scheduler)

最初のポーリングが開始されるまでの時間 (ミリ秒単位)。60s (60 秒)、5m30s (5 分 30 秒)、1h (1 時間) などの単位を使用して時間値を指定することもできます。

1000

long

runLoggingLevel (scheduler)

コンシューマーはポーリング時に開始/完了のログ行を記録します。このオプションを使用すると、ログレベルを設定できます。

TRACE

LoggingLevel

scheduledExecutorService (scheduler)

コンシューマーに使用するカスタム/共有スレッドプールを設定できます。デフォルトでは、各コンシューマーに独自の単一スレッドのスレッドプールがあります。

 

ScheduledExecutor Service

scheduler (scheduler)

camel-spring または camel-quartz2 コンポーネントから cron スケジューラーを使用します。

none

ScheduledPollConsumer Scheduler

schedulerProperties (scheduler)

カスタムスケジューラーまたは Quartz2 や Spring ベースのスケジューラーを使用する場合に、追加のプロパティーを設定します。

 

Map

startScheduler (scheduler)

スケジューラーを自動起動するかどうか。

true

boolean

timeUnit (scheduler)

initialDelay および delay オプションの時間単位。

MILLISECONDS

TimeUnit

useFixedDelay (scheduler)

固定遅延または固定レートを使用するかどうかを制御します。詳細は、JDK の ScheduledExecutorService を参照してください。

true

boolean

accessKey (security)

Amazon AWS Access Key

 

String

secretKey (security)

Amazon AWS Secret Key

 

String

必須の S3 コンポーネントオプション

Amazon の S3 にアクセスするには、レジストリーに amazonDDBClient を指定するか、accessKey と secretKey を指定する必要があります。