Camel Kafka Connector のスタートガイド
テクノロジープレビュー - Camel コンポーネントを Kafka コネクターとして使用
概要
第1章 Camel Kafka コネクターの概要
本章では、Camel Kafka Connector によって提供される機能、概念、およびディストリビューションを紹介します。
Camel Kafka Connecor はテクノロジープレビューの機能です。テクノロジープレビュー機能は、Red Hat の本番環境のサービスレベルアグリーメント (SLA) ではサポートされず、機能的に完全ではないことがあるため、Red Hat は本番環境での使用は推奨しません。Red Hat は実稼働環境でこれらを使用することを推奨していません。
これらの機能は、近々発表予定の製品機能をリリースに先駆けてご提供することにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、https://access.redhat.com/ja/support/offerings/techpreview を参照してください。
1.1. Camel Kafka Connector の概要
Apache Camel は、標準のエンタープライズ統合パターン (EIP) をベースとした、さまざまなシステムを接続するための非常に柔軟なオープンソースの統合フレームワークです。Apache Kafka Connect は、イベント駆動型アーキテクチャー向けに特別に設計された、外部システムに接続するための Kafka ネイティブなアプローチです。
Camel Kafka Connector を使用すると、標準の Camel コンポーネントを Kafka Connect コネクターとして使用できます。これにより、可能なインテグレーションの範囲が、Kafka Connect コネクターのみによってサポートされる外部システム以外にも拡大されます。Camel Kafka Connector は、Kafka ベースの AMQ Streams on OpenShift で一般的な Camel コンポーネントのエコシステムを利用できるようにするアダプターとして機能します。
Camel Kafka Connector を使用すると、Kafka Connect フレームワークで Camel コンポーネントを直接設定するのがより簡単になります。Camel Kafka Connector を使用すると、Camel Kafka シンクまたはソースコネクターを接続元または接続先とすることで、Camel コンポーネントを利用して異なるシステムとの統合を行うことができます。コードを作成する必要はありません。また、適切なコネクター JAR を Kafka Connect イメージに含めることができ、カスタムリソースを使用してコネクターオプションを設定できます。
Camel Kafka Connector は、Apache Camel オープンソースコミュニティーのサブプロジェクトである Apache Camel Kafka Connector 上に構築されます。Camel Kafka Connector は AMQ Streams および Kafka Connect に完全に統合され、OpenShift Container Platform と Red Hat Enterprise Linux の両方で利用できます。
OpenShift 上のクラウドネイティブインテグレーションでは、Red Hat Integration - Camel K ディストリビューションにて Camel Kafka Connector を利用できます。Camel K は、OpenShift のクラウドでネイティブで実行される Apache Camel K からビルドされる軽量のインテグレーションフレームワークです。Camel K は、サーバーレスおよびマイクロサービスアーキテクチャー向けに特別に設計されています。
その他のリソース
- Apache Camel Kafka Connector の GitHub プロジェクト
- Apache Camel Kafka Connector の Web サイト
- OpenShift での Camel K インテグレーションのデプロイ
1.2. Camel Kafka Connector の機能
テクノロジーリビューの Camel Kafka Connector には、以下の主要機能が含まれています。
1.2.1. プラットフォームおよびコンポーネント
- OpenShift Container Platform 4.5 または 4.6
- Red Hat Enterprise Linux 7.x または 8.x
- AMQ Streams 1.5
- Kafka Connect 2.5
- Camel 3.5
- OpenJDK 8 または 11
1.2.2. テクノロジープレビューの機能
- 一部の Camel Kafka コネクター
- シンクおよびソースコネクターの Camel データフォーマットのマーシャリング/アンマーシャリング
- シンクコネクターの集約
- コネクターを拡張するための Maven archetype
1.2.3. Camel Kafka コネクター
コネクター | シンク/ソース |
---|---|
Amazon Web Services (AWS2) Kinesis | シンクおよびソース |
Amazon Web Services (AWS2) S3 | シンクおよびソース |
Amazon Web Services (AWS2) SNS | シンクのみ |
Amazon Web Services (AWS2) SQS | シンクおよびソース |
Cassandra Query Language (CQL) | シンクおよびソース |
Elasticsearch | シンクのみ |
File | シンクのみ |
Hadoop Distributed File System (HDFS) | シンクのみ |
Hypertext Transfer Protocol (HTTP) | シンクのみ |
Java Database Connectivity (JDBC) | シンクのみ |
Java Message Service (JMS) | シンクおよびソース |
MongoDB | シンクおよびソース |
Salesforce | ソースのみ |
Slack | ソースのみ |
Syslog | ソースのみ |
Timer | ソースのみ |
1.2.4. Camel データフォーマット
テクノロジープレビューの Camel Kafka Connector には、Camel データフォーマットのマーシャリングおよびアンマーシャリングが含まれています。たとえば、これらのフォーマットには Apache Avro、Base64、Google Protobuf、JSON、SOAP、Zip ファイルなどが含まれます。Camel Kafka Connector の設定でプロパティーを使用すると、Camel データフォーマットのマーシャリングおよびアンマーシャリングを設定できます。
1.3. Camel Kafka Connector アーキテクチャー
AMQ Streams は、パブリッシュ/サブスクライブメッセージングブローカーが含まれる Apache Kafka をベースとした分散型でスケーラブルなストリーミングプラットフォームです。Kafka Connect は、Kafka ベースのシステムを外部システムと統合するフレームワークを提供します。Kafka Connect を使用すると、外部システムと Kafka ブローカーとの間で双方向にデータをストリーミングするように ソース および シンク コネクターを設定できます。
Camel Kafka Connector は Camel コンポーネントの柔軟性を再利用し、AMQ Streams をデータのストリーミング元またはストリーミング先とするために使用できるソースおよびシンクコネクターとして Kafka Connect で利用できるようにします。たとえば、AWS S3 ソースコネクターを使用して、処理のために Amazon Web Services からデータを取得したり、Elasticsearch シンクコネクターを使用して、分析のために Kafka に保存されたイベントを Elasticsearch インスタンスに集約したりできます。
以下の図は、AMQ Streams をベースとした Camel Kafka Connector のクラウドネイティブインテグレーションアーキテクチャーの簡単なビューを示しています。
図1.1 Camel Kafka Connector アーキテクチャー
Kafka Connect の概念
- ソースコネクター
- ソースコネクターはコンシューマーのように動作し、外部システムから Kafka トピックにデータをプルして、ストリーム処理にデータを利用できるようにします。たとえば、これらの外部ソースシステムには Amazon Web Services または Java Message Service が含まれます。
- シンクコネクター
- シンクコネクターはプロデューサーと同様に動作し、オフライン分析のために Kafka トピックから外部システムにデータをプッシュします。たとえば、これらの外部シンクシステムには Cassandra、Syslog、または Elasticsearch が含まれます。
- シンク/ソースタスク
- タスクは通常、シンクまたはソースコネクターによって作成され、データの処理を担当します。
- キー/値コンバーター
- キー/値コンバーターは、Kafka メッセージのキーまたは値をさまざまな形式でシリアライズ/デシリアライズできます。
- トランスフォーマー
- トランスフォーマーは、フィールドの名前変更や値を基にしたトピックへのルーティングなど、Kafka メッセージの内容を操作できます。
- アグリゲーター
- シンクコネクターはアグリゲーターを使用して、レコードを外部システムに送信する前にバッチ処理を行うことができます。
Camel Kafka Connector の設定
Camel Kafka Connector 設定を使用して以下を指定できます。
- Kafka Connect 設定オプション
- Camel ルート定義
- Camel 設定オプション
1.4. Camel Kafka Connector ディストリビューション
Camel Kafka Connector ディストリビューションは、Red Hat Integration - Camel K とバンドルされています。
ディストリビューション | 説明 | 場所 |
---|---|---|
Maven リポジトリー | Camel Kafka Connector の Maven アーティファクト | |
ソースコード | Camel Kafka Connector のソースコード | |
デモンストレーションサンプル | Camel Kafka Connector サンプルおよび Debezium コミュニティーサンプル |
Red Hat Integration - Camel K で利用可能な Camel Kafka Connector ディストリビューションにアクセスするには、Red Hat Integration のサブスクリプションが必要で、Red Hat カスタマーポータルにログインする必要があります。
第2章 AMQ Streams on OpenShift での Camel Kafka Connector のデプロイ
本章では、Camel Kafka Connector を AMQ Streams on OpenShift にインストールする方法と、サンプルコネクターを使用する方法について説明します。
2.1. registry.redhat.io での認証設定
AMQ Streams および Kafka Connect Source-2-Image(S2I)を使用して OpenShift に Camel Kafka Connector をデプロイする前に、registry.redhat.io
コンテナーレジストリーで認証を設定する必要があります。
前提条件
- クラスター管理者として OpenShift Container Platform クラスターにアクセスできる必要があります。
-
OpenShift
oc
クライアントツールがインストールされている必要があります。詳細は、OpenShift CLI のドキュメント を参照してください。
手順
以下の例のように、管理者で OpenShift クラスターにログインします。
$ oc login --user system:admin --token=my-token --server=https://my-cluster.example.com:6443
Camel Kafka Connector をデプロイするプロジェクトを開きます。以下に例を示します。
$ oc project myproject
Red Hat カスタマーポータルアカウントを使用して
docker-registry
シークレットを作成します。PULL_SECRET_NAME
は作成するシークレットの名前に置き換えてください。$ oc create secret docker-registry PULL_SECRET_NAME \ --docker-server=registry.redhat.io \ --docker-username=CUSTOMER_PORTAL_USERNAME \ --docker-password=CUSTOMER_PORTAL_PASSWORD \ --docker-email=EMAIL_ADDRESS
以下の出力が表示されるはずです。
secret/PULL_SECRET_NAME created
重要このプルシークレットは、イメージストリームが含まれ、
registry.redhat.io
を使用するすべての OpenShift プロジェクト namespace に作成する必要があります。シークレットをサービスアカウントにリンクして、シークレットをイメージをプルするために使用します。以下は、
default
サービスアカウントを使用する例になります。$ oc secrets link default PULL_SECRET_NAME --for=pull
サービスアカウント名は、サービスアカウント Pod が使用する名前と一致する必要があります。
シークレットを、Kafka Connect S2I を使用する予定の namespace の
builder
サービスアカウントにリンクします。$ oc secrets link builder PULL_SECRET_NAME
注記Red Hat アカウントのユーザー名とパスワードを使用してプルシークレットを作成したくない場合は、レジストリーサービスアカウントを使用して認証トークンを作成する必要があります。
2.2. OpenShift での AMQ Streams および Kafka Connect S2I のインストール
Camel Kafka Connector をインストールするには、AMQ Streams および S2I (Source-2-Image) のある Kafka Connect が必要です。AMQ Streams がインストールされていない場合は、OperatorHub から OpenShift クラスターに AMQ Streams Operator をインストールできます。OperatorHub は OpenShift Container Platform Web コンソールから使用でき、クラスター管理者が Operator を検出およびインストールするためのインターフェースを提供します。詳細は、OpenShift のドキュメント を参照してください。
前提条件
- クラスター管理者として OpenShift Container Platform クラスターにアクセスできる必要があります。
-
「registry.redhat.io での認証設定」 の手順に従って、
registry.redhat.io
で認証する必要があります。 - AMQ Streams および Kafka Connect S2I のインストールに関する詳細は、「AMQ Streams on OpenShift の使用 」を参照してください。ここでは、OpenShift OperatorHub を使用したインストールの簡単なデフォルトの例を示します。
手順
- OpenShift Container Platform Web コンソールで、クラスター管理者権限を持つアカウントを使用してログインします。
-
ツールバーの Project ドロップダウンメニューからプロジェクトを選択します(例:
myproject
)。これは、registry.redhat.io
で認証されたプロジェクトである必要があります。 - 左側のナビゲーションメニューで、Operators > OperatorHub とクリックします。
-
Filter by keyword テキストボックスに
AMQ
を入力し、Red Hat Integration - AMQ Streams Operator を見つけます。 - Operator に関する情報を読み、Install をクリックして Operator サブスクリプションページを表示します。
サブスクリプション設定を選択します。以下に例を示します。
- Update Channel > stable
- Installation Mode > A specific namespace on the cluster > myproject
Approval Strategy > Automatic
注記これら設定は、環境の特定の要件によって異なります。詳細は、OpenShift ドキュメントの「Operator のクラスターへの追加」を参照してください。
- Install をクリックし、Operator が使用できるようになるまでしばらく待ちます。
新しい Kafka ブローカークラスターを作成します。
- Red Hat Integration - AMQ Streams > Provided APIs > Kafka で Create Instance をクリックし、新しい Kafka ブローカークラスターを作成します。
適切にカスタムリソース定義を編集し、Create をクリックします。
重要デフォルトの例では、3 つの Zookeeper ノード、3 つの Kafka ノード、
一時
ストレージを持つ 3 つの Kafka クラスターが作成されます。この一時ストレージは開発およびテストにのみ適しており、実稼働環境には適していません。詳細は、『 Using AMQ Streams on OpenShift 』を参照してください。
新しい Kafka Connect S2I クラスターを作成します。
- Red Hat Integration - AMQ Streams > Provided APIs > Kafka Connect S2I で Create Instance をクリックし、OpenShift S2I サポートのある新しい Kafka Connect クラスターを作成します。
- 適切にカスタムリソース定義を編集し、Create をクリックします。S2I で Kafka Connect を使用する方法の詳細は、『 Using AMQ Streams on OpenShift 』を参照してください。
- Workloads > Pods と選択し、デプロイされたリソースが OpenShift 上で実行されていることを確認します。
その他のリソース
- OpenShift ドキュメントの「Operator のクラスターへの追加」
2.3. OpenShift での Kafka Connect S2I を使用した Camel Kafka コネクターのデプロイ
ここでは、AMQ Streams で Kafka Connect S2I (Source-2-Image) を使用して、Camel Kafka コネクターを既存の Docker ベースの Kafka Connect イメージに追加し、新しいイメージをビルドする方法を説明します。AWS2 S3 Camel Kafka コネクターのサンプルを使用して Camel Kafka コネクタープラグインのインスタンスを作成する方法も紹介します。
前提条件
- クラスター管理者として OpenShift Container Platform クラスターにアクセスできる必要があります。
- OpenShift クラスターに S2I サポートのある AMQ Streams および Kafka Connect がインストールされている必要があります。詳細は 「OpenShift での AMQ Streams および Kafka Connect S2I のインストール」 を参照してください。
- Software Downloads > Red Hat Integration から Camel Kafka Connector がダウンロードされて いる必要があります。
- Amazon S3 バケットへのアクセス。
手順
以下の例のように、管理者で OpenShift クラスターにログインします。
$ oc login --user system:admin --token=my-token --server=https://my-cluster.example.com:6443
Kafka Connect S2I がインストールされているプロジェクトに切り替えます。
$ oc project myproject
ダウンロードした Camel Kafka コネクターを既存の Kafka Connect Docker イメージビルドに追加し、新しいイメージビルドが新しいコネクターで設定するのを待ちます。以下に例を示します。
$ oc start-build my-connect-cluster-connect --from-dir=./camel-kafka-connector/connectors/ --follow Uploading directory "camel-kafka-connector/connectors" as binary input for the build ... ... Uploading finished build.build.openshift.io/my-connect-cluster-connect-2 started Receiving source from STDIN as archive ... Caching blobs under "/var/cache/blobs". Getting image source signatures ... Writing manifest to image destination Storing signatures Generating dockerfile with builder image image-registry.openshift-image-registry.svc:5000/myproject/my-connect-cluster-connect-source@sha256:12d5ed92510941f1569faa449665e9fc6ea544e67b7ae189ec6b8df434e121f4 STEP 1: FROM image-registry.openshift-image-registry.svc:5000/myproject/my-connect-cluster-connect-source@sha256:12d5ed92510941f1569faa449665e9fc6ea544e67b7ae189ec6b8df434e121f4 STEP 2: LABEL "io.openshift.build.image"="image-registry.openshift-image-registry.svc:5000/myproject/my-connect-cluster-connect-source@sha256:12d5ed92510941f1569faa449665e9fc6ea544e67b7ae189ec6b8df434e121f4" "io.openshift.build.source-location"="/tmp/build/inputs" STEP 3: ENV OPENSHIFT_BUILD_NAME="my-connect-cluster-connect-2" OPENSHIFT_BUILD_NAMESPACE="myproject" STEP 4: USER root STEP 5: COPY upload/src /tmp/src STEP 6: RUN chown -R 1001:0 /tmp/src STEP 7: USER 1001 STEP 8: RUN /opt/kafka/s2i/assemble Assembling plugins into custom plugin directory /tmp/kafka-plugins Moving plugins to /tmp/kafka-plugins STEP 9: CMD /opt/kafka/s2i/run STEP 10: COMMIT temp.builder.openshift.io/myproject/my-connect-cluster-connect-2:d0873588 Getting image source signatures ... Writing manifest to image destination Storing signatures ... Pushing image image-registry.openshift-image-registry.svc:5000/myproject/my-connect-cluster-connect:latest ... Getting image source signatures ... Writing manifest to image destination Storing signatures Successfully pushed image-registry.openshift-image-registry.svc:5000/myproject/my-connect-cluster-connect@sha256:9db57d33df6d0494ea6ee6e4696fcaf79eb81aabeb0bbc180dec5324d33e7eda Push successful
以下のように、Camel Kafka Connector が Kafka Connect クラスターで利用できることを確認します。
$ oc exec -i `oc get pods --field-selector status.phase=Running -l strimzi.io/name=my-connect-cluster-connect -o=jsonpath='{.items[0].metadata.name}'` -- curl -s http://my-connect-cluster-connect-api:8083/connector-plugins
以下のような出力が表示されます。
[{"class":"org.apache.kafka.connect.file.FileStreamSinkConnector","type":"sink","version":"2.5.0.redhat-00003"},{"class":"org.apache.kafka.connect.file.FileStreamSourceConnector","type":"source","version":"2.5.0.redhat-00003"},{"class":"org.apache.kafka.connect.mirror.MirrorCheckpointConnector","type":"source","version":"1"},{"class":"org.apache.kafka.connect.mirror.MirrorHeartbeatConnector","type":"source","version":"1"},{"class":"org.apache.kafka.connect.mirror.MirrorSourceConnector","type":"source","version":"1"}]
以下のアノテーションを使用して、特定のカスタムリソースを使用した Camel Kafka コネクターをインスタンス化を有効にします。
$ oc annotate kafkaconnects2is my-connect-cluster strimzi.io/use-connector-resources=true kafkaconnects2i.kafka.strimzi.io/my-connect-cluster annotated
重要use-connector-resources
オプションが有効になっている場合は、Kafka Connect API サーバーを使用しないでください。Kafka Connect Operator は変更をすべて元に戻します。コネクター設定が含まれる特定のカスタムリソースを作成して、コネクターインスタンスを作成します。以下の例は、AWS2 S3 コネクタープラグインの設定を示しています。
$ oc apply -f - << EOF apiVersion: kafka.strimzi.io/v1alpha1 kind: KafkaConnector metadata: name: s3-source-connector namespace: myproject labels: strimzi.io/cluster: my-connect-cluster spec: class: org.apache.camel.kafkaconnector.aws2s3.CamelAws2s3SourceConnector tasksMax: 1 config: key.converter: org.apache.kafka.connect.storage.StringConverter value.converter: org.apache.kafka.connect.storage.StringConverter topics: s3-topic camel.source.path.bucketNameOrArn: camel-kafka-connector camel.source.maxPollDuration: 10000 camel.component.aws2-s3.accessKey: xxxx camel.component.aws2-s3.secretKey: yyyy camel.component.aws2-s3.region: region EOF kafkaconnector.kafka.strimzi.io/s3-source-connector created
以下のコマンド例を使用して、コネクターの状態を確認します。
$ oc exec -i `oc get pods --field-selector status.phase=Running -l strimzi.io/name=my-connect-cluster-connect -o=jsonpath='{.items[0].metadata.name}'` -- curl -s http://my-connect-cluster-connect-api:8083/connectors/s3-source-connector/status
-
AWS コンソールに接続し、ファイルを
camel-kafka-connector
AWS S3 バケットにアップロードし、Camel Kafka ルートをアクティベートします。 以下のように、Kafka コンソールコンシューマーを実行し、トピックから受信したメッセージを確認できます。
oc exec -i -c kafka my-cluster-kafka-0 -- bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic s3-topic --from-beginning CONTENTS_OF_FILE CONTENTS_OF_FILE ...
第3章 Camel Kafka Connector 開発者サンプルのデプロイ
Camel Kafka Connector は、https://github.com/jboss-fuse/camel-kafka-connector-examples から利用できる選択したコネクターのデモサンプルを提供します。本章では、Camel Kafka Connector インストールプラットフォームを基にして、これらのサンプルをデプロイする方法を説明します。
3.1. OpenShift での Camel Kafka Connector サンプルのデプロイ
ここでは、選択したコネクターの Camel Kafka Connector デモンストレーションサンプルを OpenShift にデプロイする方法を説明します。
前提条件
- 従う Procedure (手順) の各 readme を下方向にスクロールして、OpenShift - What is needed セクションを確認します。
手順
以下のいずれかのサンプルの GitHub readme に移動します。
- 選択したサンプルの readme の OpenShift セクションまで下方向にスクロールします。
- readme に記載されている手順に従い、サンプルを実行します。
その他のリソース
3.2. RHEL での Camel Kafka Connector サンプルのデプロイ
ここでは、選択したコネクターの Camel Kafka Connector デモンストレーションサンプルを Red Hat Enterprise Linux にデプロイする方法を説明します。
前提条件
- 従う Procedure (手順) の各 readme にある What is needed セクションを確認します。
手順
以下のいずれかのサンプルの GitHub readme に移動します。
- readme に記載されている手順に従い、サンプルを実行します。
第4章 Camel Kafka コネクターの拡張
本章では、Camel Kafka コネクターおよびコンポーネントを拡張し、カスタマイズする方法を説明します。Camel Kafka Connector は、コードを作成せずに Kafka Connect フレームワークで Camel コンポーネントを直接設定する簡単な方法を提供します。しかし、状況によっては、特定のユースケースに対して Camel Kafka Connector を拡張およびカスタマイズする場合があります。
4.1. Camel Kafka コネクターアグリゲーターの設定
Camel Kafka シンクコネクターを使用する一部のシナリオでは、Kafka レコードを外部シンクシステムに送信する前に、アグリゲーターを追加して Kafka レコードをバッチ処理することがあります。通常、このような場合、レコードの集約のために特定のバッチサイズとタイムアウトを定義します。完了したら、集約レコードが外部システムに送信されます。
Apache Camel によって提供されるアグリゲーターの 1 つを使用して、Camel Kafka Connector プロパティーで集約の設定を指定できます。または、Java でカスタムアグリゲーターを実装することもできます。ここでは、Camel Kafka Connector プロパティーで Camel アグリゲーターを設定する方法を説明します。
前提条件
- Camel Kafka Connector がインストール済みである必要があります (例: 「OpenShift での AMQ Streams および Kafka Connect S2I のインストール」 を参照)。
- シンクコネクターがデプロイ済みである必要があります (例: 「OpenShift での Kafka Connect S2I を使用した Camel Kafka コネクターのデプロイ」 を参照)。ここでは、AWS S3 シンクコネクターを使用する例を紹介します。
手順
インストールプラットフォームに応じて、シンクコネクターおよびアグリゲーターを Camel Kafka Connector プロパティーで設定します。
- OpenShift
以下の例は、カスタムリソースの AWS S3 シンクコネクターおよびアグリゲーター設定を示しています。
oc apply -f - << EOF apiVersion: kafka.strimzi.io/v1alpha1 kind: KafkaConnector metadata: name: s3-sink-connector namespace: myproject labels: strimzi.io/cluster: my-connect-cluster spec: class: org.apache.camel.kafkaconnector.aws2s3.CamelAws2s3SinkConnector tasksMax: 1 config: key.converter: org.apache.kafka.connect.storage.StringConverter value.converter: org.apache.kafka.connect.storage.StringConverter topics: s3-topic camel.sink.path.bucketNameOrArn: camel-kafka-connector camel.sink.endpoint.keyName: ${date:now:yyyyMMdd-HHmmssSSS}-${exchangeId} # Camel aggregator settings camel.beans.aggregate: class:org.apache.camel.kafkaconnector.aggregator.StringAggregator camel.beans.aggregation.size: 10 camel.beans.aggregation.timeout: 5000 camel.component.aws2-s3.accessKey: xxxx camel.component.aws2-s3.secretKey: yyyy camel.component.aws2-s3.region: region EOF
- Red Hat Enterprise Linux
以下の例は、
CamelAwss3SinkConnector.properties
ファイルの AWS S3 シンクコネクターおよびアグリゲーター設定を示しています。name=CamelAWS2S3SinkConnector connector.class=org.apache.camel.kafkaconnector.aws2s3.CamelAws2s3SinkConnector key.converter=org.apache.kafka.connect.storage.StringConverter value.converter=org.apache.kafka.connect.storage.StringConverter topics=mytopic camel.sink.path.bucketNameOrArn=camel-kafka-connector camel.component.aws2-s3.access-key=xxxx camel.component.aws2-s3.secret-key=yyyy camel.component.aws2-s3.region=eu-west-1 camel.sink.endpoint.keyName=${date:now:yyyyMMdd-HHmmssSSS}-${exchangeId} # Camel aggregator settings camel.beans.aggregate=class:org.apache.camel.kafkaconnector.aggregator.StringAggregator camel.beans.aggregation.size=10 camel.beans.aggregation.timeout=5000
4.2. カスタム Camel Kafka コネクターアグリゲーターの作成
Camel Kafka シンクコネクターを使用する一部のシナリオでは、Kafka レコードを外部シンクシステムに送信する前に、アグリゲーターを追加して Kafka レコードをバッチ処理することがあります。通常、このような場合、レコードの集約のために特定のバッチサイズとタイムアウトを定義します。完了したら、集約レコードが外部システムに送信されます。
独自のアグリゲーターを実装するか、Apache Camel が提供するアグリゲーターの 1 つを設定できます。ここでは、Camel AggregationStrategy
クラスを使用して Java にカスタムアグリゲーターを実装する方法を説明します。
前提条件
- Red Hat Fuse がインストール済みである必要があります。
手順
Camel
AggregationStrategy
クラスを実装して、独自のカスタムアグリゲーターを作成します。以下に例を示します。package org.apache.camel.kafkaconnector.aggregator; import org.apache.camel.AggregationStrategy; import org.apache.camel.Exchange; import org.apache.camel.Message; public class StringAggregator implements AggregationStrategy { @Override public Exchange aggregate(Exchange oldExchange, Exchange newExchange) { 1 // lets append the old body to the new body if (oldExchange == null) { return newExchange; } String body = oldExchange.getIn().getBody(String.class); 2 if (body != null) { Message newIn = newExchange.getIn(); String newBody = newIn.getBody(String.class); if (newBody != null) { body += System.lineSeparator() + newBody; } newIn.setBody(body); } return newExchange; 3 } }
- カスタムアグリゲーターコードを既存の Camel Kafka コネクターに追加します。「Maven archetype を使用した Camel Kafka コネクターの拡張」 を参照してください。
4.3. Camel Kafka Connector での Camel データフォーマットの設定
Camel Kafka Connector は、シンクおよびソースコネクターの Camel データフォーマットのマーシャリング/アンマーシャリングを提供します。たとえば、これらのフォーマットには Apache Avro、Base64、Google Protobuf、JSON、SOAP、Zip ファイルなどが含まれます。
通常、Camel DSL の Camel DataFormat
を使用して、異なる Camel データフォーマットとの間でメッセージをマーシャリングおよびアンマーシャリングします。たとえば、Camel File または JMS コンポーネントからメッセージを受信し、さらに処理するためにペイロードをアンマーシャリングする場合は、DataFormat
を使用して Camel DSL に実装できます。
Camel Kafka Connector を使用すると、コネクター設定でプロパティーを使用して、Camel データフォーマットのマーシャリングおよびアンマーシャリングを設定できます。ここでは、camel.sink.marshal: zipfile
プロパティーを使用して Camel Zip ファイルデータフォーマットのマーシャリングを設定する方法を説明します。
前提条件
- OpenShift または Red Hat Enterprise Linux に Camel Kafka Connector がインストール済みである必要があります。
-
アーキタイプから開始したコネクターがすでにビルドされ、
pom.xml
を編集して必要な依存関係を追加する必要があります。「Maven archetype を使用した Camel Kafka コネクターの拡張」を参照してください。
手順
インストールプラットフォームに応じて、Camel Kafka Connector 設定でデータフォーマットをマーシャリング/アンマーシャリングするためのコネクター設定を行います。
- OpenShift
以下の例は、カスタムリソースの AWS S3 シンクコネクターおよび Camel Zip データフォーマットの設定を示しています。
oc apply -f - << EOF apiVersion: kafka.strimzi.io/v1alpha1 kind: KafkaConnector metadata: name: s3-sink-connector namespace: myproject labels: strimzi.io/cluster: my-connect-cluster spec: class: org.apache.camel.kafkaconnector.aws2s3.CamelAws2s3SinkConnector tasksMax: 1 config: key.converter: org.apache.kafka.connect.storage.StringConverter value.converter: org.apache.kafka.connect.storage.StringConverter topics: s3-topic camel.sink.path.bucketNameOrArn: camel-kafka-connector camel.sink.endpoint.keyName: ${date:now:yyyyMMdd-HHmmssSSS}-${exchangeId}.zip # Camel data format setting camel.sink.marshal: zipfile camel.component.aws2-s3.accessKey: xxxx camel.component.aws2-s3.secretKey: yyyy camel.component.aws2-s3.region: region EOF
- Red Hat Enterprise Linux
以下の例は、
CamelAwss3SinkConnector.properties
ファイルの AWS S3 シンクコネクターおよび Camel Zip データ設定を示しています。name=CamelAWS2S3SinkConnector connector.class=org.apache.camel.kafkaconnector.aws2s3.CamelAws2s3SinkConnector key.converter=org.apache.kafka.connect.storage.StringConverter value.converter=org.apache.kafka.connect.storage.StringConverter topics=mytopic # Camel data format setting camel.sink.marshal=zipfile camel.sink.path.bucketNameOrArn=camel-kafka-connector camel.component.aws2-s3.access-key=xxxx camel.component.aws2-s3.secret-key=yyyy camel.component.aws2-s3.region=eu-west-1 camel.sink.endpoint.keyName=${date:now:yyyyMMdd-HHmmssSSS}-${exchangeId}.zip
4.4. Maven archetype を使用した Camel Kafka コネクターの拡張
状況によっては、Camel Kafka Connector システムを拡張する必要がある場合があります。たとえば、シンクコネクターを使用する場合は、Kafka レコードを外部シンクシステムに送信する前に、カスタムアグリゲーターを追加して Kafka レコードをバッチ処理することがあります。または、Apache Avro、Google Protobuf、JSON、Zip ファイルなどの Camel データフォーマットをマーシャリングまたはアンマーシャリングするためのコネクターを設定することがあります。
Maven camel-kafka-connector-extensible-archetype
を使用して既存の Camel Kafka コネクターを拡張できます。archetype は、プロジェクト生成の一貫した方法を提供する Maven プロジェクトテンプレートです。ここでは、archetype を使用して拡張する Maven プロジェクトを作成する方法と、プロジェクトの依存関係を追加する方法を説明します。
Maven archetype を使用した追加の Kafka Connect コンバーターまたはトランスフォーマーの作成は、テクノロジープレビューには含まれず、コミュニティーサポートのみが対象となります。
前提条件
- Apache Maven がインストール済みである必要があります。
手順
mvn archetype:generate
コマンドを入力して Maven プロジェクトを作成し、Camel Kafka Connector を拡張します。以下に例を示します。$ mvn archetype:generate -DarchetypeGroupId=org.apache.camel.kafkaconnector.archetypes -DarchetypeArtifactId=camel-kafka-connector-extensible-archetype -DarchetypeVersion=CONNECTOR_VERSION [INFO] Scanning for projects... [INFO] [INFO] ------------------< org.apache.maven:standalone-pom >------------------- [INFO] Building Maven Stub Project (No POM) 1 [INFO] --------------------------------[ pom ]--------------------------------- [INFO] [INFO] >>> maven-archetype-plugin:3.1.2:generate (default-cli) > generate-sources @ standalone-pom >>> [INFO] [INFO] <<< maven-archetype-plugin:3.1.2:generate (default-cli) < generate-sources @ standalone-pom <<< [INFO] [INFO] [INFO] --- maven-archetype-plugin:3.1.2:generate (default-cli) @ standalone-pom --- [INFO] Generating project in Interactive mode [INFO] Archetype repository not defined. Using the one from [org.apache.camel.kafkaconnector.archetypes:camel-kafka-connector-extensible-archetype:0.4.0] found in catalog remote
プロンプトが表示されたら、各プロパティーの値を入力します。以下の例では、
camel-aws2-s3-kafka-connector
を拡張します。Define value for property 'groupId': org.apache.camel.kafkaconnector.extended Define value for property 'artifactId': myconnector-extended Define value for property 'version' 1.0-SNAPSHOT: : Define value for property 'package' org.apache.camel.kafkaconnector.extended: : Define value for property 'camel-kafka-connector-name': camel-aws2-s3-kafka-connector [INFO] Using property: camel-kafka-connector-version = CONNECTOR_VERSION Confirm properties configuration: groupId: org.apache.camel.kafkaconnector.extended artifactId: myconnector-extended version: 1.0-SNAPSHOT package: org.apache.camel.kafkaconnector.extended camel-kafka-connector-name: camel-aws2-s3-kafka-connector camel-kafka-connector-version: CONNECTOR_VERSION
Y
を入力してプロパティーを確認します。Y: : Y [INFO] ---------------------------------------------------------------------------- [INFO] Using following parameters for creating project from Archetype: camel-kafka-connector-extensible-archetype:CONNECTOR_VERSION [INFO] ---------------------------------------------------------------------------- [INFO] Parameter: groupId, Value: org.apache.camel.kafkaconnector.extended [INFO] Parameter: artifactId, Value: myconnector-extended [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: package, Value: org.apache.camel.kafkaconnector.extended [INFO] Parameter: packageInPathFormat, Value: org/apache/camel/kafkaconnector/extended [INFO] Parameter: package, Value: org.apache.camel.kafkaconnector.extended [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: groupId, Value: org.apache.camel.kafkaconnector.extended [INFO] Parameter: camel-kafka-connector-name, Value: camel-aws2-s3-kafka-connector [INFO] Parameter: camel-kafka-connector-version, Value: CONNECTOR_VERSION [INFO] Parameter: artifactId, Value: myconnector-extended [INFO] Project created from Archetype in dir: /home/workspace/myconnector-extended [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 05:44 min [INFO] Finished at: 2020-09-04T08:55:00+02:00 [INFO] ------------------------------------------------------------------------
-
作成した Maven プロジェクトの
pom.xml
に必要な依存関係を入力します。 Maven プロジェクトをビルドし、拡張された Camel Kafka コネクターの
.zip
またはtar.gz
ファイルを作成します。mvn clean package
第5章 Camel Kafka Connector 設定リファレンス
本章では、Camel Kafka Connector を使用して設定できる Camel Kafka コネクターに関する参照情報を提供します。
このテクノロジープレビューリリースには、利用可能な Apache Camel Kafka コネクターのターゲットサブセットが含まれています。今後のリリースで、追加のコネクターが Camel Kafka Connector に追加されます。
コネクター | シンク | ソース |
---|---|---|
Amazon Web Services Kinesis | ||
Amazon Web Services S3 | ||
Amazon Web Services SNS | - | |
Amazon Web Services SQS | ||
Cassandra Query Language | ||
Elasticsearch | - | |
ファイル | - | |
Hadoop Distributed File System | - | |
Hypertext Transfer Protocol | - | |
Java Database Connectivity | - | |
Java Message Service | ||
MongoDB | ||
Salesforce | - | |
Slack | - | |
Syslog | - | |
Timer | - |
5.1. camel-aws2-kinesis-kafka-connector のシンク設定
camel-aws2-kinesis-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-aws2-kinesis-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.aws2kinesis.CamelAws2kinesisSinkConnector
camel-aws2-kinesis シンクコネクターは、以下に示す 25 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.streamName | ストリームの名前 | null | HIGH |
camel.sink.endpoint.amazonKinesisClient | このエンドポイントに対するすべての要求に使用する Amazon Kinesis クライアント。 | null | MEDIUM |
camel.sink.endpoint.autoDiscoverClient | 自動DiscoverClient メカニズムの設定(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、この確認はスキップされます。 | true | MEDIUM |
camel.sink.endpoint.proxyHost | Kinesis クライアントをインスタンス化する際にプロキシーホストを定義します。 | null | MEDIUM |
camel.sink.endpoint.proxyPort | Kinesis クライアントをインスタンス化する際にプロキシーポートを定義します。 | null | MEDIUM |
camel.sink.endpoint.proxyProtocol | Kinesis クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.sink.endpoint.region | Kinesis Firehose クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.sink.endpoint.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.sink.endpoint.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.sink.endpoint.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel.component.aws2-kinesis.amazonKinesisClient | このエンドポイントに対するすべての要求に使用する Amazon Kinesis クライアント。 | null | MEDIUM |
camel.component.aws2-kinesis.autoDiscoverClient | 自動DiscoverClient メカニズムの設定(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、この確認はスキップされます。 | true | MEDIUM |
camel.component.aws2-kinesis.configuration | コンポーネントの設定 | null | MEDIUM |
camel.component.aws2-kinesis.proxyHost | Kinesis クライアントをインスタンス化する際にプロキシーホストを定義します。 | null | MEDIUM |
camel.component.aws2-kinesis.proxyPort | Kinesis クライアントをインスタンス化する際にプロキシーポートを定義します。 | null | MEDIUM |
camel.component.aws2-kinesis.proxyProtocol | Kinesis クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.component.aws2-kinesis.region | Kinesis Firehose クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.component.aws2-kinesis.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.component.aws2-kinesis.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.aws2-kinesis.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.aws2-kinesis.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.component.aws2-kinesis.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel-aws2-kinesis シンクコネクターには、そのまま使えるコンバーターがありません。
camel-aws2-kinesis シンクコネクターにはそのまま使える transforms がありません。
camel-aws2-kinesis シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.2. camel-aws2-kinesis-kafka-connector ソース設定
camel-aws2-kinesis-kafka-connector をソースとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-aws2-kinesis-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのソースコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.aws2kinesis.CamelAws2kinesisSourceConnector
camel-aws2-kinesis ソースコネクターは、以下に示す 53 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.source.path.streamName | ストリームの名前 | null | HIGH |
camel.source.endpoint.amazonKinesisClient | このエンドポイントに対するすべての要求に使用する Amazon Kinesis クライアント。 | null | MEDIUM |
camel.source.endpoint.autoDiscoverClient | 自動DiscoverClient メカニズムの設定(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、この確認はスキップされます。 | true | MEDIUM |
camel.source.endpoint.proxyHost | Kinesis クライアントをインスタンス化する際にプロキシーホストを定義します。 | null | MEDIUM |
camel.source.endpoint.proxyPort | Kinesis クライアントをインスタンス化する際にプロキシーポートを定義します。 | null | MEDIUM |
camel.source.endpoint.proxyProtocol | Kinesis クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.source.endpoint.region | Kinesis Firehose クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.source.endpoint.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.source.endpoint.bridgeErrorHandler | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | MEDIUM |
camel.source.endpoint.iteratorType | Kinesis ストリームでレコードの取得を開始する場所を定義します。[AT_SEQUENCE_NUMBER]、[AFTER_SEQUENCE_NUMBER]、[TRIM_HORIZON]、[LATEST]、[AT_TIMESTAMP]、[null] のいずれか。 | "TRIM_HORIZON" | MEDIUM |
camel.source.endpoint.maxResultsPerRequest | 各ポーリングでフェッチされる最大レコード数。 | 1 | MEDIUM |
camel.source.endpoint.sendEmptyMessageWhenIdle | ポーリングコンシューマーがファイルをポーリングしなかった場合、このオプションを有効にして、代わりに空のメッセージ (ボディーなし) を送信できます。 | false | MEDIUM |
camel.source.endpoint.sequenceNumber | ポーリングを開始するシーケンス番号。iteratorType が AFTER_SEQUENCE_NUMBER または AT_SEQUENCE_NUMBER に設定されている場合に必要です。 | null | MEDIUM |
camel.source.endpoint.shardClosed | シャード (shard) が閉じられた場合の動作を定義します。使用できる値は ignore、silent、および fail です。ignore の場合、メッセージはログに記録され、コンシューマーは最初から再起動します。silent の場合は、ログには記録されず、コンシューマーは最初から起動します。fail の場合は、ReachedClosedStateException が発生します。[ignore]、[fail]、[silent] のいずれか。 | "ignore" | MEDIUM |
camel.source.endpoint.shardId | Kinesis ストリームでどの shardId からレコードを取得するかを定義します。 | null | MEDIUM |
camel.source.endpoint.exceptionHandler | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | null | MEDIUM |
camel.source.endpoint.exchangePattern | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。[InOnly]、[InOut]、[InOptionalOut] のいずれか。 | null | MEDIUM |
camel.source.endpoint.pollStrategy | プラグ可能な org.apache.camel.PollingConsumerPollingStrategy を使用すると、エクスチェンジが作成され、Camel でルーティングされる前に、通常はポーリング操作中に発生するエラー処理を制御するカスタム実装が提供できます。 | null | MEDIUM |
camel.source.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.source.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.source.endpoint.backoffErrorThreshold | backoffMultipler が開始する前に発生する必要がある後続のエラーポーリング (エラーによって失敗した) の数。 | null | MEDIUM |
camel.source.endpoint.backoffIdleThreshold | backoffMultipler が開始する前に発生する必要がある後続のアイドルポーリングの数。 | null | MEDIUM |
camel.source.endpoint.backoffMultiplier | 後続のアイドル状態/エラーが連続して発生した場合に、スケジュールされたポーリングコンシューマーのバックオフを許可します。乗数は、実際に次の試行が行われる前にスキップされるポーリングの数です。このオプションが使用されている場合は、backoffIdleThreshold や backoffErrorThreshold も設定する必要があります。 | null | MEDIUM |
camel.source.endpoint.delay | 次のポーリングまでの時間 (ミリ秒単位)。 | 500L | MEDIUM |
camel.source.endpoint.greedy | greedy が有効で、以前の実行が 1 つ以上のメッセージをポーリングした場合、ScheduledPollConsumer は即座に再度実行されます。 | false | MEDIUM |
camel.source.endpoint.initialDelay | 最初のポーリングが開始されるまでの時間 (ミリ秒単位)。 | 1000L | MEDIUM |
camel.source.endpoint.repeatCount | 実行の最大数を指定します。そのため、これを 1 に設定するとスケジューラーは 1 度だけ実行されます。これを 5 に設定した場合、5 回だけ実行されます。0 または負の値を設定すると、無制限に実行されます。 | 0L | MEDIUM |
camel.source.endpoint.runLoggingLevel | コンシューマーはポーリング時に開始/完了のログ行を記録します。このオプションを使用すると、ログレベルを設定できます。[TRACE]、[DEBUG]、[INFO]、[WARN]、[ERROR]、[OFF] のいずれか。 | "TRACE" | MEDIUM |
camel.source.endpoint.scheduledExecutorService | コンシューマーに使用するカスタム/共有スレッドプールを設定できます。デフォルトでは、各コンシューマーに独自の単一スレッドのスレッドプールがあります。 | null | MEDIUM |
camel.source.endpoint.scheduler | camel-spring または camel-quartz コンポーネントから cron スケジューラーを使用します。スケジューラーにビルドされた値 spring または quartz を使用。 | "none" | MEDIUM |
camel.source.endpoint.schedulerProperties | カスタムスケジューラーまたは Quartz や Spring ベースのスケジューラーを使用する場合に、追加のプロパティーを設定します。 | null | MEDIUM |
camel.source.endpoint.startScheduler | スケジューラーを自動起動するかどうか。 | true | MEDIUM |
camel.source.endpoint.timeUnit | initialDelay および delay オプションの時間単位。[NANOSECONDS]、[MICROSECONDS]、[MILLISECONDS]、[SECONDS]、[MINUTES]、[HOURS]、[DAYS] のいずれか。 | "MILLISECONDS" | MEDIUM |
camel.source.endpoint.useFixedDelay | 固定遅延または固定レートを使用するかどうかを制御します。詳細は、JDK の ScheduledExecutorService を参照してください。 | true | MEDIUM |
camel.source.endpoint.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.source.endpoint.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel.component.aws2-kinesis.amazonKinesisClient | このエンドポイントに対するすべての要求に使用する Amazon Kinesis クライアント。 | null | MEDIUM |
camel.component.aws2-kinesis.autoDiscoverClient | 自動DiscoverClient メカニズムの設定(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、この確認はスキップされます。 | true | MEDIUM |
camel.component.aws2-kinesis.configuration | コンポーネントの設定 | null | MEDIUM |
camel.component.aws2-kinesis.proxyHost | Kinesis クライアントをインスタンス化する際にプロキシーホストを定義します。 | null | MEDIUM |
camel.component.aws2-kinesis.proxyPort | Kinesis クライアントをインスタンス化する際にプロキシーポートを定義します。 | null | MEDIUM |
camel.component.aws2-kinesis.proxyProtocol | Kinesis クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.component.aws2-kinesis.region | Kinesis Firehose クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.component.aws2-kinesis.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.component.aws2-kinesis.bridgeErrorHandler | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | MEDIUM |
camel.component.aws2-kinesis.iteratorType | Kinesis ストリームでレコードの取得を開始する場所を定義します。[AT_SEQUENCE_NUMBER]、[AFTER_SEQUENCE_NUMBER]、[TRIM_HORIZON]、[LATEST]、[AT_TIMESTAMP]、[null] のいずれか。 | "TRIM_HORIZON" | MEDIUM |
camel.component.aws2-kinesis.maxResultsPerRequest | 各ポーリングでフェッチされる最大レコード数。 | 1 | MEDIUM |
camel.component.aws2-kinesis.sequenceNumber | ポーリングを開始するシーケンス番号。iteratorType が AFTER_SEQUENCE_NUMBER または AT_SEQUENCE_NUMBER に設定されている場合に必要です。 | null | MEDIUM |
camel.component.aws2-kinesis.shardClosed | シャード (shard) が閉じられた場合の動作を定義します。使用できる値は ignore、silent、および fail です。ignore の場合、メッセージはログに記録され、コンシューマーは最初から再起動します。silent の場合は、ログには記録されず、コンシューマーは最初から起動します。fail の場合は、ReachedClosedStateException が発生します。[ignore]、[fail]、[silent] のいずれか。 | "ignore" | MEDIUM |
camel.component.aws2-kinesis.shardId | Kinesis ストリームでどの shardId からレコードを取得するかを定義します。 | null | MEDIUM |
camel.component.aws2-kinesis.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.aws2-kinesis.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.component.aws2-kinesis.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel-aws2-kinesis シンクコネクターには、そのまま使えるコンバーターがありません。
camel-aws2-kinesis シンクコネクターにはそのまま使える transforms がありません。
camel-aws2-kinesis シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.3. camel-aws2-s3-kafka-connector のシンク設定
camel-aws2-s3-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-aws2-s3-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.aws2s3.CamelAws2s3SinkConnector
camel-aws2-s3 シンクコネクターは、以下に示す 61 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.bucketNameOrArn | バケット名または ARN。 | null | HIGH |
camel.sink.endpoint.amazonS3Client | レジストリーの com.amazonaws.services.s3.AmazonS3 への参照。 | null | MEDIUM |
camel.sink.endpoint.autoCreateBucket | S3 バケット bucketName の自動作成の設定。moveAfterRead オプションが有効になっている場合も適用され、destinationBucket が存在しない場合は作成されます。 | true | MEDIUM |
camel.sink.endpoint.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.sink.endpoint.overrideEndpoint | エンドポイントをオーバーライドする必要性を設定します。このオプションは uriEndpointOverride オプションと併用する必要があります。 | false | MEDIUM |
camel.sink.endpoint.pojoRequest | POJO リクエストをボディーとして使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.policy | com.amazonaws.services.s3.AmazonS3#setBucketPolicy() メソッドに設定されるこのキューのポリシー。 | null | MEDIUM |
camel.sink.endpoint.proxyHost | SQS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.sink.endpoint.proxyPort | クライアント定義内で使用されるプロキシーポートを指定します。 | null | MEDIUM |
camel.sink.endpoint.proxyProtocol | S3 クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.sink.endpoint.region | S3 クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.sink.endpoint.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.sink.endpoint.uriEndpointOverride | オーバーライドする URI エンドポイントを設定します。このオプションは overrideEndpoint オプションと併用する必要があります。 | null | MEDIUM |
camel.sink.endpoint.useIAMCredentials | S3 クライアントが EC2 インスタンスでクレデンシャルをロードすることを期待すべきか、または静的クレデンシャルが渡されることを期待すべきかどうかを設定します。 | false | MEDIUM |
camel.sink.endpoint.customerAlgorithm | CustomerKey が有効になっている場合に使用するカスタマーアルゴリズムを定義します。 | null | MEDIUM |
camel.sink.endpoint.customerKeyId | CustomerKey が有効になっている場合に使用するカスタマーキーの ID を定義します。 | null | MEDIUM |
camel.sink.endpoint.customerKeyMD5 | CustomerKey が有効になっている場合に使用するカスタマーキーの MD5 を定義します。 | null | MEDIUM |
camel.sink.endpoint.deleteAfterWrite | S3 ファイルのアップロード後にファイルオブジェクトを削除します。 | false | MEDIUM |
camel.sink.endpoint.keyName | endpoint パラメーター経由でバケットの要素のキー名を設定します。 | null | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.multiPartUpload | true の場合、Camel はマルチパート形式のファイルをアップロードし、パートサイズは partSize のオプションによって決定されます。 | false | MEDIUM |
camel.sink.endpoint.operation | ユーザーがアップロードのみを実行したくない場合に実行する操作。[copyObject]、[listObjects]、[deleteObject]、[deleteBucket]、[listBuckets]、[getObject]、[getObjectRange] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.partSize | マルチパートのアップロードで使用される partSize を設定します。デフォルトのサイズは 25M です。 | 26214400L | MEDIUM |
camel.sink.endpoint.storageClass | com.amazonaws.services.s3.model.PutObjectRequest リクエストに設定するストレージクラス。 | null | MEDIUM |
camel.sink.endpoint.awsKMSKeyId | KMS が有効になっている場合に使用する KMS キーの ID を定義します。 | null | MEDIUM |
camel.sink.endpoint.useAwsKMS | KMS を使用する必要があるかどうかを定義します。 | false | MEDIUM |
camel.sink.endpoint.useCustomerKey | カスタマーキーを使用する必要があるかどうかを定義します。 | false | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.sink.endpoint.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.sink.endpoint.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel.component.aws2-s3.amazonS3Client | レジストリーの com.amazonaws.services.s3.AmazonS3 への参照。 | null | MEDIUM |
camel.component.aws2-s3.autoCreateBucket | S3 バケット bucketName の自動作成の設定。moveAfterRead オプションが有効になっている場合も適用され、destinationBucket が存在しない場合は作成されます。 | true | MEDIUM |
camel.component.aws2-s3.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.component.aws2-s3.configuration | コンポーネントの設定。 | null | MEDIUM |
camel.component.aws2-s3.overrideEndpoint | エンドポイントをオーバーライドする必要性を設定します。このオプションは uriEndpointOverride オプションと併用する必要があります。 | false | MEDIUM |
camel.component.aws2-s3.pojoRequest | POJO リクエストをボディーとして使用するかどうか。 | false | MEDIUM |
camel.component.aws2-s3.policy | com.amazonaws.services.s3.AmazonS3#setBucketPolicy() メソッドに設定されるこのキューのポリシー。 | null | MEDIUM |
camel.component.aws2-s3.proxyHost | SQS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.component.aws2-s3.proxyPort | クライアント定義内で使用されるプロキシーポートを指定します。 | null | MEDIUM |
camel.component.aws2-s3.proxyProtocol | S3 クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.component.aws2-s3.region | S3 クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.component.aws2-s3.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.component.aws2-s3.uriEndpointOverride | オーバーライドする URI エンドポイントを設定します。このオプションは overrideEndpoint オプションと併用する必要があります。 | null | MEDIUM |
camel.component.aws2-s3.useIAMCredentials | S3 クライアントが EC2 インスタンスでクレデンシャルをロードすることを期待すべきか、または静的クレデンシャルが渡されることを期待すべきかどうかを設定します。 | false | MEDIUM |
camel.component.aws2-s3.customerAlgorithm | CustomerKey が有効になっている場合に使用するカスタマーアルゴリズムを定義します。 | null | MEDIUM |
camel.component.aws2-s3.customerKeyId | CustomerKey が有効になっている場合に使用するカスタマーキーの ID を定義します。 | null | MEDIUM |
camel.component.aws2-s3.customerKeyMD5 | CustomerKey が有効になっている場合に使用するカスタマーキーの MD5 を定義します。 | null | MEDIUM |
camel.component.aws2-s3.deleteAfterWrite | S3 ファイルのアップロード後にファイルオブジェクトを削除します。 | false | MEDIUM |
camel.component.aws2-s3.keyName | endpoint パラメーター経由でバケットの要素のキー名を設定します。 | null | MEDIUM |
camel.component.aws2-s3.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.aws2-s3.multiPartUpload | true の場合、Camel はマルチパート形式のファイルをアップロードし、パートサイズは partSize のオプションによって決定されます。 | false | MEDIUM |
camel.component.aws2-s3.operation | ユーザーがアップロードのみを実行したくない場合に実行する操作。[copyObject]、[listObjects]、[deleteObject]、[deleteBucket]、[listBuckets]、[getObject]、[getObjectRange] のいずれか。 | null | MEDIUM |
camel.component.aws2-s3.partSize | マルチパートのアップロードで使用される partSize を設定します。デフォルトのサイズは 25M です。 | 26214400L | MEDIUM |
camel.component.aws2-s3.storageClass | com.amazonaws.services.s3.model.PutObjectRequest リクエストに設定するストレージクラス。 | null | MEDIUM |
camel.component.aws2-s3.awsKMSKeyId | KMS が有効になっている場合に使用する KMS キーの ID を定義します。 | null | MEDIUM |
camel.component.aws2-s3.useAwsKMS | KMS を使用する必要があるかどうかを定義します。 | false | MEDIUM |
camel.component.aws2-s3.useCustomerKey | カスタマーキーを使用する必要があるかどうかを定義します。 | false | MEDIUM |
camel.component.aws2-s3.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.aws2-s3.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.component.aws2-s3.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel-aws2-s3 シンクコネクターは、以下に示すそのまま使えるコンバーターを 1 つサポートします。
org.apache.camel.kafkaconnector.aws2s3.converters.S3ObjectConverter
camel-aws2-s3 シンクコネクターにはそのまま使える transforms がありません。
camel-aws2-s3 シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.4. camel-aws2-s3-kafka-connector のソース設定
camel-aws2-s3-kafka-connector をソースとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-aws2-s3-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのソースコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.aws2s3.CamelAws2s3SourceConnector
camel-aws2-s3 ソースコネクターは、以下に示す 85 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.source.path.bucketNameOrArn | バケット名または ARN。 | null | HIGH |
camel.source.endpoint.amazonS3Client | レジストリーの com.amazonaws.services.s3.AmazonS3 への参照。 | null | MEDIUM |
camel.source.endpoint.autoCreateBucket | S3 バケット bucketName の自動作成の設定。moveAfterRead オプションが有効になっている場合も適用され、destinationBucket が存在しない場合は作成されます。 | true | MEDIUM |
camel.source.endpoint.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.source.endpoint.overrideEndpoint | エンドポイントをオーバーライドする必要性を設定します。このオプションは uriEndpointOverride オプションと併用する必要があります。 | false | MEDIUM |
camel.source.endpoint.pojoRequest | POJO リクエストをボディーとして使用するかどうか。 | false | MEDIUM |
camel.source.endpoint.policy | com.amazonaws.services.s3.AmazonS3#setBucketPolicy() メソッドに設定されるこのキューのポリシー。 | null | MEDIUM |
camel.source.endpoint.proxyHost | SQS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.source.endpoint.proxyPort | クライアント定義内で使用されるプロキシーポートを指定します。 | null | MEDIUM |
camel.source.endpoint.proxyProtocol | S3 クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.source.endpoint.region | S3 クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.source.endpoint.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.source.endpoint.uriEndpointOverride | オーバーライドする URI エンドポイントを設定します。このオプションは overrideEndpoint オプションと併用する必要があります。 | null | MEDIUM |
camel.source.endpoint.useIAMCredentials | S3 クライアントが EC2 インスタンスでクレデンシャルをロードすることを期待すべきか、または静的クレデンシャルが渡されることを期待すべきかどうかを設定します。 | false | MEDIUM |
camel.source.endpoint.customerAlgorithm | CustomerKey が有効になっている場合に使用するカスタマーアルゴリズムを定義します。 | null | MEDIUM |
camel.source.endpoint.customerKeyId | CustomerKey が有効になっている場合に使用するカスタマーキーの ID を定義します。 | null | MEDIUM |
camel.source.endpoint.customerKeyMD5 | CustomerKey が有効になっている場合に使用するカスタマーキーの MD5 を定義します。 | null | MEDIUM |
camel.source.endpoint.bridgeErrorHandler | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | MEDIUM |
camel.source.endpoint.deleteAfterRead | 取得後に S3 からオブジェクトを削除します。削除は、エクスチェンジがコミットされた場合にのみ実行されます。ロールバックが発生すると、オブジェクトは削除されません。このオプションが false の場合、同じオブジェクトがポーリングで繰り返し取得されます。そのため、ルートで Idempotent Consumer EIP を使用して重複を除外する必要があります。AWS2S3Constants#BUCKET_NAME および AWS2S3Constants#KEY ヘッダーを使用してフィルターすることも、AWS2S3Constants#KEY ヘッダーのみを使用してフィルターすることもできます。 | true | MEDIUM |
camel.source.endpoint.delimiter | 対象のオブジェクトのみを消費するために com.amazonaws.services.s3.model.ListObjectsRequest で使用される区切り文字。 | null | MEDIUM |
camel.source.endpoint.destinationBucket | moveAfterRead が true に設定されている場合にオブジェクトを移動する必要がある宛先バケットを定義します。 | null | MEDIUM |
camel.source.endpoint.destinationBucketPrefix | オブジェクトを移動する必要があり、moveAfterRead が true に設定されている場合に使用する宛先バケットプレフィックスを定義します。 | null | MEDIUM |
camel.source.endpoint.destinationBucketSuffix | オブジェクトを移動する必要があり、moveAfterRead が true に設定されている場合に使用する宛先バケットサフィックスを定義します。 | null | MEDIUM |
camel.source.endpoint.fileName | 指定のファイル名を持つバケットからオブジェクトを取得します。 | null | MEDIUM |
camel.source.endpoint.includeBody | true の場合、エクスチェンジボディーはファイルの内容へのストリームに設定されます。false の場合、ヘッダーは S3 オブジェクトメタデータで設定されますが、ボディーは null になります。このオプションは、autocloseBody オプションと密接に関係します。includeBody を true に設定し、autocloseBody を false に設定すると、S3Object ストリームを閉じるのは呼び出し元によって異なります。autocloseBody を true に設定すると、S3Object ストリームが自動的に閉じられます。 | true | MEDIUM |
camel.source.endpoint.includeFolders | true の場合、フォルダー/ディレクトリーが消費されます。false の場合は無視され、エクスチェンジは作成されません。 | true | MEDIUM |
camel.source.endpoint.maxConnections | S3 クライアント設定の maxConnections パラメーターを設定します。 | 60 | MEDIUM |
camel.source.endpoint.maxMessagesPerPoll | 各ポーリングのポーリング制限としてメッセージの最大数を取得します。各ポーリングのポーリング制限としてメッセージの最大数を取得します。デフォルト値は 10 です。0 または負の値を使用すると、無制限として設定されます。 | 10 | MEDIUM |
camel.source.endpoint.moveAfterRead | オブジェクトの取得後に S3 バケットから別のバケットに移動します。操作を実行するには、destinationBucket オプションを設定する必要があります。copy bucket 操作は、エクスチェンジがコミットされた場合にのみ実行されます。ロールバックが発生した場合、オブジェクトは移動しません。 | false | MEDIUM |
camel.source.endpoint.prefix | 対象のオブジェクトのみを消費するために com.amazonaws.services.s3.model.ListObjectsRequest で使用されるプレフィックス。 | null | MEDIUM |
camel.source.endpoint.sendEmptyMessageWhenIdle | ポーリングコンシューマーがファイルをポーリングしなかった場合、このオプションを有効にして、代わりに空のメッセージ (ボディーなし) を送信できます。 | false | MEDIUM |
camel.source.endpoint.autocloseBody | このオプションが true で includeBody が true の場合、エクスチェンジの完了時に S3Object.close()メソッドが呼び出されます。このオプションは includeBody オプションと密接に関係しています。includeBody を true に設定し、autocloseBody を false に設定すると、S3Object ストリームを閉じるのは呼び出し元によって異なります。autocloseBody を true に設定すると、S3Object ストリームが自動的に閉じられます。 | true | MEDIUM |
camel.source.endpoint.exceptionHandler | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | null | MEDIUM |
camel.source.endpoint.exchangePattern | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。[InOnly]、[InOut]、[InOptionalOut] のいずれか。 | null | MEDIUM |
camel.source.endpoint.pollStrategy | プラグ可能な org.apache.camel.PollingConsumerPollingStrategy を使用すると、エクスチェンジが作成され、Camel でルーティングされる前に、通常はポーリング操作中に発生するエラー処理を制御するカスタム実装が提供できます。 | null | MEDIUM |
camel.source.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.source.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.source.endpoint.backoffErrorThreshold | backoffMultipler が開始する前に発生する必要がある後続のエラーポーリング (エラーによって失敗した) の数。 | null | MEDIUM |
camel.source.endpoint.backoffIdleThreshold | backoffMultipler が開始する前に発生する必要がある後続のアイドルポーリングの数。 | null | MEDIUM |
camel.source.endpoint.backoffMultiplier | 後続のアイドル状態/エラーが連続して発生した場合に、スケジュールされたポーリングコンシューマーのバックオフを許可します。乗数は、実際に次の試行が行われる前にスキップされるポーリングの数です。このオプションが使用されている場合は、backoffIdleThreshold や backoffErrorThreshold も設定する必要があります。 | null | MEDIUM |
camel.source.endpoint.delay | 次のポーリングまでの時間 (ミリ秒単位)。 | 500L | MEDIUM |
camel.source.endpoint.greedy | greedy が有効で、以前の実行が 1 つ以上のメッセージをポーリングした場合、ScheduledPollConsumer は即座に再度実行されます。 | false | MEDIUM |
camel.source.endpoint.initialDelay | 最初のポーリングが開始されるまでの時間 (ミリ秒単位)。 | 1000L | MEDIUM |
camel.source.endpoint.repeatCount | 実行の最大数を指定します。そのため、これを 1 に設定するとスケジューラーは 1 度だけ実行されます。これを 5 に設定した場合、5 回だけ実行されます。0 または負の値を設定すると、無制限に実行されます。 | 0L | MEDIUM |
camel.source.endpoint.runLoggingLevel | コンシューマーはポーリング時に開始/完了のログ行を記録します。このオプションを使用すると、ログレベルを設定できます。[TRACE]、[DEBUG]、[INFO]、[WARN]、[ERROR]、[OFF] のいずれか。 | "TRACE" | MEDIUM |
camel.source.endpoint.scheduledExecutorService | コンシューマーに使用するカスタム/共有スレッドプールを設定できます。デフォルトでは、各コンシューマーに独自の単一スレッドのスレッドプールがあります。 | null | MEDIUM |
camel.source.endpoint.scheduler | camel-spring または camel-quartz コンポーネントから cron スケジューラーを使用します。スケジューラーにビルドされた値 spring または quartz を使用。 | "none" | MEDIUM |
camel.source.endpoint.schedulerProperties | カスタムスケジューラーまたは Quartz や Spring ベースのスケジューラーを使用する場合に、追加のプロパティーを設定します。 | null | MEDIUM |
camel.source.endpoint.startScheduler | スケジューラーを自動起動するかどうか。 | true | MEDIUM |
camel.source.endpoint.timeUnit | initialDelay および delay オプションの時間単位。[NANOSECONDS]、[MICROSECONDS]、[MILLISECONDS]、[SECONDS]、[MINUTES]、[HOURS]、[DAYS] のいずれか。 | "MILLISECONDS" | MEDIUM |
camel.source.endpoint.useFixedDelay | 固定遅延または固定レートを使用するかどうかを制御します。詳細は、JDK の ScheduledExecutorService を参照してください。 | true | MEDIUM |
camel.source.endpoint.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.source.endpoint.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel.component.aws2-s3.amazonS3Client | レジストリーの com.amazonaws.services.s3.AmazonS3 への参照。 | null | MEDIUM |
camel.component.aws2-s3.autoCreateBucket | S3 バケット bucketName の自動作成の設定。moveAfterRead オプションが有効になっている場合も適用され、destinationBucket が存在しない場合は作成されます。 | true | MEDIUM |
camel.component.aws2-s3.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.component.aws2-s3.configuration | コンポーネントの設定。 | null | MEDIUM |
camel.component.aws2-s3.overrideEndpoint | エンドポイントをオーバーライドする必要性を設定します。このオプションは uriEndpointOverride オプションと併用する必要があります。 | false | MEDIUM |
camel.component.aws2-s3.pojoRequest | POJO リクエストをボディーとして使用するかどうか。 | false | MEDIUM |
camel.component.aws2-s3.policy | com.amazonaws.services.s3.AmazonS3#setBucketPolicy() メソッドに設定されるこのキューのポリシー。 | null | MEDIUM |
camel.component.aws2-s3.proxyHost | SQS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.component.aws2-s3.proxyPort | クライアント定義内で使用されるプロキシーポートを指定します。 | null | MEDIUM |
camel.component.aws2-s3.proxyProtocol | S3 クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.component.aws2-s3.region | S3 クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.component.aws2-s3.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.component.aws2-s3.uriEndpointOverride | オーバーライドする URI エンドポイントを設定します。このオプションは overrideEndpoint オプションと併用する必要があります。 | null | MEDIUM |
camel.component.aws2-s3.useIAMCredentials | S3 クライアントが EC2 インスタンスでクレデンシャルをロードすることを期待すべきか、または静的クレデンシャルが渡されることを期待すべきかどうかを設定します。 | false | MEDIUM |
camel.component.aws2-s3.customerAlgorithm | CustomerKey が有効になっている場合に使用するカスタマーアルゴリズムを定義します。 | null | MEDIUM |
camel.component.aws2-s3.customerKeyId | CustomerKey が有効になっている場合に使用するカスタマーキーの ID を定義します。 | null | MEDIUM |
camel.component.aws2-s3.customerKeyMD5 | CustomerKey が有効になっている場合に使用するカスタマーキーの MD5 を定義します。 | null | MEDIUM |
camel.component.aws2-s3.bridgeErrorHandler | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | MEDIUM |
camel.component.aws2-s3.deleteAfterRead | 取得後に S3 からオブジェクトを削除します。削除は、エクスチェンジがコミットされた場合にのみ実行されます。ロールバックが発生すると、オブジェクトは削除されません。このオプションが false の場合、同じオブジェクトがポーリングで繰り返し取得されます。そのため、ルートで Idempotent Consumer EIP を使用して重複を除外する必要があります。AWS2S3Constants#BUCKET_NAME および AWS2S3Constants#KEY ヘッダーを使用してフィルターすることも、AWS2S3Constants#KEY ヘッダーのみを使用してフィルターすることもできます。 | true | MEDIUM |
camel.component.aws2-s3.delimiter | 対象のオブジェクトのみを消費するために com.amazonaws.services.s3.model.ListObjectsRequest で使用される区切り文字。 | null | MEDIUM |
camel.component.aws2-s3.destinationBucket | moveAfterRead が true に設定されている場合にオブジェクトを移動する必要がある宛先バケットを定義します。 | null | MEDIUM |
camel.component.aws2-s3.destinationBucketPrefix | オブジェクトを移動する必要があり、moveAfterRead が true に設定されている場合に使用する宛先バケットプレフィックスを定義します。 | null | MEDIUM |
camel.component.aws2-s3.destinationBucketSuffix | オブジェクトを移動する必要があり、moveAfterRead が true に設定されている場合に使用する宛先バケットサフィックスを定義します。 | null | MEDIUM |
camel.component.aws2-s3.fileName | 指定のファイル名を持つバケットからオブジェクトを取得します。 | null | MEDIUM |
camel.component.aws2-s3.includeBody | true の場合、エクスチェンジボディーはファイルの内容へのストリームに設定されます。false の場合、ヘッダーは S3 オブジェクトメタデータで設定されますが、ボディーは null になります。このオプションは、autocloseBody オプションと密接に関係します。includeBody を true に設定し、autocloseBody を false に設定すると、S3Object ストリームを閉じるのは呼び出し元によって異なります。autocloseBody を true に設定すると、S3Object ストリームが自動的に閉じられます。 | true | MEDIUM |
camel.component.aws2-s3.includeFolders | true の場合、フォルダー/ディレクトリーが消費されます。false の場合は無視され、エクスチェンジは作成されません。 | true | MEDIUM |
camel.component.aws2-s3.moveAfterRead | オブジェクトの取得後に S3 バケットから別のバケットに移動します。操作を実行するには、destinationBucket オプションを設定する必要があります。copy bucket 操作は、エクスチェンジがコミットされた場合にのみ実行されます。ロールバックが発生した場合、オブジェクトは移動しません。 | false | MEDIUM |
camel.component.aws2-s3.prefix | 対象のオブジェクトのみを消費するために com.amazonaws.services.s3.model.ListObjectsRequest で使用されるプレフィックス。 | null | MEDIUM |
camel.component.aws2-s3.autocloseBody | このオプションが true で includeBody が true の場合、エクスチェンジの完了時に S3Object.close()メソッドが呼び出されます。このオプションは includeBody オプションと密接に関係しています。includeBody を true に設定し、autocloseBody を false に設定すると、S3Object ストリームを閉じるのは呼び出し元によって異なります。autocloseBody を true に設定すると、S3Object ストリームが自動的に閉じられます。 | true | MEDIUM |
camel.component.aws2-s3.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.aws2-s3.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.component.aws2-s3.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel-aws2-s3 シンクコネクターは、以下に示すそのまま使えるコンバーターを 1 つサポートします。
org.apache.camel.kafkaconnector.aws2s3.converters.S3ObjectConverter
camel-aws2-s3 シンクコネクターにはそのまま使える transforms がありません。
camel-aws2-s3 シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.5. camel-aws2-sns-kafka-connector のシンク設定
camel-aws2-sns-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-aws2-sns-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.aws2sns.CamelAws2snsSinkConnector
camel-aws2-sns シンクコネクターは、以下に示す 42 オプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.topicNameOrArn | TOPIC 名または ARN。 | null | HIGH |
camel.sink.endpoint.amazonSNSClient | AmazonSNS をクライアントとして使用します。 | null | MEDIUM |
camel.sink.endpoint.autoCreateTopic | トピックの自動作成を設定します。 | true | MEDIUM |
camel.sink.endpoint.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.sink.endpoint.headerFilterStrategy | カスタムの HeaderFilterStrategy を使用して、ヘッダーから Camel または Camel からヘッダーにマッピングします。 | null | MEDIUM |
camel.sink.endpoint.kmsMasterKeyId | Amazon SNS の AWS 管理のカスタマーマスターキー (CMK) の ID またはカスタム CMK の ID。 | null | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.messageStructure | json などの使用するメッセージ構造。 | null | MEDIUM |
camel.sink.endpoint.policy | このキューのポリシー | null | MEDIUM |
camel.sink.endpoint.proxyHost | SNS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.sink.endpoint.proxyPort | SNS クライアントをインスタンス化するときにプロキシーポートを定義します。 | null | MEDIUM |
camel.sink.endpoint.proxyProtocol | SNS クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.sink.endpoint.queueUrl | サブスクライブする queueUrl。 | null | MEDIUM |
camel.sink.endpoint.region | SNS クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.sink.endpoint.serverSideEncryptionEnabled | サーバー側の暗号化がトピックで有効であるかどうかを定義します。 | false | MEDIUM |
camel.sink.endpoint.subject | メッセージヘッダー 'CamelAwsSnsSubject' が存在しない場合に使用されるサブジェクト。 | null | MEDIUM |
camel.sink.endpoint.subscribeSNStoSQS | SNS トピックと SQS との間のサブスクリプションを完了する必要があるかどうかを定義します。 | false | MEDIUM |
camel.sink.endpoint.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.sink.endpoint.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.sink.endpoint.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel.component.aws2-sns.amazonSNSClient | AmazonSNS をクライアントとして使用します。 | null | MEDIUM |
camel.component.aws2-sns.autoCreateTopic | トピックの自動作成を設定します。 | true | MEDIUM |
camel.component.aws2-sns.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.component.aws2-sns.configuration | コンポーネントの設定 | null | MEDIUM |
camel.component.aws2-sns.kmsMasterKeyId | Amazon SNS の AWS 管理のカスタマーマスターキー (CMK) の ID またはカスタム CMK の ID。 | null | MEDIUM |
camel.component.aws2-sns.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.aws2-sns.messageStructure | json などの使用するメッセージ構造。 | null | MEDIUM |
camel.component.aws2-sns.policy | このキューのポリシー | null | MEDIUM |
camel.component.aws2-sns.proxyHost | SNS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.component.aws2-sns.proxyPort | SNS クライアントをインスタンス化するときにプロキシーポートを定義します。 | null | MEDIUM |
camel.component.aws2-sns.proxyProtocol | SNS クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.component.aws2-sns.queueUrl | サブスクライブする queueUrl。 | null | MEDIUM |
camel.component.aws2-sns.region | SNS クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.component.aws2-sns.serverSideEncryption Enabled | サーバー側の暗号化がトピックで有効であるかどうかを定義します。 | false | MEDIUM |
camel.component.aws2-sns.subject | メッセージヘッダー 'CamelAwsSnsSubject' が存在しない場合に使用されるサブジェクト。 | null | MEDIUM |
camel.component.aws2-sns.subscribeSNStoSQS | SNS トピックと SQS との間のサブスクリプションを完了する必要があるかどうかを定義します。 | false | MEDIUM |
camel.component.aws2-sns.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.component.aws2-sns.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.aws2-sns.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.component.aws2-sns.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel-aws2-sns シンクコネクターには、そのまま使えるコンバーターがありません。
camel-aws2-sns シンクコネクターには、そのまま使える transforms がありません。
camel-aws2-sns シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.6. camel-aws2-sqs-kafka-connector のシンク設定
camel-aws2-sqs-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-aws2-sqs-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.aws2sqs.CamelAws2sqsSinkConnector
camel-aws2-sqs シンクコネクターは、以下に示す 56 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.queueNameOrArn | キュー名または ARN。 | null | HIGH |
camel.sink.endpoint.amazonAWSHost | Amazon AWS クラウドのホスト名。 | "amazonaws.com" | MEDIUM |
camel.sink.endpoint.amazonSQSClient | AmazonSQS をクライアントとして使用します。 | null | MEDIUM |
camel.sink.endpoint.autoCreateQueue | キューの自動作成の設定。 | true | MEDIUM |
camel.sink.endpoint.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.sink.endpoint.headerFilterStrategy | カスタムの HeaderFilterStrategy を使用して、ヘッダーから Camel または Camel からヘッダーにマッピングします。 | null | MEDIUM |
camel.sink.endpoint.protocol | SQS との通信に使用される基礎となるプロトコル。 | "https" | MEDIUM |
camel.sink.endpoint.proxyProtocol | SQS クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.sink.endpoint.queueOwnerAWSAccountId | 異なるアカウント所有者でキューを接続する必要がある場合は、キュー所有者の aws アカウント ID を指定します。 | null | MEDIUM |
camel.sink.endpoint.region | SQS クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.sink.endpoint.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.sink.endpoint.delaySeconds | 数秒間メッセージの送信を遅延します。 | null | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.messageDeduplicationIdStrategy | FIFOキューの場合のみ。メッセージに messageDeduplicationId を設定するストラテジー。useExchangeId または useContentBasedDeduplication のいずれかをオプションとして使用できます。useContentBasedDeduplication オプションでは、メッセージに messageDeduplicationId が設定されません。 [useExchangeId] または [useContentBasedDeduplication] のいずれか。 | "useExchangeId" | MEDIUM |
camel.sink.endpoint.messageGroupIdStrategy | FIFOキューの場合のみ。メッセージに messageGroupId を設定するストラテジー。useConstant、useExchangeId、usePropertyValue のいずれかをオプションとして使用できます。usePropertyValue オプションでは、CamelAwsMessageGroupId プロパティーの値が使用されます。[useConstant]、[useExchangeId]、[usePropertyValue] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.operation | ユーザーがメッセージ 1 つだけを送信したくない場合に実行する操作。[sendBatchMessage]、[deleteMessage]、[listQueues]、[purgeQueue] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.delayQueue | delaySeconds オプションをキューまたは単一のメッセージに適用するかどうかを定義します。 | false | MEDIUM |
camel.sink.endpoint.queueUrl | queueUrl を明示的に定義します。queueUrl に影響を与えるその他のパラメーターはすべて無視されます。このパラメーターは、テストのために SQS の仮実装 (モック) に接続すること目的としています。 | null | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.sink.endpoint.proxyHost | SQS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.sink.endpoint.proxyPort | SQS クライアントをインスタンス化するときにプロキシーポートを定義します。 | null | MEDIUM |
camel.sink.endpoint.maximumMessageSize | SQS メッセージに含まれる最大MessageSize(バイト単位)。 | null | MEDIUM |
camel.sink.endpoint.messageRetentionPeriod | messageRetentionPeriod(秒単位)は、このキューの SQS によってメッセージが保持されます。 | null | MEDIUM |
camel.sink.endpoint.policy | このキューのポリシー | null | MEDIUM |
camel.sink.endpoint.receiveMessageWaitTimeSeconds | 要求で WaitTimeSeconds を指定しない場合、キュー属性 ReceiveMessageWaitTimeSeconds を使用して待機する期間を決定します。 | null | MEDIUM |
camel.sink.endpoint.redrivePolicy | DeadLetter キューに送信するポリシーを指定します。詳細は、Amazon ドキュメント を参照してください。 | null | MEDIUM |
camel.sink.endpoint.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.sink.endpoint.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel.component.aws2-sqs.amazonAWSHost | Amazon AWS クラウドのホスト名。 | "amazonaws.com" | MEDIUM |
camel.component.aws2-sqs.amazonSQSClient | AmazonSQS をクライアントとして使用します。 | null | MEDIUM |
camel.component.aws2-sqs.autoCreateQueue | キューの自動作成の設定。 | true | MEDIUM |
camel.component.aws2-sqs.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.component.aws2-sqs.configuration | AWS SQS のデフォルト設定 | null | MEDIUM |
camel.component.aws2-sqs.protocol | SQS との通信に使用される基礎となるプロトコル。 | "https" | MEDIUM |
camel.component.aws2-sqs.proxyProtocol | SQS クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.component.aws2-sqs.queueOwnerAWSAccountId | 異なるアカウント所有者でキューを接続する必要がある場合は、キュー所有者の aws アカウント ID を指定します。 | null | MEDIUM |
camel.component.aws2-sqs.region | SQS クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.component.aws2-sqs.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.component.aws2-sqs.delaySeconds | 数秒間メッセージの送信を遅延します。 | null | MEDIUM |
camel.component.aws2-sqs.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.aws2-sqs.messageDeduplicationId Strategy | FIFOキューの場合のみ。メッセージに messageDeduplicationId を設定するストラテジー。useExchangeId または useContentBasedDeduplication のいずれかをオプションとして使用できます。useContentBasedDeduplication オプションでは、メッセージに messageDeduplicationId が設定されません。 [useExchangeId] または [useContentBasedDeduplication] のいずれか。 | "useExchangeId" | MEDIUM |
camel.component.aws2-sqs.messageGroupIdStrategy | FIFOキューの場合のみ。メッセージに messageGroupId を設定するストラテジー。useConstant、useExchangeId、usePropertyValue のいずれかをオプションとして使用できます。usePropertyValue オプションでは、CamelAwsMessageGroupId プロパティーの値が使用されます。[useConstant]、[useExchangeId]、[usePropertyValue] のいずれか。 | null | MEDIUM |
camel.component.aws2-sqs.operation | ユーザーがメッセージ 1 つだけを送信したくない場合に実行する操作。[sendBatchMessage]、[deleteMessage]、[listQueues]、[purgeQueue] のいずれか。 | null | MEDIUM |
camel.component.aws2-sqs.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.aws2-sqs.delayQueue | delaySeconds オプションをキューまたは単一のメッセージに適用するかどうかを定義します。 | false | MEDIUM |
camel.component.aws2-sqs.queueUrl | queueUrl を明示的に定義します。queueUrl に影響を与えるその他のパラメーターはすべて無視されます。このパラメーターは、テストのために SQS の仮実装 (モック) に接続すること目的としています。 | null | MEDIUM |
camel.component.aws2-sqs.proxyHost | SQS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.component.aws2-sqs.proxyPort | SQS クライアントをインスタンス化するときにプロキシーポートを定義します。 | null | MEDIUM |
camel.component.aws2-sqs.maximumMessageSize | SQS メッセージに含まれる最大MessageSize(バイト単位)。 | null | MEDIUM |
camel.component.aws2-sqs.messageRetentionPeriod | messageRetentionPeriod(秒単位)は、このキューの SQS によってメッセージが保持されます。 | null | MEDIUM |
camel.component.aws2-sqs.policy | このキューのポリシー | null | MEDIUM |
camel.component.aws2-sqs.receiveMessageWaitTime Seconds | 要求で WaitTimeSeconds を指定しない場合、キュー属性 ReceiveMessageWaitTimeSeconds を使用して待機する期間を決定します。 | null | MEDIUM |
camel.component.aws2-sqs.redrivePolicy | DeadLetter キューに送信するポリシーを指定します。詳細は、Amazon ドキュメント を参照してください。 | null | MEDIUM |
camel.component.aws2-sqs.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.component.aws2-sqs.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel-aws2-sqs シンクコネクターには、そのまま使えるコンバーターがありません。
camel-aws2-sqs シンクコネクターには、そのまま使える transforms がありません。
camel-aws2-sqs シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.7. camel-aws2-sqs-kafka-connector source configuration
camel-aws2-sqs-kafka-connector をソースとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-aws2-sqs-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのソースコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.aws2sqs.CamelAws2sqsSourceConnector
camel-aws2-sqs ソースコネクターは、以下に示す 91 オプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.source.path.queueNameOrArn | キュー名または ARN。 | null | HIGH |
camel.source.endpoint.amazonAWSHost | Amazon AWS クラウドのホスト名。 | "amazonaws.com" | MEDIUM |
camel.source.endpoint.amazonSQSClient | AmazonSQS をクライアントとして使用します。 | null | MEDIUM |
camel.source.endpoint.autoCreateQueue | キューの自動作成の設定。 | true | MEDIUM |
camel.source.endpoint.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.source.endpoint.headerFilterStrategy | カスタムの HeaderFilterStrategy を使用して、ヘッダーから Camel または Camel からヘッダーにマッピングします。 | null | MEDIUM |
camel.source.endpoint.protocol | SQS との通信に使用される基礎となるプロトコル。 | "https" | MEDIUM |
camel.source.endpoint.proxyProtocol | SQS クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.source.endpoint.queueOwnerAWSAccountId | 異なるアカウント所有者でキューを接続する必要がある場合は、キュー所有者の aws アカウント ID を指定します。 | null | MEDIUM |
camel.source.endpoint.region | SQS クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.source.endpoint.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.source.endpoint.attributeNames | 消費時に受け取る属性名のリスト。複数の名前はコンマで区切ることができます。 | null | MEDIUM |
camel.source.endpoint.bridgeErrorHandler | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | MEDIUM |
camel.source.endpoint.concurrentConsumers | 複数のスレッドを使用して sqs キューをポーリングしてスループットを高めることが可能 | 1 | MEDIUM |
camel.source.endpoint.defaultVisibilityTimeout | デフォルトの可視性タイムアウト(秒単位) | null | MEDIUM |
camel.source.endpoint.deleteAfterRead | 読み取り後に SQS からメッセージを削除します。 | true | MEDIUM |
camel.source.endpoint.deleteIfFiltered | エクスチェンジがフィルターを経由できない場合は DeleteMessage を SQS キューに送信するかどうか。'false' とエクスチェンジがルートの Camel フィルターアップストリームを介して行われない場合は、DeleteMessage を送信しないでください。 | true | MEDIUM |
camel.source.endpoint.extendMessageVisibility | 有効にすると、スケジュールされたバックグラウンドタスクでは SQS のメッセージの表示が維持されます。これは、メッセージの処理に長い時間がかかる場合に必要です。true に設定した場合は、defaultVisibilityTimeout を設定する必要があります。詳細は、Amazon ドキュメント を参照してください。 | false | MEDIUM |
camel.source.endpoint.kmsDataKeyReusePeriodSeconds | Amazon SQS がデータキーを再利用して、AWS KMS を再度呼び出す前にメッセージを暗号化または復号化できる期間(秒単位)。60 秒から 86,400 秒(24 時間)までの秒数を表します。デフォルト: 300(5 分) | null | MEDIUM |
camel.source.endpoint.kmsMasterKeyId | Amazon SQS の AWS 管理のカスタマーマスターキー(CMK)の ID またはカスタム CMK の ID。 | null | MEDIUM |
camel.source.endpoint.maxMessagesPerPoll | 各ポーリングのポーリング制限としてメッセージの最大数を取得します。デフォルトは無制限ですが、0 または負の値を使用して無制限として無効にします。 | null | MEDIUM |
camel.source.endpoint.messageAttributeNames | 消費時に受信するメッセージ属性名のリスト。複数の名前はコンマで区切ることができます。 | null | MEDIUM |
camel.source.endpoint.sendEmptyMessageWhenIdle | ポーリングコンシューマーがファイルをポーリングしなかった場合、このオプションを有効にして、代わりに空のメッセージ (ボディーなし) を送信できます。 | false | MEDIUM |
camel.source.endpoint.serverSideEncryptionEnabled | サーバー側の暗号化がキューで有効になっているかどうかを定義します。 | false | MEDIUM |
camel.source.endpoint.visibilityTimeout | com.amazonaws.services.sqs.model.SetQueueAttributesRequest に設定される ReceiveMessage リクエストによって取得された後、受信したメッセージが後続の取得リクエストから表示されない期間(秒単位)。これは、defaultVisibilityTimeout とは異なる場合にのみ有効です。キューの可視性のタイムアウト属性を永続的に変更します。 | null | MEDIUM |
camel.source.endpoint.waitTimeSeconds | ReceiveMessage アクション呼び出しが応答に含めるキューにメッセージが待機する期間(0 から 20)。 | null | MEDIUM |
camel.source.endpoint.exceptionHandler | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | null | MEDIUM |
camel.source.endpoint.exchangePattern | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。[InOnly]、[InOut]、[InOptionalOut] のいずれか。 | null | MEDIUM |
camel.source.endpoint.pollStrategy | プラグ可能な org.apache.camel.PollingConsumerPollingStrategy を使用すると、エクスチェンジが作成され、Camel でルーティングされる前に、通常はポーリング操作中に発生するエラー処理を制御するカスタム実装が提供できます。 | null | MEDIUM |
camel.source.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.source.endpoint.delayQueue | delaySeconds オプションをキューまたは単一のメッセージに適用するかどうかを定義します。 | false | MEDIUM |
camel.source.endpoint.queueUrl | queueUrl を明示的に定義します。queueUrl に影響を与えるその他のパラメーターはすべて無視されます。このパラメーターは、テストのために SQS の仮実装 (モック) に接続すること目的としています。 | null | MEDIUM |
camel.source.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.source.endpoint.proxyHost | SQS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.source.endpoint.proxyPort | SQS クライアントをインスタンス化するときにプロキシーポートを定義します。 | null | MEDIUM |
camel.source.endpoint.maximumMessageSize | SQS メッセージに含まれる最大MessageSize(バイト単位)。 | null | MEDIUM |
camel.source.endpoint.messageRetentionPeriod | messageRetentionPeriod(秒単位)は、このキューの SQS によってメッセージが保持されます。 | null | MEDIUM |
camel.source.endpoint.policy | このキューのポリシー | null | MEDIUM |
camel.source.endpoint.receiveMessageWaitTime Seconds | 要求で WaitTimeSeconds を指定しない場合、キュー属性 ReceiveMessageWaitTimeSeconds を使用して待機する期間を決定します。 | null | MEDIUM |
camel.source.endpoint.redrivePolicy | DeadLetter キューに送信するポリシーを指定します。詳細は、Amazon ドキュメント を参照してください。 | null | MEDIUM |
camel.source.endpoint.backoffErrorThreshold | backoffMultipler が開始する前に発生する必要がある後続のエラーポーリング (エラーによって失敗した) の数。 | null | MEDIUM |
camel.source.endpoint.backoffIdleThreshold | backoffMultipler が開始する前に発生する必要がある後続のアイドルポーリングの数。 | null | MEDIUM |
camel.source.endpoint.backoffMultiplier | 後続のアイドル状態/エラーが連続して発生した場合に、スケジュールされたポーリングコンシューマーのバックオフを許可します。乗数は、実際に次の試行が行われる前にスキップされるポーリングの数です。このオプションが使用されている場合は、backoffIdleThreshold や backoffErrorThreshold も設定する必要があります。 | null | MEDIUM |
camel.source.endpoint.delay | 次のポーリングまでの時間 (ミリ秒単位)。 | 500L | MEDIUM |
camel.source.endpoint.greedy | greedy が有効で、以前の実行が 1 つ以上のメッセージをポーリングした場合、ScheduledPollConsumer は即座に再度実行されます。 | false | MEDIUM |
camel.source.endpoint.initialDelay | 最初のポーリングが開始されるまでの時間 (ミリ秒単位)。 | 1000L | MEDIUM |
camel.source.endpoint.repeatCount | 実行の最大数を指定します。そのため、これを 1 に設定するとスケジューラーは 1 度だけ実行されます。これを 5 に設定した場合、5 回だけ実行されます。0 または負の値を設定すると、無制限に実行されます。 | 0L | MEDIUM |
camel.source.endpoint.runLoggingLevel | コンシューマーはポーリング時に開始/完了のログ行を記録します。このオプションを使用すると、ログレベルを設定できます。[TRACE]、[DEBUG]、[INFO]、[WARN]、[ERROR]、[OFF] のいずれか。 | "TRACE" | MEDIUM |
camel.source.endpoint.scheduledExecutorService | コンシューマーに使用するカスタム/共有スレッドプールを設定できます。デフォルトでは、各コンシューマーに独自の単一スレッドのスレッドプールがあります。 | null | MEDIUM |
camel.source.endpoint.scheduler | camel-spring または camel-quartz コンポーネントから cron スケジューラーを使用します。スケジューラーにビルドされた値 spring または quartz を使用。 | "none" | MEDIUM |
camel.source.endpoint.schedulerProperties | カスタムスケジューラーまたは Quartz や Spring ベースのスケジューラーを使用する場合に、追加のプロパティーを設定します。 | null | MEDIUM |
camel.source.endpoint.startScheduler | スケジューラーを自動起動するかどうか。 | true | MEDIUM |
camel.source.endpoint.timeUnit | initialDelay および delay オプションの時間単位。[NANOSECONDS]、[MICROSECONDS]、[MILLISECONDS]、[SECONDS]、[MINUTES]、[HOURS]、[DAYS] のいずれか。 | "MILLISECONDS" | MEDIUM |
camel.source.endpoint.useFixedDelay | 固定遅延または固定レートを使用するかどうかを制御します。詳細は、JDK の ScheduledExecutorService を参照してください。 | true | MEDIUM |
camel.source.endpoint.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.source.endpoint.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel.component.aws2-sqs.amazonAWSHost | Amazon AWS クラウドのホスト名。 | "amazonaws.com" | MEDIUM |
camel.component.aws2-sqs.amazonSQSClient | AmazonSQS をクライアントとして使用します。 | null | MEDIUM |
camel.component.aws2-sqs.autoCreateQueue | キューの自動作成の設定。 | true | MEDIUM |
camel.component.aws2-sqs.autoDiscoverClient | 自動DiscoverClient メカニズムを設定すること(true の場合)、コンポーネントはレジストリー内でクライアントインスタンスを自動的に検索します。そうでないと、そのチェックはスキップされます。 | true | MEDIUM |
camel.component.aws2-sqs.configuration | AWS SQS のデフォルト設定 | null | MEDIUM |
camel.component.aws2-sqs.protocol | SQS との通信に使用される基礎となるプロトコル。 | "https" | MEDIUM |
camel.component.aws2-sqs.proxyProtocol | SQS クライアントをインスタンス化する際にプロキシープロトコルを定義します。[HTTP] または [HTTPS] のいずれか。 | "HTTPS" | MEDIUM |
camel.component.aws2-sqs.queueOwnerAWSAccountId | 異なるアカウント所有者でキューを接続する必要がある場合は、キュー所有者の aws アカウント ID を指定します。 | null | MEDIUM |
camel.component.aws2-sqs.region | SQS クライアントが機能する必要があるリージョン。このパラメーターを使用する場合、設定には小文字のリージョン名を指定します (例 ap-east-1)。名前 Region.EU_WEST_1.id() を使用する必要があります。 | null | MEDIUM |
camel.component.aws2-sqs.trustAllCertificates | エンドポイントを上書きするときにすべての証明書を信頼する場合。 | false | MEDIUM |
camel.component.aws2-sqs.attributeNames | 消費時に受け取る属性名のリスト。複数の名前はコンマで区切ることができます。 | null | MEDIUM |
camel.component.aws2-sqs.bridgeErrorHandler | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | MEDIUM |
camel.component.aws2-sqs.concurrentConsumers | 複数のスレッドを使用して sqs キューをポーリングしてスループットを高めることが可能 | 1 | MEDIUM |
camel.component.aws2-sqs.defaultVisibilityTimeout | デフォルトの可視性タイムアウト(秒単位) | null | MEDIUM |
camel.component.aws2-sqs.deleteAfterRead | 読み取り後に SQS からメッセージを削除します。 | true | MEDIUM |
camel.component.aws2-sqs.deleteIfFiltered | エクスチェンジがフィルターを経由できない場合は DeleteMessage を SQS キューに送信するかどうか。'false' とエクスチェンジがルートの Camel フィルターアップストリームを介して行われない場合は、DeleteMessage を送信しないでください。 | true | MEDIUM |
camel.component.aws2-sqs.extendMessageVisibility | 有効にすると、スケジュールされたバックグラウンドタスクでは SQS のメッセージの表示が維持されます。これは、メッセージの処理に長い時間がかかる場合に必要です。true に設定した場合は、defaultVisibilityTimeout を設定する必要があります。詳細は、Amazon ドキュメント を参照してください。 | false | MEDIUM |
camel.component.aws2-sqs.kmsDataKeyReusePeriod Seconds | Amazon SQS がデータキーを再利用して、AWS KMS を再度呼び出す前にメッセージを暗号化または復号化できる期間(秒単位)。60 秒から 86,400 秒(24 時間)までの秒数を表します。デフォルト: 300(5 分) | null | MEDIUM |
camel.component.aws2-sqs.kmsMasterKeyId | Amazon SQS の AWS 管理のカスタマーマスターキー(CMK)の ID またはカスタム CMK の ID。 | null | MEDIUM |
camel.component.aws2-sqs.messageAttributeNames | 消費時に受信するメッセージ属性名のリスト。複数の名前はコンマで区切ることができます。 | null | MEDIUM |
camel.component.aws2-sqs.serverSideEncryption Enabled | サーバー側の暗号化がキューで有効になっているかどうかを定義します。 | false | MEDIUM |
camel.component.aws2-sqs.visibilityTimeout | com.amazonaws.services.sqs.model.SetQueueAttributesRequest に設定される ReceiveMessage リクエストによって取得された後、受信したメッセージが後続の取得リクエストから表示されない期間(秒単位)。これは、defaultVisibilityTimeout とは異なる場合にのみ有効です。キューの可視性のタイムアウト属性を永続的に変更します。 | null | MEDIUM |
camel.component.aws2-sqs.waitTimeSeconds | ReceiveMessage アクション呼び出しが応答に含めるキューにメッセージが待機する期間(0 から 20)。 | null | MEDIUM |
camel.component.aws2-sqs.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.aws2-sqs.delayQueue | delaySeconds オプションをキューまたは単一のメッセージに適用するかどうかを定義します。 | false | MEDIUM |
camel.component.aws2-sqs.queueUrl | queueUrl を明示的に定義します。queueUrl に影響を与えるその他のパラメーターはすべて無視されます。このパラメーターは、テストのために SQS の仮実装 (モック) に接続すること目的としています。 | null | MEDIUM |
camel.component.aws2-sqs.proxyHost | SQS クライアントをインスタンス化するときにプロキシーホストを定義します。 | null | MEDIUM |
camel.component.aws2-sqs.proxyPort | SQS クライアントをインスタンス化するときにプロキシーポートを定義します。 | null | MEDIUM |
camel.component.aws2-sqs.maximumMessageSize | SQS メッセージに含まれる最大MessageSize(バイト単位)。 | null | MEDIUM |
camel.component.aws2-sqs.messageRetentionPeriod | messageRetentionPeriod(秒単位)は、このキューの SQS によってメッセージが保持されます。 | null | MEDIUM |
camel.component.aws2-sqs.policy | このキューのポリシー | null | MEDIUM |
camel.component.aws2-sqs.receiveMessageWaitTime Seconds | 要求で WaitTimeSeconds を指定しない場合、キュー属性 ReceiveMessageWaitTimeSeconds を使用して待機する期間を決定します。 | null | MEDIUM |
camel.component.aws2-sqs.redrivePolicy | DeadLetter キューに送信するポリシーを指定します。詳細は、Amazon ドキュメント を参照してください。 | null | MEDIUM |
camel.component.aws2-sqs.accessKey | Amazon AWS Access Key | null | MEDIUM |
camel.component.aws2-sqs.secretKey | Amazon AWS Secret Key | null | MEDIUM |
camel-aws2-sqs シンクコネクターには、そのまま使えるコンバーターがありません。
camel-aws2-sqs シンクコネクターには、そのまま使える transforms がありません。
camel-aws2-sqs シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.8. camel-cql-kafka-connector のシンク設定
camel-cql-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-cql-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.cql.CamelCqlSinkConnector
camel-cql シンクコネクターは、以下に示す 19 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.beanRef | beanRef は bean:id を使用して定義されます。 | null | MEDIUM |
camel.sink.path.hosts | hostname(s)cassansdra server(s)複数のホストはコンマで区切ることができます。 | null | MEDIUM |
camel.sink.path.port | cassansdra サーバーのポート番号 | null | MEDIUM |
camel.sink.path.keyspace | 使用するキースペース | null | MEDIUM |
camel.sink.endpoint.clusterName | Cluster name | null | MEDIUM |
camel.sink.endpoint.consistencyLevel | [ANY] [ONE]、[ONE]、[THREE]、[QUORUM]、[ALL]、[LOCAL_ONE]、[LOCAL_QUORUM]、[EACH_QUORUM]、[SERIAL]、[LOCAL_SERIAL] のいずれかを使用する整合性レベル。 | null | MEDIUM |
camel.sink.endpoint.cql | 実行する CQL クエリー。CamelCqlQuery キーでメッセージヘッダーで上書きできます。 | null | MEDIUM |
camel.sink.endpoint.datacenter | 使用するデータセンター | "datacenter1" | MEDIUM |
camel.sink.endpoint.loadBalancingPolicyClass | 特定の LoadBalancingPolicyClass の使用 | null | MEDIUM |
camel.sink.endpoint.password | セッション認証のパスワード | null | MEDIUM |
camel.sink.endpoint.prepareStatements | PreparedStatements または regular Statements を使用するかどうか | true | MEDIUM |
camel.sink.endpoint.resultSetConversionStrategy | ResultSet をメッセージのボディー ALL、ONE、LIMIT_10、LIMIT_100… に変換するロジックを実装するカスタムクラスを使用するには、以下を実行します。 | null | MEDIUM |
camel.sink.endpoint.session | セッションインスタンスを使用する場合(通常はこのオプションを使用しません)。 | null | MEDIUM |
camel.sink.endpoint.username | セッション認証のユーザー名 | null | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.component.cql.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.cql.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel-cql シンクコネクターには、そのまま使えるコンバーターがありません。
camel-cql シンクコネクターにはそのまま使える変換がありません。
camel-cql シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.9. camel-cql-kafka-connector ソース設定
camel-cql-kafka-connector をソースとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-cql-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのソースコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.cql.CamelCqlSourceConnector
camel-cql ソースコネクターは、以下に示す 37 オプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.source.path.beanRef | beanRef は bean:id を使用して定義されます。 | null | MEDIUM |
camel.source.path.hosts | hostname(s)cassansdra server(s)複数のホストはコンマで区切ることができます。 | null | MEDIUM |
camel.source.path.port | cassansdra サーバーのポート番号 | null | MEDIUM |
camel.source.path.keyspace | 使用するキースペース | null | MEDIUM |
camel.source.endpoint.clusterName | Cluster name | null | MEDIUM |
camel.source.endpoint.consistencyLevel | [ANY] [ONE]、[ONE]、[THREE]、[QUORUM]、[ALL]、[LOCAL_ONE]、[LOCAL_QUORUM]、[EACH_QUORUM]、[SERIAL]、[LOCAL_SERIAL] のいずれかを使用する整合性レベル。 | null | MEDIUM |
camel.source.endpoint.cql | 実行する CQL クエリー。CamelCqlQuery キーでメッセージヘッダーで上書きできます。 | null | MEDIUM |
camel.source.endpoint.datacenter | 使用するデータセンター | "datacenter1" | MEDIUM |
camel.source.endpoint.loadBalancingPolicyClass | 特定の LoadBalancingPolicyClass の使用 | null | MEDIUM |
camel.source.endpoint.password | セッション認証のパスワード | null | MEDIUM |
camel.source.endpoint.prepareStatements | PreparedStatements または regular Statements を使用するかどうか | true | MEDIUM |
camel.source.endpoint.resultSetConversionStrategy | ResultSet をメッセージのボディー ALL、ONE、LIMIT_10、LIMIT_100… に変換するロジックを実装するカスタムクラスを使用するには、以下を実行します。 | null | MEDIUM |
camel.source.endpoint.session | セッションインスタンスを使用する場合(通常はこのオプションを使用しません)。 | null | MEDIUM |
camel.source.endpoint.username | セッション認証のユーザー名 | null | MEDIUM |
camel.source.endpoint.bridgeErrorHandler | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | MEDIUM |
camel.source.endpoint.sendEmptyMessageWhenIdle | ポーリングコンシューマーがファイルをポーリングしなかった場合、このオプションを有効にして、代わりに空のメッセージ (ボディーなし) を送信できます。 | false | MEDIUM |
camel.source.endpoint.exceptionHandler | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | null | MEDIUM |
camel.source.endpoint.exchangePattern | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。[InOnly]、[InOut]、[InOptionalOut] のいずれか。 | null | MEDIUM |
camel.source.endpoint.pollStrategy | プラグ可能な org.apache.camel.PollingConsumerPollingStrategy を使用すると、エクスチェンジが作成され、Camel でルーティングされる前に、通常はポーリング操作中に発生するエラー処理を制御するカスタム実装が提供できます。 | null | MEDIUM |
camel.source.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.source.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.source.endpoint.backoffErrorThreshold | backoffMultipler が開始する前に発生する必要がある後続のエラーポーリング (エラーによって失敗した) の数。 | null | MEDIUM |
camel.source.endpoint.backoffIdleThreshold | backoffMultipler が開始する前に発生する必要がある後続のアイドルポーリングの数。 | null | MEDIUM |
camel.source.endpoint.backoffMultiplier | 後続のアイドル状態/エラーが連続して発生した場合に、スケジュールされたポーリングコンシューマーのバックオフを許可します。乗数は、実際に次の試行が行われる前にスキップされるポーリングの数です。このオプションが使用されている場合は、backoffIdleThreshold や backoffErrorThreshold も設定する必要があります。 | null | MEDIUM |
camel.source.endpoint.delay | 次のポーリングまでの時間 (ミリ秒単位)。 | 500L | MEDIUM |
camel.source.endpoint.greedy | greedy が有効で、以前の実行が 1 つ以上のメッセージをポーリングした場合、ScheduledPollConsumer は即座に再度実行されます。 | false | MEDIUM |
camel.source.endpoint.initialDelay | 最初のポーリングが開始されるまでの時間 (ミリ秒単位)。 | 1000L | MEDIUM |
camel.source.endpoint.repeatCount | 実行の最大数を指定します。そのため、これを 1 に設定するとスケジューラーは 1 度だけ実行されます。これを 5 に設定した場合、5 回だけ実行されます。0 または負の値を設定すると、無制限に実行されます。 | 0L | MEDIUM |
camel.source.endpoint.runLoggingLevel | コンシューマーはポーリング時に開始/完了のログ行を記録します。このオプションを使用すると、ログレベルを設定できます。[TRACE]、[DEBUG]、[INFO]、[WARN]、[ERROR]、[OFF] のいずれか。 | "TRACE" | MEDIUM |
camel.source.endpoint.scheduledExecutorService | コンシューマーに使用するカスタム/共有スレッドプールを設定できます。デフォルトでは、各コンシューマーに独自の単一スレッドのスレッドプールがあります。 | null | MEDIUM |
camel.source.endpoint.scheduler | camel-spring または camel-quartz コンポーネントから cron スケジューラーを使用します。スケジューラーにビルドされた値 spring または quartz を使用。 | "none" | MEDIUM |
camel.source.endpoint.schedulerProperties | カスタムスケジューラーまたは Quartz や Spring ベースのスケジューラーを使用する場合に、追加のプロパティーを設定します。 | null | MEDIUM |
camel.source.endpoint.startScheduler | スケジューラーを自動起動するかどうか。 | true | MEDIUM |
camel.source.endpoint.timeUnit | initialDelay および delay オプションの時間単位。[NANOSECONDS]、[MICROSECONDS]、[MILLISECONDS]、[SECONDS]、[MINUTES]、[HOURS]、[DAYS] のいずれか。 | "MILLISECONDS" | MEDIUM |
camel.source.endpoint.useFixedDelay | 固定遅延または固定レートを使用するかどうかを制御します。詳細は、JDK の ScheduledExecutorService を参照してください。 | true | MEDIUM |
camel.component.cql.bridgeErrorHandler | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | MEDIUM |
camel.component.cql.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel-cql シンクコネクターには、そのまま使えるコンバーターがありません。
camel-cql シンクコネクターにはそのまま使える変換がありません。
camel-cql シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.10. camel-elasticsearch-rest-kafka-connector のシンク設定
camel-elasticsearch-rest-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-elasticsearch-rest-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.elasticsearchrest.CamelElasticsearchrestSinkConnector
camel-elasticsearch-rest シンクコネクターは、以下に示す 33 オプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.clusterName | クラスターの名前 | null | HIGH |
camel.sink.endpoint.connectionTimeout | 接続がタイムアウトするまでの待機時間(ミリ秒単位)。 | 30000 | MEDIUM |
camel.sink.endpoint.disconnect | プロデューサーの呼び出しが完了した後に切断します。 | false | MEDIUM |
camel.sink.endpoint.enableSniffer | 実行中の Elasticsearch クラスターからノードを自動的に検出します。 | false | MEDIUM |
camel.sink.endpoint.enableSSL | SSL の有効化 | false | MEDIUM |
camel.sink.endpoint.from | 応答のインデックスの開始 | null | MEDIUM |
camel.sink.endpoint.hostAddresses | 使用する ip:port 形式のリモートトランスポートアドレスを含むコンマ区切りのリスト。 | null | HIGH |
camel.sink.endpoint.indexName | 動作させるインデックスの名前 | null | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.maxRetryTimeout | 再試行までの時間(ミリ秒単位)。 | 30000 | MEDIUM |
camel.sink.endpoint.operation | [Index] [Update]、[Bulk] [BulkIndex]、[GetById] [MultiGet]、[MultiSearch]、[Delete]、[DeleteIndex]、[Search]、[Exists]、[Exists]、[Ping] のいずれかを実行する操作。 | null | MEDIUM |
camel.sink.endpoint.scrollKeepAliveMs | elasticsearch が検索コンテキストを保持する時間(ミリ秒単位) | 60000 | MEDIUM |
camel.sink.endpoint.size | 応答のサイズ。 | null | MEDIUM |
camel.sink.endpoint.sniffAfterFailureDelay | 失敗後にスケジュールされるスニファ実行の遅延(ミリ秒単位) | 60000 | MEDIUM |
camel.sink.endpoint.snifferInterval | 連続した通常のスニファ実行の間隔(ミリ秒単位)。sniffOnFailure が無効になったとき、または連続してスニファーの実行の間に失敗がない場合に非表示になります。 | 300000 | MEDIUM |
camel.sink.endpoint.socketTimeout | ソケットがタイムアウトするまで待機するタイムアウト(ミリ秒単位)。 | 30000 | MEDIUM |
camel.sink.endpoint.useScroll | スクロールの使用量を有効にします。 | false | MEDIUM |
camel.sink.endpoint.waitForActiveShards | インデックス作成は、シャードの書き込みの整合性数が利用可能になるまで待機します。 | 1 | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.component.elasticsearch-rest.lazyStart Producer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.elasticsearch-rest.basicProperty Binding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.elasticsearch-rest.client | エンドポイントごとにクライアントを作成する代わりに、既存の設定された Elasticsearch クライアントを使用します。これにより、特定の設定でクライアントをカスタマイズできます。 | null | MEDIUM |
camel.component.elasticsearch-rest.connection Timeout | 接続がタイムアウトするまでの待機時間(ミリ秒単位)。 | 30000 | MEDIUM |
camel.component.elasticsearch-rest.enableSniffer | 実行中の Elasticsearch クラスターからノードを自動的に検出します。 | "false" | MEDIUM |
camel.component.elasticsearch-rest.hostAddresses | 使用する ip:port 形式のリモートトランスポートアドレスを含むコンマ区切りのリスト。hostAddresses を代わりに考慮するには、ip オプションおよび port オプションを空白のままにする必要があります。 | null | MEDIUM |
camel.component.elasticsearch-rest.maxRetryTimeout | 再試行までの時間(ミリ秒単位)。 | 30000 | MEDIUM |
camel.component.elasticsearch-rest.sniffAfter FailureDelay | 失敗後にスケジュールされるスニファ実行の遅延(ミリ秒単位) | 60000 | MEDIUM |
camel.component.elasticsearch-rest.snifferInterval | 連続した通常のスニファ実行の間隔(ミリ秒単位)。sniffOnFailure が無効になったとき、または連続してスニファーの実行の間に失敗がない場合に非表示になります。 | 300000 | MEDIUM |
camel.component.elasticsearch-rest.socketTimeout | ソケットがタイムアウトするまで待機するタイムアウト(ミリ秒単位)。 | 30000 | MEDIUM |
camel.component.elasticsearch-rest.enableSSL | SSL の有効化 | "false" | MEDIUM |
camel.component.elasticsearch-rest.password | 認証のパスワード | null | MEDIUM |
camel.component.elasticsearch-rest.user | 基本的な認証ユーザー | null | MEDIUM |
camel-elasticsearch-rest シンクコネクターには、そのまま使えるコンバーターがありません。
camel-elasticsearch-rest シンクコネクターにはそのまま使える変換がありません。
camel-elasticsearch-rest シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.11. camel-file-kafka-connector のシンク設定
camel-file-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-file-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.file.CamelFileSinkConnector
camel-file シンクコネクターは、以下に示す 27 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.directoryName | 開始ディレクトリー | null | HIGH |
camel.sink.endpoint.charset | このオプションは、ファイルのエンコーディングを指定するために使用されます。これはコンシューマーで使用して、ファイルのエンコーディングを指定できます。これにより、Camel はファイルの内容にアクセスした場合にファイルの内容を読み込む必要があります。ファイルを書き込む場合も同様に、このオプションを使用して、ファイルを書き込む文字を指定することもできます。ファイルを書くときには、メッセージの内容をメモリーに読み込んで、データを設定済みの文字セットに変換しなければならない場合があります。そのため、大きなメッセージがある場合は使用しないでください。 | null | MEDIUM |
camel.sink.endpoint.doneFileName | プロデューサー: 指定された場合、元のファイルが書き込まれると、Camel は 2 番目に完了したファイルを書き込みます。完了ファイルは空になります。このオプションは、使用するファイル名を設定します。固定名を指定できます。または、動的プレースホルダーを使用することもできます。done ファイルは、常に元のファイルと同じフォルダーに書き込まれます。コンシューマー: 提供された場合、Camel は完了したファイルが存在する場合にのみファイルを消費します。このオプションは、使用するファイル名を設定します。固定名を指定できます。または、動的プレースホルダーを使用することもできます。完成したファイルは、常に元のファイルと同じフォルダーに期待されます。\${file.name} および \${file.name.next} のみが動的プレースホルダーとしてサポートされます。 | null | MEDIUM |
camel.sink.endpoint.fileName | File Language などの式を使用して、ファイル名を動的に設定します。コンシューマーの場合は、ファイル名フィルターとして使用されます。プロデューサーの場合、書き込みするファイル名を評価するために使用されます。式が設定されている場合は、CamelFileName ヘッダーよりも優先されます。(注記: ヘッダー自体は式にすることもできます。式オプションは String タイプと Expression 型の両方をサポートします。式が String タイプである場合、これは常に File 言語を使用して評価されます。式が Expression タイプである場合、指定された式タイプが使用されます。たとえば、OGNL 式を使用できます。コンシューマーの場合は、ファイル名をフィルターできるため、File 言語構文 mydata-\${date:now:yyyyMMdd}.txt を使用して現在のファイルを使用できます。プロデューサーは、既存の CamelFileName ヘッダーよりも優先される CamelOverruleFileName ヘッダーをサポートします。CamelOverruleFileName は 1 度だけ使用されるヘッダーで、CamelFileName を一時的に保存し、後で復元する必要があるため、より簡単に使用できます。 | null | MEDIUM |
camel.sink.endpoint.appendChars | ファイルの記述後に文字(テキスト)を追加するために使用されます。たとえば、既存のファイルへの書き込みや追加時に、改行やその他のセパレーターを追加するために使用できます。改行(slash-n または slash-r)またはタブ(slash-t)文字を指定するには、追加のスラッシュ(例: slash-slash-n)でエスケープします。 | null | MEDIUM |
camel.sink.endpoint.fileExist | 同じ名前のファイルがすでに存在する場合のアクション。デフォルトである Override は、既存のファイルを置き換えます。- Append - コンテンツを既存のファイルに追加します。- Fail - 既存のファイルがあることを示す GenericFileOperationException をスローします。- Ignore - 問題を警告なしで無視し、既存ファイルを上書きしないことを前提としています。- Move - オプションでは、moveExisting オプションも設定する必要があります。eagerDeleteTargetFile オプションを使用して、ファイルの移動や既存のファイルがすでに存在する場合に実行内容を制御できます。それ以外の場合は、移動操作が失敗します。Move オプションは、ターゲットファイルを書き込む前に既存のファイルを移動します。- TryRename は、tempFileName オプションが使用されている場合にのみ適用されます。これにより、存在チェックを実行せずに、一時的な名前から実際の名前へのファイルの名前変更を試すことができます。一部のファイルシステムや、特に FTP サーバーでは、このチェックの方が高速である場合があります。[Override]、[Append]、[Fail]、[Ignore]、[Move]、[TryRename] のいずれか。 | "Override" | MEDIUM |
camel.sink.endpoint.flatten | フラット化は、ファイル名パスをフラット化して先頭のパスを削除するために使用されるので、ファイル名だけになります。これにより、サブディレクトリーに再帰的に消費できますが、たとえば別のディレクトリーにファイルを書き込むと、それらのファイルは単一のディレクトリーに書き込まれます。これをプロデューサーで true に設定すると、CamelFileName ヘッダーのファイル名が任意の先頭パスに対して削除されます。 | false | MEDIUM |
camel.sink.endpoint.jailStartingDirectory | 開始ディレクトリー(およびサブ)にのみファイルの書き込み(制限)に使用されます。これは、Camel がファイルを外部ディレクトリーに書き込みできないようにするためにデフォルトで有効になっています(追加設定なしでは保護されています)。これを無効にして、親フォルダーやルートフォルダーなど、開始ディレクトリー外のディレクトリーにファイルを書き込みできます。 | true | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.moveExisting | fileExist=Move が設定されている場合に使用するファイル名の計算に使用される式(ファイル言語など)。ファイルをバックアップサブディレクトリーに移動するには、バックアップを入力します。このオプションは、file:name、file:name.ext、file:name.noext、file:onlyname、file:onlyname.noext、file:ext、および file:parent の File Language トークンのみをサポートします。FTP コンポーネントは既存のファイルをベースとして、相対ディレクトリーにのみ移動できるため、file:parent は FTP コンポーネントではサポートされないことに注意してください。 | null | MEDIUM |
camel.sink.endpoint.tempFileName | tempPrefix オプションと同じですが、File 言語を使用する一時的なファイル名の命名をより細かく制御できます。tempFilename の場所は、ベース URI のターゲットディレクトリーではなく、オプション 'fileName' の最終ファイルの場所に相対します。たとえば、オプションの fileName にディレクトリープレフィックス dir: dir/finalFilename が含まれる場合は、tempFileName はそのサブディレクトリー dir との相対値になります。 | null | MEDIUM |
camel.sink.endpoint.tempPrefix | このオプションは、一時的な名前を使用してファイルを書き込むために使用されます。次に、書き込みが完了したら、その名前を変更します。書き込まれているファイルを特定し、進行中のファイルで読み取るコンシューマー(排他的読み取りロックを使用しない)も回避できます。大容量のファイルをアップロードする場合に FTP が使用することがよくあります。 | null | MEDIUM |
camel.sink.endpoint.allowNullBody | ファイルの書き込み中に null ボディーを許可するかどうかを指定するのに使用します。true に設定すると、空のファイルが作成され、false に設定され、null ボディーを file コンポーネントに送信しようとすると、'Cannot write null body to file.' の GenericFileWriteException がスローされます。fileExist オプションを 'Override' に設定すると、ファイルが切り捨てられます。追加する場合は、ファイルは変更されません。 | false | MEDIUM |
camel.sink.endpoint.chmod | プロデューサーによって送信されるファイルパーミッションを指定します。chmod の値は 000 から 777 の間の値である必要があります。0755 のように先頭の数字がある場合は無視します。 | null | MEDIUM |
camel.sink.endpoint.chmodDirectory | プロデューサーが不足しているディレクトリーを作成する際に使用するディレクトリーパーミッションを指定します。chmod の値は 000 から 777 の間でなければなりません。0755 のように先頭の数字がある場合は無視されます。 | null | MEDIUM |
camel.sink.endpoint.eagerDeleteTargetFile | 既存のターゲットファイルを活発に削除するかどうか。このオプションは、fileExists=Override オプションおよび tempFileName オプションを使用している場合にのみ適用されます。このパラメーターを使用して、一時ファイルが書き込まれる前にターゲットファイルを削除する(false に設定します)ことができます。たとえば、大きなファイルを作成し、一時ファイルが書き込まれている間にターゲットファイルを存在させたいとします。これにより、一時ファイルの名前がターゲットファイル名に変更される直前に、ターゲットファイルが最後の時点までのみ削除されます。また、このオプションは、fileExist=Move が有効で、既存のファイルが存在すると、既存のファイルを削除するかどうかを制御することもできます。このオプションの copyAndDeleteOnRenameFails false を指定した場合、既存のファイルが存在する場合は、移動操作の前に既存のファイルが削除されます。 | true | MEDIUM |
camel.sink.endpoint.forceWrites | ファイルシステムへの書き込みを強制的に同期するかどうか。ログ/監査ログへの書き込みなど、このレベルの保証が必要ない場合に、このレベルをオフにすることができます。これにより、パフォーマンスが向上します。 | true | MEDIUM |
camel.sink.endpoint.keepLastModified | ソースファイルから最後に変更したタイムスタンプを保持します(存在する場合)。Exchange.FILE_LAST_MODIFIED ヘッダーを使用してタイムスタンプを見つけます。このヘッダーには java.util.Date またはタイムスタンプの long を含めることができます。タイムスタンプが存在し、オプションが有効な場合は、書き込まれたファイルにこのタイムスタンプを設定します。注記: このオプションは、ファイルプロデューサーにのみ適用されます。このオプションは、\ftp プロデューサーには使用できません。 | false | MEDIUM |
camel.sink.endpoint.moveExistingFileStrategy | fileExist=Move が設定されている場合に使用する特別な命名トークンを持つファイルを移動するために使用されるストラテジー(カスタムストラテジー)。デフォルトでは、カスタムストラテジーが指定されていない場合に実装が使用されます。 | null | MEDIUM |
camel.sink.endpoint.autoCreate | ファイルのパス名に不足しているディレクトリーを自動的に作成します。ファイルコンシューマーの場合は、開始ディレクトリーを作成することを意味します。ファイルプロデューサーの場合、ファイルが書き込まれるディレクトリーを意味します。 | true | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.bufferSize | ファイルの書き込みに使用されるバッファーサイズ(または FTP でファイルのダウンロードおよびアップロードの場合)。 | 131072 | MEDIUM |
camel.sink.endpoint.copyAndDeleteOnRenameFail | ファイルの名前を直接変更できない場合など、フォールバックとコピーおよび削除を行うかどうか。このオプションは FTP コンポーネントでは使用できません。 | true | MEDIUM |
camel.sink.endpoint.renameUsingCopy | コピーおよび削除ストラテジーを使用して名前変更操作を実行します。これは主に、通常の名前変更操作が信頼できる環境で使用されます(例: 異なるファイルシステムまたはネットワーク全体で)。このオプションは、コピーおよび削除ストラテジーに自動的にフォールバックする copyAndDeleteOnRenameFail パラメーターよりも優先されますが、追加の遅延の後のみになります。 | false | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.component.file.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.file.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel-file シンクコネクターには、そのまま使えるコンバーターがありません。
camel-file シンクコネクターには、そのまま使える変換はありません。
camel-file シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.12. camel-hdfs-kafka-connector のシンク設定
camel-hdfs-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-hdfs-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.hdfs.CamelHdfsSinkConnector
camel-hdfs シンクコネクターは、以下に示す 32 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.hostName | 使用する HDFS ホスト。 | null | HIGH |
camel.sink.path.port | 使用する HDFS ポート | 8020 | MEDIUM |
camel.sink.path.path | 使用するディレクトリーパス | null | HIGH |
camel.sink.endpoint.connectOnStartup | プロデューサー/コンシューマーの開始時に HDFS ファイルシステムに接続するかどうか。false の場合、接続はオンデマンドで作成されます。45 x 20 秒の再配信がハードコーディングされているため、で接続を確立するのに最大 15 分かかることがあります。このオプションを false に設定すると、アプリケーションの起動が可能になり、最大 15 分間ブロックされません。 | true | MEDIUM |
camel.sink.endpoint.fileSystemType | 代わりに HDFS を使用せず、ローカルの java.io.File を使用しない場合は、LOCAL に設定します。[LOCAL]、[HDFS] のいずれか。 | "HDFS" | MEDIUM |
camel.sink.endpoint.fileType | 使用するファイルタイプ。詳細は、さまざまなファイルタイプについてのドキュメントを参照してください。[NORMAL_FILE]、[SEQUENCE_FILE]、[MAP_FILE]、[BLOOMMAP_FILE]、[ARRAY_FILE] のいずれか。 | "NORMAL_FILE" | MEDIUM |
camel.sink.endpoint.keyType | シーケンスファイルまたはマップファイルの場合のキーのタイプ。[NULL]、[BOOLEAN]、[BYTE]、[INT]、[FLOAT]、[LONG]、[DOUBLE]、[TEXT]、[BYTES] のいずれか。 | "NULL" | MEDIUM |
camel.sink.endpoint.namedNodes | 名前付きノードのカンマ区切りの一覧(例: srv11.example.com:8020,srv12.example.com:8020) | null | MEDIUM |
camel.sink.endpoint.owner | ファイルの所有者は、コンシューマーがファイルを取得するには、この所有者と一致する必要があります。そうでない場合は、ファイルはスキップされます。 | null | MEDIUM |
camel.sink.endpoint.valueType | シーケンスまたはマップファイルの場合のキーの型。[NULL]、[BOOLEAN]、[BYTE]、[INT]、[FLOAT]、[LONG]、[DOUBLE]、[TEXT]、[BYTES] のいずれか。 | "BYTES" | MEDIUM |
camel.sink.endpoint.append | 既存ファイルに追加します。すべての HDFS ファイルシステムが append オプションをサポートしているわけではないことに注意してください。 | false | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.overwrite | 同じ名前の既存ファイルを上書きするかどうか。 | true | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.blockSize | HDFS ブロックのサイズ | 67108864L | MEDIUM |
camel.sink.endpoint.bufferSize | HDFS によって使用されるバッファーサイズ | 4096 | MEDIUM |
camel.sink.endpoint.checkIdleInterval | アイドルチェッカーのバックグラウンドタスクを実行する頻度(ミリ秒単位)。このオプションは、Splitter ストラテジーが IDLE の場合にのみ使用されます。 | 500 | MEDIUM |
camel.sink.endpoint.chunkSize | 通常ファイルを読み取ると、チャンクごとにメッセージを生成するチャンクに分割されます。 | 4096 | MEDIUM |
camel.sink.endpoint.compressionCodec | [DEFAULT]、[GZIP] のいずれかを使用する圧縮コーデック [BZIP2] | "DEFAULT" | MEDIUM |
camel.sink.endpoint.compressionType | 使用する圧縮タイプ(デフォルトは使用されていない)、[NONE]、[RECORD]、[BLOCK] のいずれか。 | "NONE" | MEDIUM |
camel.sink.endpoint.openedSuffix | ファイルを読み取り/書き込み用に開くと、書き込みフェーズでファイルを読み込まないように、この接尾辞が付いたファイルの名前が変更されます。 | "opened" | MEDIUM |
camel.sink.endpoint.readSuffix | ファイルが読み取られると、再度読み取られないように、この接尾辞が付いたファイルの名前が変更されます。 | "read" | MEDIUM |
camel.sink.endpoint.replication | HDFS レプリケーションファクター | 3 | MEDIUM |
camel.sink.endpoint.splitStrategy | 現在のバージョンでは、追加モードでファイルを開くことは、非常に信頼性がないために無効にされます。したがって、現時点では新しいファイルの作成のみが可能です。Camel HDFS エンドポイントは、この問題を解決しようとします。スプリットストラテジーオプションが定義されている場合、hdfs パスはディレクトリーとして使用され、設定済みの UuidGenerator を使用してファイルが作成されます。分割条件が満たされるたびに、新しいファイルが作成されます。splitStrategy オプションは、SplitStrategy=ST:value,ST:value… という構文で文字列として定義されます。ここで、splitStrategy=ST:value,ST:value,… | null | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.sink.endpoint.kerberosConfigFileLocation | kerb5.conf ファイルの場所(https://web.mit.edu/kerberos/krb5-1.12/doc/admin/conf_files/krb5_conf.html) | null | MEDIUM |
camel.sink.endpoint.kerberosKeytabLocation | kerberos ノードとの認証に使用するキータブファイルの場所(Kerberos パスワードから派生する kerberos プリンシパルと暗号化された鍵のペア) | null | MEDIUM |
camel.sink.endpoint.kerberosUsername | Kerberos ノードでの認証に使用するユーザー名 | null | MEDIUM |
camel.component.hdfs.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.hdfs.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.hdfs.jAASConfiguration | JAAS でセキュリティーに特定の設定を使用します。 | null | MEDIUM |
camel.component.hdfs.kerberosConfigFile | kerberos 認証を使用するには、'java.security.krb5.conf' 環境変数の値を既存のファイルに設定します。環境変数がすでに設定されている場合は、指定したパラメーターとは異なるかどうかを警告します。 | null | MEDIUM |
camel-hdfs シンクコネクターには、そのまま使えるコンバーターがありません。
camel-hdfs シンクコネクターには、そのまま使える変換はありません。
camel-hdfs シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.13. camel-http-kafka-connector のシンク設定
camel-http-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-http-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.http.CamelHttpSinkConnector
camel-http シンクコネクターは、以下に示す 80 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.httpUri | 呼び出す HTTP エンドポイントの URL。 | null | HIGH |
camel.sink.endpoint.disableStreamCache | Servlet からの raw 入力ストリームがキャッシュされているかどうかを決定します(Camel はストリームをメモリー内/オーバーフローでファイル、ストリームキャッシング)キャッシュに読み取ります。デフォルトでは、Camel は Servlet 入力ストリームをキャッシュして、複数回ロードし、Camel がストリームからすべてのデータを取得できるようにします。ただし、raw ストリームにアクセスする必要がある場合などにこのオプションを true に設定します。たとえば、ファイルまたは他の永続ストアに直接ストリーミングする場合などに、raw ストリームにアクセスする必要がある場合などにこのオプションを true に設定します。DefaultHttpBinding は、ストリームの読み取りを複数回サポートするために、このオプションが false の場合は、リクエスト入力ストリームをストリームキャッシュにコピーし、メッセージボディーに配置します。Servlet を使用してエンドポイントをブリッジ/プロキシーする場合、このオプションを有効にしてパフォーマンスを向上することを検討してください。メッセージペイロードを複数回読み取る必要がない場合は、このオプションを有効にします。http プロデューサーはデフォルトで応答ボディーストリームをキャッシュします。このオプションを true に設定すると、プロデューサーは応答ボディーストリームをキャッシュしませんが、応答ストリームをメッセージボディーとして使用します。 | false | MEDIUM |
camel.sink.endpoint.headerFilterStrategy | カスタム HeaderFilterStrategy を使用して Camel メッセージに対してヘッダーをフィルターします。 | null | MEDIUM |
camel.sink.endpoint.httpBinding | カスタムの HttpBinding を使用して Camel メッセージと HttpClient 間のマッピングを制御する場合。 | null | MEDIUM |
camel.sink.endpoint.bridgeEndpoint | オプションが true の場合、HttpProducer は Exchange.HTTP_URI ヘッダーを無視し、リクエストにエンドポイントの URI を使用します。また、ththExceptionOnFailure オプションを false に設定して、HttpProducer がすべての障害応答を返せるようにすることもできます。 | false | MEDIUM |
camel.sink.endpoint.chunked | このオプションが false の場合、サーブレットは HTTP ストリーミングを無効にし、応答に content-length ヘッダーを設定します。 | true | MEDIUM |
camel.sink.endpoint.clearExpiredCookies | HTTP 要求を送信する前に期限切れの cookie を消去するかどうか。これにより、Cookie ストアは、有効期限が切れると新しい Cookie を追加することで、増大し続けます。 | true | MEDIUM |
camel.sink.endpoint.connectionClose | Connection Close ヘッダーを HTTP 要求に追加する必要があるかどうかを指定します。デフォルトでは connectionClose は false です。 | false | MEDIUM |
camel.sink.endpoint.copyHeaders | このオプションが true の場合、コピーストラテジーに従って IN エクスチェンジヘッダーが OUT エクスチェンジヘッダーにコピーされます。これを false に設定し、HTTP 応答からのヘッダーのみを含めることができます(IN ヘッダーは伝播しません)。 | true | MEDIUM |
camel.sink.endpoint.customHostHeader | プロデューサーにカスタムホストヘッダーを使用します。クエリーに設定されていない場合は無視されます。設定される場合、URL から派生するホストヘッダーが上書きされます。 | null | MEDIUM |
camel.sink.endpoint.httpMethod | 使用する HTTP メソッドを設定します。HttpMethod ヘッダーが設定されている場合は、このオプションをオーバーライドできません。[GET]、[POST]、[PUT]、[DELETE]、[HEAD]、[OPTIONS]、[TRACE]、[PATCH] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.ignoreResponseBody | このオプションが true の場合、http プロデューサーは応答本体を読み取りせず、入力ストリームをキャッシュします。 | false | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.preserveHostHeader | オプションが true の場合、HttpProducer は Host ヘッダーを現在のエクスチェンジ Host ヘッダーに含まれる値に設定します。これは、ダウンストリームサーバーが受け取る Host ヘッダーを使用してアップストリームクライアントが呼び出した URL を反映させたいリバースプロキシーアプリケーションで有用です。これにより、Host ヘッダーを使用するアプリケーションがプロキシーされるサービスの正確な URL を生成することができます。 | false | MEDIUM |
camel.sink.endpoint.throwExceptionOnFailure | リモートサーバーからの応答に失敗した場合に HttpOperationFailedException のスローを無効にするオプション。これにより、HTTP ステータスコードに関係なくすべての応答を取得できます。 | true | MEDIUM |
camel.sink.endpoint.transferException | 有効で Exchange がコンシューマー側で処理に失敗し、発生した例外が application/x-java-serialized-object のコンテンツタイプとして応答でシリアライズされたかどうか。プロデューサー側では、例外は HttpOperationFailedException ではなくデシリアライズされ、そのままスローされます。原因となる例外はシリアライズされている必要があります。これは、デフォルトではオフになっています。これを有効にすると、Java は受信データをリクエストから Java へデシリアライズし、潜在的なセキュリティーリスクとなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.cookieHandler | HTTP セッションを維持するためのクッキーハンドラーの設定 | null | MEDIUM |
camel.sink.endpoint.cookieStore | カスタムの CookieStore を使用します。デフォルトでは、インメモリーのみのクッキーストアである BasicCookieStore が使用されます。bridgeEndpoint=true の場合、Cookie ストアは noop cookie ストアに強制されます。これは Cookie がブリッジのみであるため(プロキシーとして機能するなど)、これを保存しません。cookieHandler が設定される場合、Cookie ストアは cookie 処理として noop cookie ストアに強制されます。CookieHandler によって実行されます。 | null | MEDIUM |
camel.sink.endpoint.deleteWithBody | HTTP DELETE にメッセージボディーを含めるかどうか。デフォルトでは、HTTP DELETE には HTTP ボディーが含まれません。ただし、まれに、ユーザーにメッセージボディーを含める必要があることがあります。 | false | MEDIUM |
camel.sink.endpoint.getWithBody | HTTP GET にメッセージボディーを含めるかどうか。デフォルトでは、HTTP GET には HTTP ボディーが含まれません。ただし、まれに、ユーザーにメッセージボディーを含める必要があることがあります。 | false | MEDIUM |
camel.sink.endpoint.okStatusCodeRange | 正常な応答とみなされるステータスコード。値は含まれます。コンマで区切られた複数の範囲を定義できます(例: 200-204,209,301-304)。各範囲は、1 つの数字またはダッシュを含む from から でなければなりません。 | "200-299" | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.clientBuilder | このエンドポイントのプロデューサーまたはコンシューマーによって使用される新しい RequestConfig インスタンスで使用される http クライアント要求パラメーターへのアクセスを提供します。 | null | MEDIUM |
camel.sink.endpoint.clientConnectionManager | カスタムの HttpClientConnectionManager を使用して接続を管理するには | null | MEDIUM |
camel.sink.endpoint.connectionsPerRoute | ルートごとの最大接続数。 | 20 | MEDIUM |
camel.sink.endpoint.httpClient | プロデューサーによって使用されるカスタム HttpClient を設定します。 | null | MEDIUM |
camel.sink.endpoint.httpClientConfigurer | 認証メカニズムの設定など、プロデューサーやコンシューマーによって作成された新しい HttpClient インスタンスのカスタム設定ストラテジーを登録します。 | null | MEDIUM |
camel.sink.endpoint.httpClientOptions | Map のキー/値を使用して HttpClient を設定します。 | null | MEDIUM |
camel.sink.endpoint.httpContext | カスタム HttpContext インスタンスの使用 | null | MEDIUM |
camel.sink.endpoint.mapHttpMessageBody | このオプションが true の場合、エクスチェンジの IN エクスチェンジボディーは HTTP ボディーにマッピングされます。false に設定すると HTTP マッピングが回避されます。 | true | MEDIUM |
camel.sink.endpoint.mapHttpMessageFormUrlEncoded Body | このオプションが true の場合、エクスチェンジの IN Exchange Form Encoded body が HTTP にマッピングされます。これを false に設定すると、HTTP Form Encoded body マッピングを回避します。 | true | MEDIUM |
camel.sink.endpoint.mapHttpMessageHeaders | このオプションが true の場合、エクスチェンジの IN エクスチェンジヘッダーは HTTP ヘッダーにマッピングされます。false に設定すると、HTTP ヘッダーのマッピングが回避されます。 | true | MEDIUM |
camel.sink.endpoint.maxTotalConnections | 最大接続数。 | 200 | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.sink.endpoint.useSystemProperties | 設定のフォールバックとしてシステムプロパティーを使用する | false | MEDIUM |
camel.sink.endpoint.proxyAuthDomain | NTML で使用するプロキシー認証ドメイン | null | MEDIUM |
camel.sink.endpoint.proxyAuthHost | プロキシー認証ホスト | null | MEDIUM |
camel.sink.endpoint.proxyAuthMethod | [Basic]、[Digest]、[NTLM] のいずれかを使用するプロキシー認証方法。 | null | MEDIUM |
camel.sink.endpoint.proxyAuthNtHost | NTML で使用するプロキシー認証ドメイン(ワークステーション名) | null | MEDIUM |
camel.sink.endpoint.proxyAuthPassword | プロキシー認証パスワード | null | MEDIUM |
camel.sink.endpoint.proxyAuthPort | プロキシー認証ポート | null | MEDIUM |
camel.sink.endpoint.proxyAuthScheme | [http] [https] のいずれかを使用するプロキシー認証スキーム。 | null | MEDIUM |
camel.sink.endpoint.proxyAuthUsername | プロキシー認証ユーザー名 | null | MEDIUM |
camel.sink.endpoint.proxyHost | 使用するプロキシーホスト名 | null | MEDIUM |
camel.sink.endpoint.proxyPort | 使用するプロキシーポート | null | MEDIUM |
camel.sink.endpoint.authDomain | NTML で使用する認証ドメイン | null | MEDIUM |
camel.sink.endpoint.authenticationPreemptive | このオプションが true の場合、camel-http はプリエンプションの Basic 認証をサーバーに送信します。 | false | MEDIUM |
camel.sink.endpoint.authHost | NTML で使用する認証ホスト | null | MEDIUM |
camel.sink.endpoint.authMethod | Basic、Digest、または NTLM の値のコンマ区切りリストとして使用できる認証方法。 | null | MEDIUM |
camel.sink.endpoint.authMethodPriority | Basic、Digest、または NTLM のいずれかの使用を優先する認証方法。[Basic]、[Digest]、[NTLM] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.authPassword | 認証パスワード | null | MEDIUM |
camel.sink.endpoint.authUsername | 認証ユーザー名 | null | MEDIUM |
camel.sink.endpoint.sslContextParameters | SSLContextParameters を使用してセキュリティーを設定します。重要: HttpComponent ごとにサポートされるのは org.apache.camel.util.jsse.SSLContextParameters の 1 つのインスタンスのみです。2 つ以上のインスタンスを使用する必要がある場合は、必要なインスタンスごとに新しい HttpComponent を定義する必要があります。 | null | MEDIUM |
camel.sink.endpoint.x509HostnameVerifier | DefaultHostnameVerifier または NoopHostnameVerifier などのカスタム X509HostnameVerifier を使用するには、以下を実行します。 | null | MEDIUM |
camel.component.http.cookieStore | カスタムの org.apache.http.client.CookieStore を使用します。デフォルトでは、インメモリーのみのクッキーストアである org.apache.http.impl.client.BasicCookieStore が使用されます。bridgeEndpoint=true の場合、Cookie ストアは noop cookie ストアに強制されます。これは Cookie がブリッジのみであるため(プロキシーとして機能するなど)、これを保存しません。 | null | MEDIUM |
camel.component.http.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.http.allowJavaSerializedObject | リクエストが context-type=application/x-java-serialized-object を使用する場合に java のシリアライズを許可するかどうか。これは、デフォルトではオフになっています。これを有効にすると、Java は受信データをリクエストから Java へデシリアライズし、潜在的なセキュリティーリスクとなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.http.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.http.clientConnectionManager | カスタムおよび共有 HttpClientConnectionManager を使用して接続を管理します。これが設定されている場合、これは常にこのコンポーネントによって作成されるすべてのエンドポイントに使用されます。 | null | MEDIUM |
camel.component.http.connectionsPerRoute | ルートごとの最大接続数。 | 20 | MEDIUM |
camel.component.http.connectionTimeToLive | 接続の有効期間中、時間単位はミリ秒で、常にデフォルト値を維持します。 | null | MEDIUM |
camel.component.http.httpBinding | カスタムの HttpBinding を使用して Camel メッセージと HttpClient 間のマッピングを制御する場合。 | null | MEDIUM |
camel.component.http.httpClientConfigurer | カスタム HttpClientConfigurer を使用して使用される HttpClient の設定を行うには、以下を行います。 | null | MEDIUM |
camel.component.http.httpConfiguration | 共有 HttpConfiguration をベース設定として使用します。 | null | MEDIUM |
camel.component.http.httpContext | リクエストの実行時にカスタムの org.apache.http.protocol.HttpContext を使用します。 | null | MEDIUM |
camel.component.http.maxTotalConnections | 最大接続数。 | 200 | MEDIUM |
camel.component.http.headerFilterStrategy | カスタムの org.apache.camel.spi.HeaderFilterStrategy を使用して、Camel メッセージとの間でヘッダーをフィルターします。 | null | MEDIUM |
camel.component.http.proxyAuthDomain | 使用するプロキシー認証ドメイン | null | MEDIUM |
camel.component.http.proxyAuthHost | プロキシー認証ホスト | null | MEDIUM |
camel.component.http.proxyAuthMethod | [Basic]、[Digest]、[NTLM] のいずれかを使用するプロキシー認証方法。 | null | MEDIUM |
camel.component.http.proxyAuthNtHost | NTML で使用するプロキシー認証ドメイン(ワークステーション名) | null | MEDIUM |
camel.component.http.proxyAuthPassword | プロキシー認証パスワード | null | MEDIUM |
camel.component.http.proxyAuthPort | プロキシー認証ポート | null | MEDIUM |
camel.component.http.proxyAuthUsername | プロキシー認証ユーザー名 | null | MEDIUM |
camel.component.http.sslContextParameters | SSLContextParameters を使用してセキュリティーを設定します。重要: HttpComponent ごとにサポートされるのは、org.apache.camel.support.jsse.SSLContextParameters の 1 つのインスタンスのみです。2 つ以上のインスタンスを使用する必要がある場合は、必要なインスタンスごとに新しい HttpComponent を定義する必要があります。 | null | MEDIUM |
camel.component.http.useGlobalSslContextParameters | グローバル SSL コンテキストパラメーターの使用を有効にします。 | false | MEDIUM |
camel.component.http.x509HostnameVerifier | DefaultHostnameVerifier または NoopHostnameVerifier などのカスタム X509HostnameVerifier を使用するには、以下を実行します。 | null | MEDIUM |
camel.component.http.connectionRequestTimeout | 接続マネージャーから接続を要求する際に使用されるタイムアウト(ミリ秒単位)。タイムアウト値 0 は無限のタイムアウトとして解釈されます。タイムアウト値 0 は無限のタイムアウトとして解釈されます。負の値は undefined(システムのデフォルト)として解釈されます。 | -1 | MEDIUM |
camel.component.http.connectTimeout | 接続が確立されるまでのタイムアウトをミリ秒単位で指定します。タイムアウト値 0 は無限のタイムアウトとして解釈されます。タイムアウト値 0 は無限のタイムアウトとして解釈されます。負の値は undefined(システムのデフォルト)として解釈されます。 | -1 | MEDIUM |
camel.component.http.socketTimeout | ソケットタイムアウトをミリ秒単位で定義します。これは、2 つの連続したデータパケット間の最大待機時間(異なる場合)です。タイムアウト値 0 は無限のタイムアウトとして解釈されます。負の値は undefined(システムのデフォルト)として解釈されます。 | -1 | MEDIUM |
camel-http シンクコネクターには、そのまま使えるコンバーターがありません。
camel-http シンクコネクターには、そのまま使える変換はありません。
camel-http シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.14. camel-jdbc-kafka-connector のシンク設定
camel-jdbc-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-jdbc-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.jdbc.CamelJdbcSinkConnector
camel-jdbc シンクコネクターは、以下に示す 19 個のオプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.dataSourceName | レジストリーで検索する DataSource の名前。名前が dataSource または default の場合、Camel はレジストリーからデフォルトの DataSource の検索を試みます。つまり、見つかったインスタンスが 1 つしかない場合は、この DataSource が使用されます。 | null | HIGH |
camel.sink.endpoint.allowNamedParameters | クエリーで名前付きパラメーターを使用できるかどうか。 | true | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.outputClass | outputType=SelectOne または SelectList 時に変換として使用する完全なパッケージおよびクラス名を指定します。 | null | MEDIUM |
camel.sink.endpoint.outputType | プロデューサーが使用する出力を決定します。[SelectOne]、[SelectList]、[StreamList] のいずれか。 | "SelectList" | MEDIUM |
camel.sink.endpoint.parameters | java.sql.Statement へのオプションのパラメーターです。たとえば、maxRows や fetchSize などを設定します。 | null | MEDIUM |
camel.sink.endpoint.readSize | ポーリングクエリーで読み取りできる行のデフォルトの最大数。デフォルト値は 0 です。 | null | MEDIUM |
camel.sink.endpoint.resetAutoCommit | Camel は JDBC コネクションの autoCommit を false に設定し、ステートメントを実行した後に変更をコミットし、resetAutoCommit が true の場合、接続の autoCommit フラグをリセットします。JDBC コネクションが autoCommit フラグのリセットをサポートしていない場合は、resetAutoCommit フラグを false に設定することで、Camel は autoCommit フラグをリセットしません。XA トランザクションと併用する場合は、トランザクションマネージャーがこの tx のコミットを担当するよう false に設定する必要があります。 | true | MEDIUM |
camel.sink.endpoint.transacted | トランザクションが使用中のかどうか。 | false | MEDIUM |
camel.sink.endpoint.useGetBytesForBlob | BLOB 列を文字列データではなくバイトとして読み取る。これは、BLOB 列をバイトとして読み取る必要がある Oracle などの特定のデータベースで必要になることがあります。 | false | MEDIUM |
camel.sink.endpoint.useHeadersAsParameters | 名前付きパラメーターを指定した prepareStatementStrategy を使用するには、このオプションを true に設定します。これにより、名前付きプレースホルダーでクエリーを定義でき、クエリープレースホルダーの動的な値でヘッダーを使用できます。 | false | MEDIUM |
camel.sink.endpoint.useJDBC4ColumnNameAndLabel Semantics | 列名を取得するときに JDBC 4 または JDBC 3.0 以前のセマンティックを使用するかどうかを設定します。JDBC 4.0 は columnLabel を使用して列名を取得し、JDBC 3.0 は両方の columnName または columnLabel を使用します。しかし、JDBC ドライバーの動作が異なるため、このコンポーネントの使用に問題がある場合は、このオプションを使用して JDBC ドライバーの問題を回避できます。 | true | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.beanRowMapper | outputClass の使用時にカスタムの org.apache.camel.component.jdbc.BeanRowMapper を使用するには、以下を行います。デフォルトの実装では、行名を小文字を下げ、アンダースコアとダッシュをスキップします。たとえば、CUST_ID は custId としてマッピングされます。 | null | MEDIUM |
camel.sink.endpoint.prepareStatementStrategy | プラグインがカスタムの org.apache.camel.component.jdbc.JdbcPrepareStatementStrategy を使用して、クエリーおよび準備済みステートメントの準備を制御できます。 | null | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.component.jdbc.dataSource | レジストリーからデータソースを検索する代わりに DataSource インスタンスを使用します。 | null | MEDIUM |
camel.component.jdbc.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.jdbc.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel-jdbc シンクコネクターには、そのまま使えるコンバーターがありません。
camel-jdbc シンクコネクターには、そのまま使える変換はありません。
camel-jdbc シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.15. camel-jms-kafka-connector のシンク設定
camel-jms-kafka-connector をシンクとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-jms-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのシンクコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.jms.CamelJmsSinkConnector
camel-jms シンクコネクターは、以下に示す 143 オプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.sink.path.destinationType | [queue]、[topic]、[temp-queue]、[temp-topic] のいずれかを使用する宛先の種類。 | "queue" | MEDIUM |
camel.sink.path.destinationName | 宛先として使用するキューまたはトピックの名前 | null | HIGH |
camel.sink.endpoint.clientId | 使用する JMS クライアント ID を設定します。この値は一意でなければならず、単一の JMS 接続インスタンスでのみ使用できることに注意してください。通常、永続トピックサブスクリプションにのみ必要です。Apache ActiveMQ を使用する場合は、代わりに Virtual Topics を使用することが推奨されます。 | null | MEDIUM |
camel.sink.endpoint.connectionFactory | 使用する接続ファクトリー。接続ファクトリーはコンポーネントまたはエンドポイントのいずれかで設定する必要があります。 | null | MEDIUM |
camel.sink.endpoint.disableReplyTo | Camel がメッセージの JMSReplyTo ヘッダーを無視するかどうかを指定します。true の場合、Camel は JMSReplyTo ヘッダーで指定された宛先に返信を返しません。Camel がルートから消費し、コードの別のコンポーネントがリプライメッセージを処理するため、Camel が自動的に応答メッセージを送りないようにするには、このオプションを使用できます。Camel を異なるメッセージブローカー間でプロキシーとして使用し、あるシステムから別のシステムへメッセージをルーティングする場合は、このオプションを使用することもできます。 | false | MEDIUM |
camel.sink.endpoint.durableSubscriptionName | 永続トピックサブスクリプションを指定するための永続サブスクライバー名。clientId オプションも設定する必要があります。 | null | MEDIUM |
camel.sink.endpoint.jmsMessageType | JMS メッセージの送信に、特定の javax.jms.Message 実装を強制的に使用できるようにします。使用できる値は、Bytes、Map、Object、Stream、Text です。デフォルトでは、Camel は In body タイプから使用する JMS メッセージタイプを決定します。このオプションを指定すると、指定できます。[Bytes]、[Map]、[Object]、[Stream]、[Text] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.testConnectionOnStartup | 起動時に接続をテストするかどうかを指定します。これにより、Camel が起動すると、すべての JMS コンシューマーが JMS ブローカーへの有効な接続になります。コネクションを許可できない場合、Camel は起動時に例外をスローします。これにより、Camel が接続の失敗で開始しないようになります。JMS プロデューサーもテストされています。 | false | MEDIUM |
camel.sink.endpoint.deliveryDelay | JMS の送信呼び出しに使用する配信遅延を設定します。このオプションには JMS 2.0 準拠のブローカーが必要です。 | -1L | MEDIUM |
camel.sink.endpoint.deliveryMode | 使用する配信モードを指定します。使用できる値は、javax.jms.DeliveryMode で定義される値です。NON_PERSISTENT = 1 and PERSISTENT = 2.次のいずれか: [1] [2] | null | MEDIUM |
camel.sink.endpoint.deliveryPersistent | 永続配信がデフォルトで使用されるかどうかを指定します。 | true | MEDIUM |
camel.sink.endpoint.explicitQosEnabled | メッセージの送信時に、サービスの deliveryMode、priority、または timeToLive qualities が使用される場合を設定します。このオプションは Spring の JmsTemplate に基づいています。deliveryMode、priority、および timeToLive オプションは、現在のエンドポイントに適用されます。これは、メッセージの粒度で操作する preserveMessageQos オプションとは対照的で、Camel In メッセージヘッダーからのみ QoS プロパティーを読み取ります。 | "false" | MEDIUM |
camel.sink.endpoint.formatDateHeadersToIso8601 | ISO 8601 標準に従って JMS 日付プロパティーをフォーマットするかどうかを設定します。 | false | MEDIUM |
camel.sink.endpoint.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.sink.endpoint.preserveMessageQos | JMS エンドポイントの QoS 設定の代わりに、メッセージに指定された QoS 設定を使用してメッセージを送信する場合は、true に設定します。以下の 3 つのヘッダーは JMSPriority、JMSDeliveryMode、および JMSExpiration とみなされます。提供できるのは、すべてまたは一部のみです。指定しないと、Camel は代わりにエンドポイントから値を使用するようにフォールバックします。そのため、このオプションを使用すると、ヘッダーはエンドポイントの値を上書きします。一方、explicitQosEnabled オプションはエンドポイントに設定されたオプションのみを使用し、メッセージヘッダーの値を使用しません。 | false | MEDIUM |
camel.sink.endpoint.priority | 1 より大きい値は送信時にメッセージの優先度を指定します(0 は優先度が最も低く、9 が最も高い値になります)。このオプションを有効にするには、explicitQosEnabled オプションも有効にする必要があります。以下のいずれか: [1] [2] [3] [4] [5] [6] [7] [8] [9] | 4 | MEDIUM |
camel.sink.endpoint.replyToConcurrentConsumers | JMS で要求/応答を実行する際の同時コンシューマーのデフォルト数を指定します。スレッドの動的スケールアップ/ダウンを制御する maxMessagesPerTask オプションも参照してください。 | 1 | MEDIUM |
camel.sink.endpoint.replyToMaxConcurrentConsumers | JMS 上でリクエスト/応答を使用する場合の同時コンシューマーの最大数を指定します。スレッドの動的スケールアップ/ダウンを制御する maxMessagesPerTask オプションも参照してください。 | null | MEDIUM |
camel.sink.endpoint.replyToOnTimeoutMaxConcurrent Consumers | JMS でリクエスト/リプライタイムアウトを使用する場合に、継続中のルーティングの同時コンシューマーの最大数を指定します。 | 1 | MEDIUM |
camel.sink.endpoint.replyToOverride | JMS メッセージで明示的な ReplyTo 宛先を提供します。これにより、ReplyTo の設定が上書きされます。メッセージをリモートキューへ転送し、ReplyTo 宛先からリプライメッセージを受信する場合に便利です。 | null | MEDIUM |
camel.sink.endpoint.replyToType | JMS で要求/応答を実行するときに replyTo キューに使用するストラテジーを明示的に指定できます。使用できる値は、Temporary、Shared、または Exclusive です。デフォルトでは、Camel は一時キューを使用します。ただし、responseTo が設定されている場合は、デフォルトで Shared が使用されます。このオプションを使用すると、共有キューの代わりに排他キューを使用できます。詳細は、Camel JMS ドキュメント を参照してください。特に、クラスター環境で実行している場合の影響に関する注意事項と、Shared 応答キューのパフォーマンスは、その代替時間または排他的なものよりも低下します。[Temporary]、[Shared]、[Exclusive] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.requestTimeout | InOut エクスチェンジパターン(ミリ秒単位)を使用する場合の応答を待機するタイムアウト。デフォルトは 20 秒です。ヘッダー CamelJmsRequestTimeout を含めると、このエンドポイントに設定されたタイムアウト値を上書きすることができます。そのため、メッセージごとに個別のタイムアウト値を設定できます。requestTimeoutCheckerInterval オプションも参照してください。 | 20000L | MEDIUM |
camel.sink.endpoint.timeToLive | メッセージを送信する場合、メッセージの存続時間(ミリ秒単位)を指定します。 | -1L | MEDIUM |
camel.sink.endpoint.allowAdditionalHeaders | このオプションは、JMS 仕様に従って無効な値がある可能性のある追加のヘッダーを許可するために使用されます。たとえば、WMQ などの一部のメッセージシステムは、バイト配列またはその他の無効な型を持つ値が含まれる接頭辞 JMS_IBM_MQMD_ を使用するヘッダー名を持つものです。複数のヘッダー名をコンマで区切って指定し、ワイルドカードのマッチングに使用する接尾辞として使用できます。 | null | MEDIUM |
camel.sink.endpoint.allowNullBody | ボディーのないメッセージの送信を許可するかどうか。このオプションが false で、メッセージボディーが null の場合、JMSException が発生します。 | true | MEDIUM |
camel.sink.endpoint.alwaysCopyMessage | true の場合、送信のためにプロデューサーに渡されるときに Camel は常にメッセージの JMS メッセージコピーを作成します。replyToDestinationSelectorName が設定されている場合など、メッセージのコピーは一部の状況で必要になります(replyToDestinationSelectorName が設定されている場合、Camel は alwaysCopyMessage オプションを true に設定します)。 | false | MEDIUM |
camel.sink.endpoint.correlationProperty | InOut 交換パターンを使用する場合は、JMSCorrelationID JMS プロパティーの代わりにこの JMS プロパティーを使用してメッセージを関連付けます。設定されたメッセージは、このプロパティー JMSCorrelationID プロパティーの値でのみ相関し、Camel によって設定されません。 | null | MEDIUM |
camel.sink.endpoint.disableTimeToLive | このオプションを使用して、ライブ時間を強制的に無効にします。たとえば、JMS でリクエスト/応答を行う場合、Camel はデフォルトで送信されるメッセージの有効期間として requestTimeout の値を使用します。この問題は、送信側および受信側システムにクロックを同期して同期する必要があることです。これは常に簡単にアーカイブできる訳ではありません。したがって、disableTimeToLive=true を使用して、送信されたメッセージで時間がライブ値を設定しないようにすることができます。その後、メッセージは受信側システムで期限切れになりません。詳細は、以下のセクションの「ライブ時間について」を参照してください。 | false | MEDIUM |
camel.sink.endpoint.forceSendOriginalMessage | mapJmsMessage=false を使用する場合、ルート中にヘッダー(get または set)を操作すると、Camel は新しい JMS 宛先に送信する新しい JMS メッセージを送信します。このオプションを true に設定して、Camel が受信した元の JMS メッセージを送信するように強制します。 | false | MEDIUM |
camel.sink.endpoint.includeSentJMSMessageID | InOnly を使用して JMS 宛先に送信する場合にのみ適用されます(例: fire and forget)。このオプションを有効にすると、Camel Exchange は、メッセージが JMS 宛先に送信されたときに JMS クライアントによって使用される実際の JMSMessageID でエンリッチされます。 | false | MEDIUM |
camel.sink.endpoint.replyToCacheLevelName | JMS で要求/応答を実行するときに、リプライコンシューマーの名前でキャッシュレベルを設定します。このオプションは、(一時的ではなく)固定応答キューを使用している場合に限り該当します。Camel はデフォルトで CACHE_CONSUMER(排他的の場合)または shared w/ replyToSelectorName を使用します。replyToSelectorName なしで共有される CACHE_SESSION。IBM WebSphere などの JMS ブローカーによっては、reToCacheLevelName=CACHE_NONE が機能するように設定する必要がある場合があります。注記: 一時キューを使用する場合は CACHE_NONE は許可されず、CACHE_CONSUMER や CACHE_SESSION などの高い値を使用する必要があります。[CACHE_AUTO]、[CACHE_CONNECTION]、[CACHE_CONSUMER]、[CACHE_NONE]、[CACHE_SESSION] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.replyToDestinationSelectorName | 共有キューの使用時に(一時的な応答キューを使用していない場合は)他のユーザーからの独自のリプライをフィルタリングできるように、固定名を使用して JMS セレクターを設定します。 | null | MEDIUM |
camel.sink.endpoint.streamMessageTypeEnabled | StreamMessage タイプが有効かどうかを指定します。ファイル、InputStream などのストリーミングタイプのメッセージペイロードは、BytesMessage または StreamMessage として送信されます。このオプションは、使用される種類を制御します。デフォルトでは、BytesMessage を使用して、メッセージペイロード全体をメモリーに読み込みます。このオプションを有効にすると、メッセージペイロードはチャンクのメモリーに読み取られ、各チャンクはデータがなくなるまで StreamMessage に書き込まれます。 | false | MEDIUM |
camel.sink.endpoint.allowSerializedHeaders | シリアライズされたヘッダーを含めるかどうかを制御します。transferExchange が true の場合にのみ適用されます。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化不可能なオブジェクトをすべて除外し、WARN レベルでログに記録されます。 | false | MEDIUM |
camel.sink.endpoint.artemisStreamingEnabled | Apache Artemis ストリーミングモードを最適化するかどうか。 | true | MEDIUM |
camel.sink.endpoint.asyncStartListener | ルートの開始時に JmsConsumer メッセージリスナーを非同期に起動するかどうか。たとえば、JmsConsumer がリモート JMS ブローカーへの接続を取得できない場合は、再試行中やフェイルオーバー中にブロックされる可能性があります。これにより、ルートの起動中に Camel がブロックされます。このオプションを true に設定すると、ルートの起動が可能になりますが、JmsConsumer は非同期モードで専用のスレッドを使用して JMS ブローカーに接続します。このオプションを使用すると、接続が確立されないと、WARN レベルで例外がログに記録され、コンシューマーはメッセージを受信できなくなります。次にルートを再起動して再試行できます。 | false | MEDIUM |
camel.sink.endpoint.asyncStopListener | ルートを停止するときに JmsConsumer メッセージリスナーを非同期的に停止するかどうか。 | false | MEDIUM |
camel.sink.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.sink.endpoint.destinationResolver | 独自のリゾルバーを使用できるプラグ可能な org.springframework.jms.support.destination.DestinationResolver(たとえば、JNDI レジストリーから実際の宛先を検索するためなど)。 | null | MEDIUM |
camel.sink.endpoint.errorHandler | メッセージの処理中にキャッチされない例外が発生した場合に呼び出される org.springframework.util.ErrorHandler を指定します。デフォルトでは、errorHandler が設定されていない場合、これらの例外は WARN レベルでログに記録されます。errorHandlerLoggingLevel および errorHandlerLogStackTrace オプションを使用して、ロギングレベルおよびスタックトレースをログに記録するかどうかを設定できます。これにより、カスタム errorHandler をコーディングする必要よりも、設定が非常に簡単になります。 | null | MEDIUM |
camel.sink.endpoint.exceptionListener | 基礎となる JMS 例外が通知される JMS 例外リスナーを指定します。 | null | MEDIUM |
camel.sink.endpoint.headerFilterStrategy | カスタム HeaderFilterStrategy を使用して Camel メッセージに対してヘッダーをフィルターします。 | null | MEDIUM |
camel.sink.endpoint.idleConsumerLimit | いつでもアイドル状態にできるコンシューマーの数の制限を指定します。 | 1 | MEDIUM |
camel.sink.endpoint.idleTaskExecutionLimit | 実行内でメッセージを受信せずに、受信タスクのアイドル実行の制限を指定します。この制限に達すると、タスクはシャットダウンし、他の実行中のタスク(動的なスケジューリングの場合は maxConcurrentConsumers の設定)を受信し続けます。Spring には追加のドキュメントがあります。 | 1 | MEDIUM |
camel.sink.endpoint.includeAllJMSXProperties | JMS から Camel メッセージへのマッピング時に、すべての JMSXxxx プロパティーを含めるかどうか。これを true に設定すると、JMSXAppID や JMSXUserID などのプロパティーが含まれます。注記: カスタムの headerFilterStrategy を使用している場合は、このオプションは適用されません。 | false | MEDIUM |
camel.sink.endpoint.jmsKeyFormatStrategy | JMS 鍵をエンコードおよびデコードするためのプラグ可能なストラテジー。これにより、JMS 仕様に準拠します。Camel は、追加設定なしで、default と passthrough の 2 つの実装を提供します。デフォルトのストラテジーは、ドットとハイフン(. および -)を安全にマーシャリングします。passthrough ストラテジーは、鍵をそのまま残します。JMS ヘッダーキーに不正な文字が含まれるかどうかは気にしない JMS ブローカーに使用できます。org.apache.camel.component.jms.JmsKeyFormatStrategy の独自の実装を提供し、# 表記を使用して参照できます。[default]、[passthrough] のいずれか。 | null | MEDIUM |
camel.sink.endpoint.mapJmsMessage | Camel が受信した JMS メッセージを適切なペイロードタイプ(javax.jms.TextMessage など)に自動マッピングするかどうかを指定します。 | true | MEDIUM |
camel.sink.endpoint.maxMessagesPerTask | タスクごとのメッセージ数。-1 は無制限です。同時コンシューマー(min max など)に範囲を使用する場合、このオプションを使用して値を eg 100 に設定して、作業が少なくなる場合にコンシューマーのスピードを制御することができます。 | -1 | MEDIUM |
camel.sink.endpoint.messageConverter | javax.jms.Message への/からのマップ方法を制御するため、カスタムの Spring org.springframework.jms.support.converter.MessageConverter を使用します。 | null | MEDIUM |
camel.sink.endpoint.messageCreatedStrategy | Camel が JMS メッセージを送信するときに Camel が javax.jms.Message オブジェクトの新規インスタンスを作成する際に呼び出される指定の MessageCreatedStrategy を使用します。 | null | MEDIUM |
camel.sink.endpoint.messageIdEnabled | 送信時に、メッセージ ID を追加するかどうかを指定します。これは JMS ブローカーへのヒントに過ぎません。JMS プロバイダーがこのヒントを受け入れる場合、これらのメッセージにはメッセージ ID が null に設定されている必要があります。プロバイダーがヒントを無視する場合は、メッセージ ID を通常の一意の値に設定する必要があります。 | true | MEDIUM |
camel.sink.endpoint.messageListenerContainer Factory | メッセージを消費するために使用する org.springframework.jms.listener.AbstractMessageListenerContainer を決定するために使用される MessageListenerContainerFactory のレジストリー ID。これを設定すると、consumerType が自動的に Custom に設定されます。 | null | MEDIUM |
camel.sink.endpoint.messageTimestampEnabled | メッセージの送信時にタイムスタンプをデフォルトで有効にするかどうかを指定します。これは JMS ブローカーへのヒントに過ぎません。JMS プロバイダーがこのヒントを受け入れる場合、これらのメッセージではタイムスタンプがゼロに設定される必要があります。プロバイダーがヒントを無視する場合は、タイムスタンプを通常の値に設定する必要があります。 | true | MEDIUM |
camel.sink.endpoint.pubSubNoLocal | 独自の接続によって公開されるメッセージの配信を抑制するかどうかを指定します。 | false | MEDIUM |
camel.sink.endpoint.receiveTimeout | メッセージの受信のタイムアウト(ミリ秒単位)。 | 1000L | MEDIUM |
camel.sink.endpoint.recoveryInterval | リカバリーを試行する間隔を指定します(例: 接続の更新時(ミリ秒単位)。デフォルトは 5000 ミリ秒で、5 秒です。 | 5000L | MEDIUM |
camel.sink.endpoint.requestTimeoutCheckerInterval | JMS でリクエスト/リプライを行うときに Camel がタイムアウトしたエクスチェンジをチェックする頻度を設定します。デフォルトでは、Camel は 1 秒ごとに 1 回チェックします。ただし、タイムアウトの発生時により迅速に対応する必要がある場合は、この間隔を減らしてより頻繁に確認できます。タイムアウトは、requestTimeout オプションで決定されます。 | 1000L | MEDIUM |
camel.sink.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.sink.endpoint.transferException | 有効にすると、リクエスト応答メッセージング(InOut)を使用し、エクスチェンジがコンシューマー側で失敗した場合、発生した例外は javax.jms.ObjectMessage として応答として返信されます。クライアントが Camel の場合、返された Exception が再スローされます。これにより、Camel JMS をルーティングのブリッジとして使用できます。たとえば、永続キューを使用して堅牢なルーティングを有効にすることができます。transferExchange も有効化されている場合には、このオプションが優先されます。例外がシリアライズ可能である必要があります。コンシューマー側の元の例外は、プロデューサーに戻されたときに org.apache.camel.RuntimeCamelException などの外部例外でラップできます。データは Java オブジェクトのシリアライゼーションを使用し、受信がクラスレベルでデータをデシリアライズできるようにする必要があります。これにより、プロデューサーとコンシューマー間で強力な結合が強制されます。 | false | MEDIUM |
camel.sink.endpoint.transferExchange | ボディーとヘッダーだけでなく、ネットワーク上でエクスチェンジを転送できます。次のフィールドが転送されます。本文、Out ボディー、フォールト本文、In ヘッダー、Out ヘッダー、フォールトヘッダー、エクスチェンジプロパティー、エクスチェンジ例外。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化不可能なオブジェクトをすべて除外し、WARN レベルでログに記録されます。プロデューサーとコンシューマー側の両方でこのオプションを有効にする必要があります。そのため、Camel はペイロードが通常のペイロードではなく Exchange を認識します。データは Java オブジェクトのシリアライゼーションを使用し、受信がクラスレベルでデータをデシリアライズできるようにする必要があります。これにより、互換性のある Camel バージョンを使用するプロデューサーとコンシューマー間で強力な結合が強制されます。 | false | MEDIUM |
camel.sink.endpoint.useMessageIDAsCorrelationID | InOut メッセージに対して JMSCorrelationID として常に JMSMessageID を使用するかどうかを指定します。 | false | MEDIUM |
camel.sink.endpoint.waitForProvisionCorrelationTo BeUpdatedCounter | request/reply over JMS を実行し、オプション useMessageIDAsCorrelationID が有効になっている場合に、プロビジョニング ID が実際の相関 ID に更新されるまで待機する回数。 | 50 | MEDIUM |
camel.sink.endpoint.waitForProvisionCorrelationTo BeUpdatedThreadSleepingTime | プロビジョニングの相関 ID の更新を待機する間に毎回スリープ状態になる間隔(ミリ秒単位)。 | 100L | MEDIUM |
camel.sink.endpoint.password | ConnectionFactory で使用するパスワード。また、ユーザー名/パスワードを ConnectionFactory に直接設定することもできます。 | null | MEDIUM |
camel.sink.endpoint.username | ConnectionFactory で使用するユーザー名。また、ユーザー名/パスワードを ConnectionFactory に直接設定することもできます。 | null | MEDIUM |
camel.sink.endpoint.transacted | トランザクションモードを使用するかどうかを指定します。 | false | MEDIUM |
camel.sink.endpoint.transactedInOut | このフラグが true に設定されている場合、InOut 操作(要求応答)のデフォルトが transacted モードを使用するように指定され、Spring JmsTemplate には sessionTransacted が true に設定され、InOut 操作に使用される JmsTemplate で acknowledgeMode がトランザクションとして処理されるかどうかを指定します。Spring JMS から: JTA トランザクション内で createQueue に渡されるパラメーター createTopic メソッドは考慮されません。Java EE トランザクションコンテキストに応じて、コンテナーはこれらの値に対して独自の決定を行います。この場合、Spring JMS は既存の JMS セッションで動作するため、これらのパラメーターはローカルで管理されるトランザクション内で考慮されません。このフラグを true に設定すると、管理トランザクション外で実行される場合は短いローカル JMS トランザクションが使用され、管理トランザクション(XA トランザクション以外)が存在する場合に同期されたローカル JMS トランザクションが使用されます。これは、メインのトランザクションとともに管理されるローカル JMS トランザクション(ネイティブ JDBC トランザクションである可能性がある)の影響を受け、JMS トランザクションはメイントランザクションの直後にコミットされます。 | false | MEDIUM |
camel.sink.endpoint.lazyCreateTransactionManager | true の場合、transacted=true オプション時に transactionManager が挿入されていない場合、Camel は JmsTransactionManager を作成します。 | true | MEDIUM |
camel.sink.endpoint.transactionManager | 使用する Spring トランザクションマネージャー。 | null | MEDIUM |
camel.sink.endpoint.transactionName | 使用するトランザクションの名前。 | null | MEDIUM |
camel.sink.endpoint.transactionTimeout | トランザクションモードを使用している場合は、トランザクションのタイムアウト値(秒単位)。 | -1 | MEDIUM |
camel.component.jms.clientId | 使用する JMS クライアント ID を設定します。この値は一意でなければならず、単一の JMS 接続インスタンスでのみ使用できることに注意してください。通常、永続トピックサブスクリプションにのみ必要です。Apache ActiveMQ を使用する場合は、代わりに Virtual Topics を使用することが推奨されます。 | null | MEDIUM |
camel.component.jms.connectionFactory | 使用する接続ファクトリー。接続ファクトリーはコンポーネントまたはエンドポイントのいずれかで設定する必要があります。 | null | MEDIUM |
camel.component.jms.disableReplyTo | Camel がメッセージの JMSReplyTo ヘッダーを無視するかどうかを指定します。true の場合、Camel は JMSReplyTo ヘッダーで指定された宛先に返信を返しません。Camel がルートから消費し、コードの別のコンポーネントがリプライメッセージを処理するため、Camel が自動的に応答メッセージを送りないようにするには、このオプションを使用できます。Camel を異なるメッセージブローカー間でプロキシーとして使用し、あるシステムから別のシステムへメッセージをルーティングする場合は、このオプションを使用することもできます。 | false | MEDIUM |
camel.component.jms.durableSubscriptionName | 永続トピックサブスクリプションを指定するための永続サブスクライバー名。clientId オプションも設定する必要があります。 | null | MEDIUM |
camel.component.jms.jmsMessageType | JMS メッセージの送信に、特定の javax.jms.Message 実装を強制的に使用できるようにします。使用できる値は、Bytes、Map、Object、Stream、Text です。デフォルトでは、Camel は In body タイプから使用する JMS メッセージタイプを決定します。このオプションを指定すると、指定できます。[Bytes]、[Map]、[Object]、[Stream]、[Text] のいずれか。 | null | MEDIUM |
camel.component.jms.testConnectionOnStartup | 起動時に接続をテストするかどうかを指定します。これにより、Camel が起動すると、すべての JMS コンシューマーが JMS ブローカーへの有効な接続になります。コネクションを許可できない場合、Camel は起動時に例外をスローします。これにより、Camel が接続の失敗で開始しないようになります。JMS プロデューサーもテストされています。 | false | MEDIUM |
camel.component.jms.deliveryDelay | JMS の送信呼び出しに使用する配信遅延を設定します。このオプションには JMS 2.0 準拠のブローカーが必要です。 | -1L | MEDIUM |
camel.component.jms.deliveryMode | 使用する配信モードを指定します。使用できる値は、javax.jms.DeliveryMode で定義される値です。NON_PERSISTENT = 1 and PERSISTENT = 2.次のいずれか: [1] [2] | null | MEDIUM |
camel.component.jms.deliveryPersistent | 永続配信がデフォルトで使用されるかどうかを指定します。 | true | MEDIUM |
camel.component.jms.explicitQosEnabled | メッセージの送信時に、サービスの deliveryMode、priority、または timeToLive qualities が使用される場合を設定します。このオプションは Spring の JmsTemplate に基づいています。deliveryMode、priority、および timeToLive オプションは、現在のエンドポイントに適用されます。これは、メッセージの粒度で操作する preserveMessageQos オプションとは対照的で、Camel In メッセージヘッダーからのみ QoS プロパティーを読み取ります。 | "false" | MEDIUM |
camel.component.jms.formatDateHeadersToIso8601 | ISO 8601 標準に従って JMS 日付プロパティーをフォーマットするかどうかを設定します。 | false | MEDIUM |
camel.component.jms.lazyStartProducer | 最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | MEDIUM |
camel.component.jms.preserveMessageQos | JMS エンドポイントの QoS 設定の代わりに、メッセージに指定された QoS 設定を使用してメッセージを送信する場合は、true に設定します。以下の 3 つのヘッダーは JMSPriority、JMSDeliveryMode、および JMSExpiration とみなされます。提供できるのは、すべてまたは一部のみです。指定しないと、Camel は代わりにエンドポイントから値を使用するようにフォールバックします。そのため、このオプションを使用すると、ヘッダーはエンドポイントの値を上書きします。一方、explicitQosEnabled オプションはエンドポイントに設定されたオプションのみを使用し、メッセージヘッダーの値を使用しません。 | false | MEDIUM |
camel.component.jms.priority | 1 より大きい値は送信時にメッセージの優先度を指定します(0 は優先度が最も低く、9 が最も高い値になります)。このオプションを有効にするには、explicitQosEnabled オプションも有効にする必要があります。以下のいずれか: [1] [2] [3] [4] [5] [6] [7] [8] [9] | 4 | MEDIUM |
camel.component.jms.replyToConcurrentConsumers | JMS で要求/応答を実行する際の同時コンシューマーのデフォルト数を指定します。スレッドの動的スケールアップ/ダウンを制御する maxMessagesPerTask オプションも参照してください。 | 1 | MEDIUM |
camel.component.jms.replyToMaxConcurrentConsumers | JMS 上でリクエスト/応答を使用する場合の同時コンシューマーの最大数を指定します。スレッドの動的スケールアップ/ダウンを制御する maxMessagesPerTask オプションも参照してください。 | null | MEDIUM |
camel.component.jms.replyToOnTimeoutMaxConcurrent Consumers | JMS でリクエスト/リプライタイムアウトを使用する場合に、継続中のルーティングの同時コンシューマーの最大数を指定します。 | 1 | MEDIUM |
camel.component.jms.replyToOverride | JMS メッセージで明示的な ReplyTo 宛先を提供します。これにより、ReplyTo の設定が上書きされます。メッセージをリモートキューへ転送し、ReplyTo 宛先からリプライメッセージを受信する場合に便利です。 | null | MEDIUM |
camel.component.jms.replyToType | JMS で要求/応答を実行するときに replyTo キューに使用するストラテジーを明示的に指定できます。使用できる値は、Temporary、Shared、または Exclusive です。デフォルトでは、Camel は一時キューを使用します。ただし、responseTo が設定されている場合は、デフォルトで Shared が使用されます。このオプションを使用すると、共有キューの代わりに排他キューを使用できます。詳細は、Camel JMS ドキュメント を参照してください。特に、クラスター環境で実行している場合の影響に関する注意事項と、Shared 応答キューのパフォーマンスは、その代替時間または排他的なものよりも低下します。[Temporary]、[Shared]、[Exclusive] のいずれか。 | null | MEDIUM |
camel.component.jms.requestTimeout | InOut エクスチェンジパターン(ミリ秒単位)を使用する場合の応答を待機するタイムアウト。デフォルトは 20 秒です。ヘッダー CamelJmsRequestTimeout を含めると、このエンドポイントに設定されたタイムアウト値を上書きすることができます。そのため、メッセージごとに個別のタイムアウト値を設定できます。requestTimeoutCheckerInterval オプションも参照してください。 | 20000L | MEDIUM |
camel.component.jms.timeToLive | メッセージを送信する場合、メッセージの存続時間(ミリ秒単位)を指定します。 | -1L | MEDIUM |
camel.component.jms.allowAdditionalHeaders | このオプションは、JMS 仕様に従って無効な値がある可能性のある追加のヘッダーを許可するために使用されます。たとえば、WMQ などの一部のメッセージシステムは、バイト配列またはその他の無効な型を持つ値が含まれる接頭辞 JMS_IBM_MQMD_ を使用するヘッダー名を持つものです。複数のヘッダー名をコンマで区切って指定し、ワイルドカードのマッチングに使用する接尾辞として使用できます。 | null | MEDIUM |
camel.component.jms.allowNullBody | ボディーのないメッセージの送信を許可するかどうか。このオプションが false で、メッセージボディーが null の場合、JMSException が発生します。 | true | MEDIUM |
camel.component.jms.alwaysCopyMessage | true の場合、送信のためにプロデューサーに渡されるときに Camel は常にメッセージの JMS メッセージコピーを作成します。replyToDestinationSelectorName が設定されている場合など、メッセージのコピーは一部の状況で必要になります(replyToDestinationSelectorName が設定されている場合、Camel は alwaysCopyMessage オプションを true に設定します)。 | false | MEDIUM |
camel.component.jms.correlationProperty | InOut 交換パターンを使用する場合は、JMSCorrelationID JMS プロパティーの代わりにこの JMS プロパティーを使用してメッセージを関連付けます。設定されたメッセージは、このプロパティー JMSCorrelationID プロパティーの値でのみ相関し、Camel によって設定されません。 | null | MEDIUM |
camel.component.jms.disableTimeToLive | このオプションを使用して、ライブ時間を強制的に無効にします。たとえば、JMS でリクエスト/応答を行う場合、Camel はデフォルトで送信されるメッセージの有効期間として requestTimeout の値を使用します。この問題は、送信側および受信側システムにクロックを同期して同期する必要があることです。これは常に簡単にアーカイブできる訳ではありません。したがって、disableTimeToLive=true を使用して、送信されたメッセージで時間がライブ値を設定しないようにすることができます。その後、メッセージは受信側システムで期限切れになりません。詳細は、以下のセクションの「ライブ時間について」を参照してください。 | false | MEDIUM |
camel.component.jms.forceSendOriginalMessage | mapJmsMessage=false を使用する場合、ルート中にヘッダー(get または set)を操作すると、Camel は新しい JMS 宛先に送信する新しい JMS メッセージを送信します。このオプションを true に設定して、Camel が受信した元の JMS メッセージを送信するように強制します。 | false | MEDIUM |
camel.component.jms.includeSentJMSMessageID | InOnly を使用して JMS 宛先に送信する場合にのみ適用されます(例: fire and forget)。このオプションを有効にすると、Camel Exchange は、メッセージが JMS 宛先に送信されたときに JMS クライアントによって使用される実際の JMSMessageID でエンリッチされます。 | false | MEDIUM |
camel.component.jms.replyToCacheLevelName | JMS で要求/応答を実行するときに、リプライコンシューマーの名前でキャッシュレベルを設定します。このオプションは、(一時的ではなく)固定応答キューを使用している場合に限り該当します。Camel はデフォルトで CACHE_CONSUMER(排他的の場合)または shared w/ replyToSelectorName を使用します。replyToSelectorName なしで共有される CACHE_SESSION。IBM WebSphere などの JMS ブローカーによっては、reToCacheLevelName=CACHE_NONE が機能するように設定する必要がある場合があります。注記: 一時キューを使用する場合は CACHE_NONE は許可されず、CACHE_CONSUMER や CACHE_SESSION などの高い値を使用する必要があります。[CACHE_AUTO]、[CACHE_CONNECTION]、[CACHE_CONSUMER]、[CACHE_NONE]、[CACHE_SESSION] のいずれか。 | null | MEDIUM |
camel.component.jms.replyToDestinationSelectorName | 共有キューの使用時に(一時的な応答キューを使用していない場合は)他のユーザーからの独自のリプライをフィルタリングできるように、固定名を使用して JMS セレクターを設定します。 | null | MEDIUM |
camel.component.jms.streamMessageTypeEnabled | StreamMessage タイプが有効かどうかを指定します。ファイル、InputStream などのストリーミングタイプのメッセージペイロードは、BytesMessage または StreamMessage として送信されます。このオプションは、使用される種類を制御します。デフォルトでは、BytesMessage を使用して、メッセージペイロード全体をメモリーに読み込みます。このオプションを有効にすると、メッセージペイロードはチャンクのメモリーに読み取られ、各チャンクはデータがなくなるまで StreamMessage に書き込まれます。 | false | MEDIUM |
camel.component.jms.allowAutoWiredConnection Factory | 接続ファクトリーが設定されていない場合に、レジストリーから ConnectionFactory を自動検出するかどうか。ConnectionFactory の 1 つのインスタンスのみが見つかると、そのインスタンスが使用されます。これはデフォルトで有効になっています。 | true | MEDIUM |
camel.component.jms.allowAutoWiredDestination Resolver | 宛先リゾルバーが設定されていない場合には、レジストリーから DestinationResolver を自動検出するかどうか。DestinationResolver のインスタンスが 1 つだけ見つかった場合は、それが使用されます。これはデフォルトで有効になっています。 | true | MEDIUM |
camel.component.jms.allowSerializedHeaders | シリアライズされたヘッダーを含めるかどうかを制御します。transferExchange が true の場合にのみ適用されます。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化不可能なオブジェクトをすべて除外し、WARN レベルでログに記録されます。 | false | MEDIUM |
camel.component.jms.artemisStreamingEnabled | Apache Artemis ストリーミングモードを最適化するかどうか。 | true | MEDIUM |
camel.component.jms.asyncStartListener | ルートの開始時に JmsConsumer メッセージリスナーを非同期に起動するかどうか。たとえば、JmsConsumer がリモート JMS ブローカーへの接続を取得できない場合は、再試行中やフェイルオーバー中にブロックされる可能性があります。これにより、ルートの起動中に Camel がブロックされます。このオプションを true に設定すると、ルートの起動が可能になりますが、JmsConsumer は非同期モードで専用のスレッドを使用して JMS ブローカーに接続します。このオプションを使用すると、接続が確立されないと、WARN レベルで例外がログに記録され、コンシューマーはメッセージを受信できなくなります。次にルートを再起動して再試行できます。 | false | MEDIUM |
camel.component.jms.asyncStopListener | ルートを停止するときに JmsConsumer メッセージリスナーを非同期的に停止するかどうか。 | false | MEDIUM |
camel.component.jms.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.jms.configuration | 共有 JMS 設定を使用するには、以下を実行します。 | null | MEDIUM |
camel.component.jms.destinationResolver | 独自のリゾルバーを使用できるプラグ可能な org.springframework.jms.support.destination.DestinationResolver(たとえば、JNDI レジストリーから実際の宛先を検索するためなど)。 | null | MEDIUM |
camel.component.jms.errorHandler | メッセージの処理中にキャッチされない例外が発生した場合に呼び出される org.springframework.util.ErrorHandler を指定します。デフォルトでは、errorHandler が設定されていない場合、これらの例外は WARN レベルでログに記録されます。errorHandlerLoggingLevel および errorHandlerLogStackTrace オプションを使用して、ロギングレベルおよびスタックトレースをログに記録するかどうかを設定できます。これにより、カスタム errorHandler をコーディングする必要よりも、設定が非常に簡単になります。 | null | MEDIUM |
camel.component.jms.exceptionListener | 基礎となる JMS 例外が通知される JMS 例外リスナーを指定します。 | null | MEDIUM |
camel.component.jms.idleConsumerLimit | いつでもアイドル状態にできるコンシューマーの数の制限を指定します。 | 1 | MEDIUM |
camel.component.jms.idleTaskExecutionLimit | 実行内でメッセージを受信せずに、受信タスクのアイドル実行の制限を指定します。この制限に達すると、タスクはシャットダウンし、他の実行中のタスク(動的なスケジューリングの場合は maxConcurrentConsumers の設定)を受信し続けます。Spring には追加のドキュメントがあります。 | 1 | MEDIUM |
camel.component.jms.includeAllJMSXProperties | JMS から Camel メッセージへのマッピング時に、すべての JMSXxxx プロパティーを含めるかどうか。これを true に設定すると、JMSXAppID や JMSXUserID などのプロパティーが含まれます。注記: カスタムの headerFilterStrategy を使用している場合は、このオプションは適用されません。 | false | MEDIUM |
camel.component.jms.jmsKeyFormatStrategy | JMS 鍵をエンコードおよびデコードするためのプラグ可能なストラテジー。これにより、JMS 仕様に準拠します。Camel は、追加設定なしで、default と passthrough の 2 つの実装を提供します。デフォルトのストラテジーは、ドットとハイフン(. および -)を安全にマーシャリングします。passthrough ストラテジーは、鍵をそのまま残します。JMS ヘッダーキーに不正な文字が含まれるかどうかは気にしない JMS ブローカーに使用できます。org.apache.camel.component.jms.JmsKeyFormatStrategy の独自の実装を提供し、# 表記を使用して参照できます。[default]、[passthrough] のいずれか。 | null | MEDIUM |
camel.component.jms.mapJmsMessage | Camel が受信した JMS メッセージを適切なペイロードタイプ(javax.jms.TextMessage など)に自動マッピングするかどうかを指定します。 | true | MEDIUM |
camel.component.jms.maxMessagesPerTask | タスクごとのメッセージ数。-1 は無制限です。同時コンシューマー(min max など)に範囲を使用する場合、このオプションを使用して値を eg 100 に設定して、作業が少なくなる場合にコンシューマーのスピードを制御することができます。 | -1 | MEDIUM |
camel.component.jms.messageConverter | javax.jms.Message への/からのマップ方法を制御するため、カスタムの Spring org.springframework.jms.support.converter.MessageConverter を使用します。 | null | MEDIUM |
camel.component.jms.messageCreatedStrategy | Camel が JMS メッセージを送信するときに Camel が javax.jms.Message オブジェクトの新規インスタンスを作成する際に呼び出される指定の MessageCreatedStrategy を使用します。 | null | MEDIUM |
camel.component.jms.messageIdEnabled | 送信時に、メッセージ ID を追加するかどうかを指定します。これは JMS ブローカーへのヒントに過ぎません。JMS プロバイダーがこのヒントを受け入れる場合、これらのメッセージにはメッセージ ID が null に設定されている必要があります。プロバイダーがヒントを無視する場合は、メッセージ ID を通常の一意の値に設定する必要があります。 | true | MEDIUM |
camel.component.jms.messageListenerContainer Factory | メッセージを消費するために使用する org.springframework.jms.listener.AbstractMessageListenerContainer を決定するために使用される MessageListenerContainerFactory のレジストリー ID。これを設定すると、consumerType が自動的に Custom に設定されます。 | null | MEDIUM |
camel.component.jms.messageTimestampEnabled | メッセージの送信時にタイムスタンプをデフォルトで有効にするかどうかを指定します。これは JMS ブローカーへのヒントに過ぎません。JMS プロバイダーがこのヒントを受け入れる場合、これらのメッセージではタイムスタンプがゼロに設定される必要があります。プロバイダーがヒントを無視する場合は、タイムスタンプを通常の値に設定する必要があります。 | true | MEDIUM |
camel.component.jms.pubSubNoLocal | 独自の接続によって公開されるメッセージの配信を抑制するかどうかを指定します。 | false | MEDIUM |
camel.component.jms.queueBrowseStrategy | キューの参照時にカスタム QueueBrowseStrategy を使用する | null | MEDIUM |
camel.component.jms.receiveTimeout | メッセージの受信のタイムアウト(ミリ秒単位)。 | 1000L | MEDIUM |
camel.component.jms.recoveryInterval | リカバリーを試行する間隔を指定します(例: 接続の更新時(ミリ秒単位)。デフォルトは 5000 ミリ秒で、5 秒です。 | 5000L | MEDIUM |
camel.component.jms.requestTimeoutCheckerInterval | JMS でリクエスト/リプライを行うときに Camel がタイムアウトしたエクスチェンジをチェックする頻度を設定します。デフォルトでは、Camel は 1 秒ごとに 1 回チェックします。ただし、タイムアウトの発生時により迅速に対応する必要がある場合は、この間隔を減らしてより頻繁に確認できます。タイムアウトは、requestTimeout オプションで決定されます。 | 1000L | MEDIUM |
camel.component.jms.transferException | 有効にすると、リクエスト応答メッセージング(InOut)を使用し、エクスチェンジがコンシューマー側で失敗した場合、発生した例外は javax.jms.ObjectMessage として応答として返信されます。クライアントが Camel の場合、返された Exception が再スローされます。これにより、Camel JMS をルーティングのブリッジとして使用できます。たとえば、永続キューを使用して堅牢なルーティングを有効にすることができます。transferExchange も有効化されている場合には、このオプションが優先されます。例外がシリアライズ可能である必要があります。コンシューマー側の元の例外は、プロデューサーに戻されたときに org.apache.camel.RuntimeCamelException などの外部例外でラップできます。データは Java オブジェクトのシリアライゼーションを使用し、受信がクラスレベルでデータをデシリアライズできるようにする必要があります。これにより、プロデューサーとコンシューマー間で強力な結合が強制されます。 | false | MEDIUM |
camel.component.jms.transferExchange | ボディーとヘッダーだけでなく、ネットワーク上でエクスチェンジを転送できます。次のフィールドが転送されます。本文、Out ボディー、フォールト本文、In ヘッダー、Out ヘッダー、フォールトヘッダー、エクスチェンジプロパティー、エクスチェンジ例外。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化不可能なオブジェクトをすべて除外し、WARN レベルでログに記録されます。プロデューサーとコンシューマー側の両方でこのオプションを有効にする必要があります。そのため、Camel はペイロードが通常のペイロードではなく Exchange を認識します。データは Java オブジェクトのシリアライゼーションを使用し、受信がクラスレベルでデータをデシリアライズできるようにする必要があります。これにより、互換性のある Camel バージョンを使用するプロデューサーとコンシューマー間で強力な結合が強制されます。 | false | MEDIUM |
camel.component.jms.useMessageIDAsCorrelationID | InOut メッセージに対して JMSCorrelationID として常に JMSMessageID を使用するかどうかを指定します。 | false | MEDIUM |
camel.component.jms.waitForProvisionCorrelationTo BeUpdatedCounter | request/reply over JMS を実行し、オプション useMessageIDAsCorrelationID が有効になっている場合に、プロビジョニング ID が実際の相関 ID に更新されるまで待機する回数。 | 50 | MEDIUM |
camel.component.jms.waitForProvisionCorrelationTo BeUpdatedThreadSleepingTime | プロビジョニングの相関 ID の更新を待機する間に毎回スリープ状態になる間隔(ミリ秒単位)。 | 100L | MEDIUM |
camel.component.jms.headerFilterStrategy | カスタムの org.apache.camel.spi.HeaderFilterStrategy を使用して、Camel メッセージとの間でヘッダーをフィルターします。 | null | MEDIUM |
camel.component.jms.password | ConnectionFactory で使用するパスワード。また、ユーザー名/パスワードを ConnectionFactory に直接設定することもできます。 | null | MEDIUM |
camel.component.jms.username | ConnectionFactory で使用するユーザー名。また、ユーザー名/パスワードを ConnectionFactory に直接設定することもできます。 | null | MEDIUM |
camel.component.jms.transacted | トランザクションモードを使用するかどうかを指定します。 | false | MEDIUM |
camel.component.jms.transactedInOut | このフラグが true に設定されている場合、InOut 操作(要求応答)のデフォルトが transacted モードを使用するように指定され、Spring JmsTemplate には sessionTransacted が true に設定され、InOut 操作に使用される JmsTemplate で acknowledgeMode がトランザクションとして処理されるかどうかを指定します。Spring JMS から: JTA トランザクション内で createQueue に渡されるパラメーター createTopic メソッドは考慮されません。Java EE トランザクションコンテキストに応じて、コンテナーはこれらの値に対して独自の決定を行います。この場合、Spring JMS は既存の JMS セッションで動作するため、これらのパラメーターはローカルで管理されるトランザクション内で考慮されません。このフラグを true に設定すると、管理トランザクション外で実行される場合は短いローカル JMS トランザクションが使用され、管理トランザクション(XA トランザクション以外)が存在する場合に同期されたローカル JMS トランザクションが使用されます。これは、メインのトランザクションとともに管理されるローカル JMS トランザクション(ネイティブ JDBC トランザクションである可能性がある)の影響を受け、JMS トランザクションはメイントランザクションの直後にコミットされます。 | false | MEDIUM |
camel.component.jms.lazyCreateTransactionManager | true の場合、transacted=true オプション時に transactionManager が挿入されていない場合、Camel は JmsTransactionManager を作成します。 | true | MEDIUM |
camel.component.jms.transactionManager | 使用する Spring トランザクションマネージャー。 | null | MEDIUM |
camel.component.jms.transactionName | 使用するトランザクションの名前。 | null | MEDIUM |
camel.component.jms.transactionTimeout | トランザクションモードを使用している場合は、トランザクションのタイムアウト値(秒単位)。 | -1 | MEDIUM |
camel-jms シンクコネクターには、そのまま使えるコンバーターがありません。
camel-jms シンクコネクターには、そのまま使える変換はありません。
camel-jms シンクコネクターにはそのまま使える集約ストラテジーがありません。
5.16. camel-jms-kafka-connector ソース設定
camel-jms-kafka-connector をソースとして使用する場合、以下の Maven 依存関係を使用してコネクターをサポートするようにしてください。
<dependency> <groupId>org.apache.camel.kafkaconnector</groupId> <artifactId>camel-jms-kafka-connector</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel Kafka connector version --> </dependency>
Kafka コネクションでこのソースコネクターを使用するには、以下の connector.class を設定する必要があります。
connector.class=org.apache.camel.kafkaconnector.jms.CamelJmsSourceConnector
camel-jms ソースコネクターは、以下に示す 143 オプションをサポートします。
名前 | 説明 | デフォルト | Priority |
---|---|---|---|
camel.source.path.destinationType | [queue]、[topic]、[temp-queue]、[temp-topic] のいずれかを使用する宛先の種類。 | "queue" | MEDIUM |
camel.source.path.destinationName | 宛先として使用するキューまたはトピックの名前 | null | HIGH |
camel.source.endpoint.clientId | 使用する JMS クライアント ID を設定します。この値は一意でなければならず、単一の JMS 接続インスタンスでのみ使用できることに注意してください。通常、永続トピックサブスクリプションにのみ必要です。Apache ActiveMQ を使用する場合は、代わりに Virtual Topics を使用することが推奨されます。 | null | MEDIUM |
camel.source.endpoint.connectionFactory | 使用する接続ファクトリー。接続ファクトリーはコンポーネントまたはエンドポイントのいずれかで設定する必要があります。 | null | MEDIUM |
camel.source.endpoint.disableReplyTo | Camel がメッセージの JMSReplyTo ヘッダーを無視するかどうかを指定します。true の場合、Camel は JMSReplyTo ヘッダーで指定された宛先に返信を返しません。Camel がルートから消費し、コードの別のコンポーネントがリプライメッセージを処理するため、Camel が自動的に応答メッセージを送りないようにするには、このオプションを使用できます。Camel を異なるメッセージブローカー間でプロキシーとして使用し、あるシステムから別のシステムへメッセージをルーティングする場合は、このオプションを使用することもできます。 | false | MEDIUM |
camel.source.endpoint.durableSubscriptionName | 永続トピックサブスクリプションを指定するための永続サブスクライバー名。clientId オプションも設定する必要があります。 | null | MEDIUM |
camel.source.endpoint.jmsMessageType | JMS メッセージの送信に、特定の javax.jms.Message 実装を強制的に使用できるようにします。使用できる値は、Bytes、Map、Object、Stream、Text です。デフォルトでは、Camel は In body タイプから使用する JMS メッセージタイプを決定します。このオプションを指定すると、指定できます。[Bytes]、[Map]、[Object]、[Stream]、[Text] のいずれか。 | null | MEDIUM |
camel.source.endpoint.testConnectionOnStartup | 起動時に接続をテストするかどうかを指定します。これにより、Camel が起動すると、すべての JMS コンシューマーが JMS ブローカーへの有効な接続になります。コネクションを許可できない場合、Camel は起動時に例外をスローします。これにより、Camel が接続の失敗で開始しないようになります。JMS プロデューサーもテストされています。 | false | MEDIUM |
camel.source.endpoint.acknowledgementModeName | JMS 確認名。SESSION_TRANSACTED、CLIENT_ACKNOWLEDGE、AUTO_ACKNOWLEDGE、DUPS_OK_ACKNOWLEDGE One of: [SESSION_TRANSACTED] [CLIENT_ACKNOWLEDGE] [AUTO_ACKNOWLEDGE] [AUTO_ACKNOWLEDGE] [DUPS_OK_ACKNOWLEDGE] のいずれか。 | "AUTO_ACKNOWLEDGE" | MEDIUM |
camel.source.endpoint.asyncConsumer | JmsConsumer が Exchange を非同期的に処理するかどうか。有効にすると、JmsConsumer は JMS キューから次のメッセージを取得し、以前のメッセージは非同期で処理されます(非同期ルーティングエンジンにより)。つまり、メッセージは 100% を厳密に順番に処理できます。無効にすると(デフォルト)、JmsConsumer が JMS キューから次のメッセージを取得する前に Exchange が完全に処理されます。トランザクション処理が有効になっている場合、非同期Consumer=true は非同期的に実行されません。トランザクションは同期的に実行される必要があるため(Camel 3.0 は非同期トランザクションをサポートする可能性があります)。 | false | MEDIUM |
camel.source.endpoint.autoStartup | コンシューマーコンテナーが自動起動すべきかどうかを指定します。 | true | MEDIUM |
camel.source.endpoint.cacheLevel | ベースにある JMS リソースの ID でキャッシュレベルを設定します。詳細は、cacheLevelName オプションを参照してください。 | null | MEDIUM |
camel.source.endpoint.cacheLevelName | ベースにある JMS リソースの名前でキャッシュレベルを設定します。使用できる値は、CACHE_AUTO、CACHE_CONNECTION、CACHE_CONSUMER、CACHE_NONE、CACHE_SESSION です。デフォルト設定は CACHE_AUTO です。詳細は、Spring ドキュメント および Transactions Cache Levels を参照してください。[CACHE_AUTO]、[CACHE_CONNECTION]、[CACHE_CONSUMER]、[CACHE_NONE]、[CACHE_SESSION] のいずれか。 | "CACHE_AUTO" | MEDIUM |
camel.source.endpoint.concurrentConsumers | (JMS 上でリクエストや応答ではなく)JMS から消費する場合の同時コンシューマーのデフォルト数を指定します。スレッドの動的スケールアップ/ダウンを制御する maxMessagesPerTask オプションも参照してください。JMS で要求/応答を行う場合、オプション replyToConcurrentConsumers を使用して、リプライメッセージリスナーで同時コンシューマーの数を制御します。 | 1 | MEDIUM |
camel.source.endpoint.maxConcurrentConsumers | (JMS 上でリクエストや応答ではなく)JMS から消費する場合の同時コンシューマーの最大数を指定します。スレッドの動的スケールアップ/ダウンを制御する maxMessagesPerTask オプションも参照してください。JMS で要求/応答を行う場合、オプション replyToMaxConcurrentConsumers を使用して、リプライメッセージリスナーで同時コンシューマーの数を制御します。 | null | MEDIUM |
camel.source.endpoint.replyTo | Message.getJMSReplyTo()の着信値を上書きする明示的な ReplyTo 宛先を提供します。 | null | MEDIUM |
camel.source.endpoint.replyToDeliveryPersistent | 返信に永続配信を使用するかどうかを指定します。 | true | MEDIUM |
camel.source.endpoint.selector | 使用する JMS セレクターを設定します。 | null | MEDIUM |
camel.source.endpoint.subscriptionDurable | サブスクリプションを永続化するかどうかを設定します。使用する永続サブスクリプション名は、subscriptionName プロパティーから指定できます。デフォルトは false です。通常、永続サブスクリプションを登録するには、これを true に設定します(メッセージリスナークラス名がサブスクリプション名として適切である場合)。トピックをリッスンする場合にのみ(pub-sub ドメイン)、このメソッドは pubSubDomain フラグも切り替えます。 | false | MEDIUM |
camel.source.endpoint.subscriptionName | 作成するサブスクリプションの名前を設定します。共有サブスクリプションまたは永続サブスクリプションがあるトピック(pub-sub ドメイン)の場合に適用できます。サブスクリプション名は、クライアントの JMS クライアント ID 内で一意である必要があります。default は、指定されたメッセージリスナーのクラス名です。注記: 共有サブスクリプション(JMS 2.0 が必要)を除き、サブスクリプションごとに 1 つの同時コンシューマー(このメッセージリスナーコンテナーのデフォルト)のみが許可されます。 | null | MEDIUM |
camel.source.endpoint.subscriptionShared | サブスクリプションを共有するかどうかを設定します。使用する共有サブスクリプション名は、subscriptionName プロパティーから指定できます。デフォルトは false です。共有サブスクリプションを登録するには、true に設定します。通常、subscriptionName の値と併用します(メッセージリスナークラス名がサブスクリプション名として適切である場合)。共有サブスクリプションも永続的である可能性があるため、このフラグは subscriptionDurable と組み合わせることもできます。トピックをリッスンする場合にのみ(pub-sub ドメイン)、このメソッドは pubSubDomain フラグも切り替えます。JMS 2.0 と互換性のあるメッセージブローカーが必要です。 | false | MEDIUM |
camel.source.endpoint.acceptMessagesWhileStopping | 停止中にコンシューマーがメッセージを受け入れるかどうかを指定します。実行時に JMS ルートを開始および停止する場合に、キューでキューにまだキューに追加されたメッセージがある場合も、このオプションの有効化を検討してください。このオプションが false で、JMS ルートを停止すると、メッセージを拒否し、JMS ブローカーは再配信を試みる必要があります。これは再度拒否される可能性があり、最終的に JMS ブローカーのデッドレターキューに移動される可能性があります。これを回避するには、このオプションを有効にすることが推奨されます。 | false | MEDIUM |
camel.source.endpoint.allowReplyManagerQuickStop | Request-reply メッセージングの応答マネージャーで使用される DefaultMessageListenerContainer により、JmsConfiguration#isAcceptMessages whileStopping が有効になっている場合に DefaultMessageListenerContainer.runningAllowed フラグがすぐに停止でき、org.apache.camel.CamelContext が現在停止中です。この迅速な停止機能は、通常の JMS コンシューマーでデフォルトで有効になっていますが、応答マネージャーを有効にするには、このフラグを有効にする必要があります。 | false | MEDIUM |
camel.source.endpoint.consumerType | 使用するコンシューマータイプ。Simple、Default、または Custom のいずれかです。コンシューマータイプは、使用する Spring JMS リスナーを決定します。デフォルトは org.springframework.jms.listener.DefaultMessageListenerContainer を使用します。Simple は org.springframework.jms.listener.SimpleMessageListenerContainer を使用します。Custom を指定すると、messageListenerContainerFactory オプションによって定義された MessageListenerContainerFactory は、使用する org.springframework.jms.listener.AbstractMessageListenerContainer を決定します。[Simple]、[Default]、[Custom] のいずれか。 | "Default" | MEDIUM |
camel.source.endpoint.defaultTaskExecutorType | コンシューマーエンドポイントとプロデューサーエンドポイントの ReplyTo コンシューマーの両方に使用するデフォルトの TaskExecutor タイプを DefaultMessageListenerContainer に指定します。使用できる値 - SimpleAsync(Spring の SimpleAsyncTaskExecutor を使用)または ThreadPool(最適な値で Spring の ThreadPoolTaskExecutor を使用)、キャッシュされたスレッドプールのような値。設定しないと、コンシューマーエンドポイントにキャッシュされたスレッドプールを使用し、応答コンシューマーに SimpleAsync を使用する以前の動作がデフォルトになります。ThreadPool を使用すると、同時コンシューマーを動的に増減するエラスティック設定でスレッドごみ箱を減らすことが推奨されます。[ThreadPool]、[SimpleAsync] のいずれか。 | null | MEDIUM |
camel.source.endpoint.eagerLoadingOfProperties | JMS プロパティーは必須ではありませんが、ベースとなる JMS プロバイダーと JMS プロパティーの使用の初期段階で、メッセージが読み込まれるとすぐに JMS プロパティーとペイロードの Eager 読み込みを有効にします。eagerPoisonBody オプションも参照してください。 | false | MEDIUM |
camel.source.endpoint.eagerPoisonBody | EagerLoadingOfProperties が有効になり、JMS メッセージペイロード(JMS ボディーまたは JMS プロパティー)がポジションである場合(読み取り/マッピングはできません)、このテキストをメッセージボディーとして設定します(poison の原因は Exchange で例外としてすでに保存されています)。EagerPoisonBody=false を設定することでオフにすることができます。EagerLoadingOfProperties オプションも参照してください。 | ${exception.message}" による JMS メッセージ | MEDIUM |
camel.source.endpoint.exceptionHandler | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | null | MEDIUM |
camel.source.endpoint.exchangePattern | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。[InOnly]、[InOut]、[InOptionalOut] のいずれか。 | null | MEDIUM |
camel.source.endpoint.exposeListenerSession | メッセージの消費時にリスナーセッションを公開するかどうかを指定します。 | false | MEDIUM |
camel.source.endpoint.replyToSameDestination Allowed | JMS コンシューマーがコンシューマーが消費に使用する同じ宛先にリプライメッセージを送信することができるかどうか。これにより、同じメッセージを独自に消費してバックエンドレスループを防ぐことができます。 | false | MEDIUM |
camel.source.endpoint.taskExecutor | メッセージ消費にカスタムタスクエグゼキューターを指定できます。 | null | MEDIUM |
camel.source.endpoint.allowSerializedHeaders | シリアライズされたヘッダーを含めるかどうかを制御します。transferExchange が true の場合にのみ適用されます。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化不可能なオブジェクトをすべて除外し、WARN レベルでログに記録されます。 | false | MEDIUM |
camel.source.endpoint.artemisStreamingEnabled | Apache Artemis ストリーミングモードを最適化するかどうか。 | true | MEDIUM |
camel.source.endpoint.asyncStartListener | ルートの開始時に JmsConsumer メッセージリスナーを非同期に起動するかどうか。たとえば、JmsConsumer がリモート JMS ブローカーへの接続を取得できない場合は、再試行中やフェイルオーバー中にブロックされる可能性があります。これにより、ルートの起動中に Camel がブロックされます。このオプションを true に設定すると、ルートの起動が可能になりますが、JmsConsumer は非同期モードで専用のスレッドを使用して JMS ブローカーに接続します。このオプションを使用すると、接続が確立されないと、WARN レベルで例外がログに記録され、コンシューマーはメッセージを受信できなくなります。次にルートを再起動して再試行できます。 | false | MEDIUM |
camel.source.endpoint.asyncStopListener | ルートを停止するときに JmsConsumer メッセージリスナーを非同期的に停止するかどうか。 | false | MEDIUM |
camel.source.endpoint.basicPropertyBinding | エンドポイントが基本プロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.source.endpoint.destinationResolver | 独自のリゾルバーを使用できるプラグ可能な org.springframework.jms.support.destination.DestinationResolver(たとえば、JNDI レジストリーから実際の宛先を検索するためなど)。 | null | MEDIUM |
camel.source.endpoint.errorHandler | メッセージの処理中にキャッチされない例外が発生した場合に呼び出される org.springframework.util.ErrorHandler を指定します。デフォルトでは、errorHandler が設定されていない場合、これらの例外は WARN レベルでログに記録されます。errorHandlerLoggingLevel および errorHandlerLogStackTrace オプションを使用して、ロギングレベルおよびスタックトレースをログに記録するかどうかを設定できます。これにより、カスタム errorHandler をコーディングする必要よりも、設定が非常に簡単になります。 | null | MEDIUM |
camel.source.endpoint.exceptionListener | 基礎となる JMS 例外が通知される JMS 例外リスナーを指定します。 | null | MEDIUM |
camel.source.endpoint.headerFilterStrategy | カスタム HeaderFilterStrategy を使用して Camel メッセージに対してヘッダーをフィルターします。 | null | MEDIUM |
camel.source.endpoint.idleConsumerLimit | いつでもアイドル状態にできるコンシューマーの数の制限を指定します。 | 1 | MEDIUM |
camel.source.endpoint.idleTaskExecutionLimit | 実行内でメッセージを受信せずに、受信タスクのアイドル実行の制限を指定します。この制限に達すると、タスクはシャットダウンし、他の実行中のタスク(動的なスケジューリングの場合は maxConcurrentConsumers の設定)を受信し続けます。Spring には追加のドキュメントがあります。 | 1 | MEDIUM |
camel.source.endpoint.includeAllJMSXProperties | JMS から Camel メッセージへのマッピング時に、すべての JMSXxxx プロパティーを含めるかどうか。これを true に設定すると、JMSXAppID や JMSXUserID などのプロパティーが含まれます。注記: カスタムの headerFilterStrategy を使用している場合は、このオプションは適用されません。 | false | MEDIUM |
camel.source.endpoint.jmsKeyFormatStrategy | JMS 鍵をエンコードおよびデコードするためのプラグ可能なストラテジー。これにより、JMS 仕様に準拠します。Camel は、追加設定なしで、default と passthrough の 2 つの実装を提供します。デフォルトのストラテジーは、ドットとハイフン(. および -)を安全にマーシャリングします。passthrough ストラテジーは、鍵をそのまま残します。JMS ヘッダーキーに不正な文字が含まれるかどうかは気にしない JMS ブローカーに使用できます。org.apache.camel.component.jms.JmsKeyFormatStrategy の独自の実装を提供し、# 表記を使用して参照できます。[default]、[passthrough] のいずれか。 | null | MEDIUM |
camel.source.endpoint.mapJmsMessage | Camel が受信した JMS メッセージを適切なペイロードタイプ(javax.jms.TextMessage など)に自動マッピングするかどうかを指定します。 | true | MEDIUM |
camel.source.endpoint.maxMessagesPerTask | タスクごとのメッセージ数。-1 は無制限です。同時コンシューマー(min max など)に範囲を使用する場合、このオプションを使用して値を eg 100 に設定して、作業が少なくなる場合にコンシューマーのスピードを制御することができます。 | -1 | MEDIUM |
camel.source.endpoint.messageConverter | javax.jms.Message への/からのマップ方法を制御するため、カスタムの Spring org.springframework.jms.support.converter.MessageConverter を使用します。 | null | MEDIUM |
camel.source.endpoint.messageCreatedStrategy | Camel が JMS メッセージを送信するときに Camel が javax.jms.Message オブジェクトの新規インスタンスを作成する際に呼び出される指定の MessageCreatedStrategy を使用します。 | null | MEDIUM |
camel.source.endpoint.messageIdEnabled | 送信時に、メッセージ ID を追加するかどうかを指定します。これは JMS ブローカーへのヒントに過ぎません。JMS プロバイダーがこのヒントを受け入れる場合、これらのメッセージにはメッセージ ID が null に設定されている必要があります。プロバイダーがヒントを無視する場合は、メッセージ ID を通常の一意の値に設定する必要があります。 | true | MEDIUM |
camel.source.endpoint.messageListenerContainer Factory | メッセージを消費するために使用する org.springframework.jms.listener.AbstractMessageListenerContainer を決定するために使用される MessageListenerContainerFactory のレジストリー ID。これを設定すると、consumerType が自動的に Custom に設定されます。 | null | MEDIUM |
camel.source.endpoint.messageTimestampEnabled | メッセージの送信時にタイムスタンプをデフォルトで有効にするかどうかを指定します。これは JMS ブローカーへのヒントに過ぎません。JMS プロバイダーがこのヒントを受け入れる場合、これらのメッセージではタイムスタンプがゼロに設定される必要があります。プロバイダーがヒントを無視する場合は、タイムスタンプを通常の値に設定する必要があります。 | true | MEDIUM |
camel.source.endpoint.pubSubNoLocal | 独自の接続によって公開されるメッセージの配信を抑制するかどうかを指定します。 | false | MEDIUM |
camel.source.endpoint.receiveTimeout | メッセージの受信のタイムアウト(ミリ秒単位)。 | 1000L | MEDIUM |
camel.source.endpoint.recoveryInterval | リカバリーを試行する間隔を指定します(例: 接続の更新時(ミリ秒単位)。デフォルトは 5000 ミリ秒で、5 秒です。 | 5000L | MEDIUM |
camel.source.endpoint.requestTimeoutChecker Interval | JMS でリクエスト/リプライを行うときに Camel がタイムアウトしたエクスチェンジをチェックする頻度を設定します。デフォルトでは、Camel は 1 秒ごとに 1 回チェックします。ただし、タイムアウトの発生時により迅速に対応する必要がある場合は、この間隔を減らしてより頻繁に確認できます。タイムアウトは、requestTimeout オプションで決定されます。 | 1000L | MEDIUM |
camel.source.endpoint.synchronous | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | MEDIUM |
camel.source.endpoint.transferException | 有効にすると、リクエスト応答メッセージング(InOut)を使用し、エクスチェンジがコンシューマー側で失敗した場合、発生した例外は javax.jms.ObjectMessage として応答として返信されます。クライアントが Camel の場合、返された Exception が再スローされます。これにより、Camel JMS をルーティングのブリッジとして使用できます。たとえば、永続キューを使用して堅牢なルーティングを有効にすることができます。transferExchange も有効化されている場合には、このオプションが優先されます。例外がシリアライズ可能である必要があります。コンシューマー側の元の例外は、プロデューサーに戻されたときに org.apache.camel.RuntimeCamelException などの外部例外でラップできます。データは Java オブジェクトのシリアライゼーションを使用し、受信がクラスレベルでデータをデシリアライズできるようにする必要があります。これにより、プロデューサーとコンシューマー間で強力な結合が強制されます。 | false | MEDIUM |
camel.source.endpoint.transferExchange | ボディーとヘッダーだけでなく、ネットワーク上でエクスチェンジを転送できます。次のフィールドが転送されます。本文、Out ボディー、フォールト本文、In ヘッダー、Out ヘッダー、フォールトヘッダー、エクスチェンジプロパティー、エクスチェンジ例外。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化不可能なオブジェクトをすべて除外し、WARN レベルでログに記録されます。プロデューサーとコンシューマー側の両方でこのオプションを有効にする必要があります。そのため、Camel はペイロードが通常のペイロードではなく Exchange を認識します。データは Java オブジェクトのシリアライゼーションを使用し、受信がクラスレベルでデータをデシリアライズできるようにする必要があります。これにより、互換性のある Camel バージョンを使用するプロデューサーとコンシューマー間で強力な結合が強制されます。 | false | MEDIUM |
camel.source.endpoint.useMessageIDAsCorrelationID | InOut メッセージに対して JMSCorrelationID として常に JMSMessageID を使用するかどうかを指定します。 | false | MEDIUM |
camel.source.endpoint.waitForProvisionCorrelation ToBeUpdatedCounter | request/reply over JMS を実行し、オプション useMessageIDAsCorrelationID が有効になっている場合に、プロビジョニング ID が実際の相関 ID に更新されるまで待機する回数。 | 50 | MEDIUM |
camel.source.endpoint.waitForProvisionCorrelation ToBeUpdatedThreadSleepingTime | プロビジョニングの相関 ID の更新を待機する間に毎回スリープ状態になる間隔(ミリ秒単位)。 | 100L | MEDIUM |
camel.source.endpoint.errorHandlerLoggingLevel | キャッチされない例外についてのデフォルトの errorHandler ロギングレベルの設定を可能にします。[TRACE]、[DEBUG]、[INFO]、[WARN]、[ERROR]、[OFF] のいずれか。 | "WARN" | MEDIUM |
camel.source.endpoint.errorHandlerLogStackTrace | デフォルトの errorHandler によってスタックトレースをログに記録するかどうかを制御できます。 | true | MEDIUM |
camel.source.endpoint.password | ConnectionFactory で使用するパスワード。また、ユーザー名/パスワードを ConnectionFactory に直接設定することもできます。 | null | MEDIUM |
camel.source.endpoint.username | ConnectionFactory で使用するユーザー名。また、ユーザー名/パスワードを ConnectionFactory に直接設定することもできます。 | null | MEDIUM |
camel.source.endpoint.transacted | トランザクションモードを使用するかどうかを指定します。 | false | MEDIUM |
camel.source.endpoint.transactedInOut | このフラグが true に設定されている場合、InOut 操作(要求応答)のデフォルトが transacted モードを使用するように指定され、Spring JmsTemplate には sessionTransacted が true に設定され、InOut 操作に使用される JmsTemplate で acknowledgeMode がトランザクションとして処理されるかどうかを指定します。Spring JMS から: JTA トランザクション内で createQueue に渡されるパラメーター createTopic メソッドは考慮されません。Java EE トランザクションコンテキストに応じて、コンテナーはこれらの値に対して独自の決定を行います。この場合、Spring JMS は既存の JMS セッションで動作するため、これらのパラメーターはローカルで管理されるトランザクション内で考慮されません。このフラグを true に設定すると、管理トランザクション外で実行される場合は短いローカル JMS トランザクションが使用され、管理トランザクション(XA トランザクション以外)が存在する場合に同期されたローカル JMS トランザクションが使用されます。これは、メインのトランザクションとともに管理されるローカル JMS トランザクション(ネイティブ JDBC トランザクションである可能性がある)の影響を受け、JMS トランザクションはメイントランザクションの直後にコミットされます。 | false | MEDIUM |
camel.source.endpoint.lazyCreateTransactionManager | true の場合、transacted=true オプション時に transactionManager が挿入されていない場合、Camel は JmsTransactionManager を作成します。 | true | MEDIUM |
camel.source.endpoint.transactionManager | 使用する Spring トランザクションマネージャー。 | null | MEDIUM |
camel.source.endpoint.transactionName | 使用するトランザクションの名前。 | null | MEDIUM |
camel.source.endpoint.transactionTimeout | トランザクションモードを使用している場合は、トランザクションのタイムアウト値(秒単位)。 | -1 | MEDIUM |
camel.component.jms.clientId | 使用する JMS クライアント ID を設定します。この値は一意でなければならず、単一の JMS 接続インスタンスでのみ使用できることに注意してください。通常、永続トピックサブスクリプションにのみ必要です。Apache ActiveMQ を使用する場合は、代わりに Virtual Topics を使用することが推奨されます。 | null | MEDIUM |
camel.component.jms.connectionFactory | 使用する接続ファクトリー。接続ファクトリーはコンポーネントまたはエンドポイントのいずれかで設定する必要があります。 | null | MEDIUM |
camel.component.jms.disableReplyTo | Camel がメッセージの JMSReplyTo ヘッダーを無視するかどうかを指定します。true の場合、Camel は JMSReplyTo ヘッダーで指定された宛先に返信を返しません。Camel がルートから消費し、コードの別のコンポーネントがリプライメッセージを処理するため、Camel が自動的に応答メッセージを送りないようにするには、このオプションを使用できます。Camel を異なるメッセージブローカー間でプロキシーとして使用し、あるシステムから別のシステムへメッセージをルーティングする場合は、このオプションを使用することもできます。 | false | MEDIUM |
camel.component.jms.durableSubscriptionName | 永続トピックサブスクリプションを指定するための永続サブスクライバー名。clientId オプションも設定する必要があります。 | null | MEDIUM |
camel.component.jms.jmsMessageType | JMS メッセージの送信に、特定の javax.jms.Message 実装を強制的に使用できるようにします。使用できる値は、Bytes、Map、Object、Stream、Text です。デフォルトでは、Camel は In body タイプから使用する JMS メッセージタイプを決定します。このオプションを指定すると、指定できます。[Bytes]、[Map]、[Object]、[Stream]、[Text] のいずれか。 | null | MEDIUM |
camel.component.jms.testConnectionOnStartup | 起動時に接続をテストするかどうかを指定します。これにより、Camel が起動すると、すべての JMS コンシューマーが JMS ブローカーへの有効な接続になります。コネクションを許可できない場合、Camel は起動時に例外をスローします。これにより、Camel が接続の失敗で開始しないようになります。JMS プロデューサーもテストされています。 | false | MEDIUM |
camel.component.jms.acknowledgementModeName | JMS 確認名。SESSION_TRANSACTED、CLIENT_ACKNOWLEDGE、AUTO_ACKNOWLEDGE、DUPS_OK_ACKNOWLEDGE One of: [SESSION_TRANSACTED] [CLIENT_ACKNOWLEDGE] [AUTO_ACKNOWLEDGE] [AUTO_ACKNOWLEDGE] [DUPS_OK_ACKNOWLEDGE] のいずれか。 | "AUTO_ACKNOWLEDGE" | MEDIUM |
camel.component.jms.asyncConsumer | JmsConsumer が Exchange を非同期的に処理するかどうか。有効にすると、JmsConsumer は JMS キューから次のメッセージを取得し、以前のメッセージは非同期で処理されます(非同期ルーティングエンジンにより)。つまり、メッセージは 100% を厳密に順番に処理できます。無効にすると(デフォルト)、JmsConsumer が JMS キューから次のメッセージを取得する前に Exchange が完全に処理されます。トランザクション処理が有効になっている場合、非同期Consumer=true は非同期的に実行されません。トランザクションは同期的に実行される必要があるため(Camel 3.0 は非同期トランザクションをサポートする可能性があります)。 | false | MEDIUM |
camel.component.jms.autoStartup | コンシューマーコンテナーが自動起動すべきかどうかを指定します。 | true | MEDIUM |
camel.component.jms.cacheLevel | ベースにある JMS リソースの ID でキャッシュレベルを設定します。詳細は、cacheLevelName オプションを参照してください。 | null | MEDIUM |
camel.component.jms.cacheLevelName | ベースにある JMS リソースの名前でキャッシュレベルを設定します。使用できる値は、CACHE_AUTO、CACHE_CONNECTION、CACHE_CONSUMER、CACHE_NONE、CACHE_SESSION です。デフォルト設定は CACHE_AUTO です。詳細は、Spring ドキュメント および Transactions Cache Levels を参照してください。[CACHE_AUTO]、[CACHE_CONNECTION]、[CACHE_CONSUMER]、[CACHE_NONE]、[CACHE_SESSION] のいずれか。 | "CACHE_AUTO" | MEDIUM |
camel.component.jms.concurrentConsumers | (JMS 上でリクエストや応答ではなく)JMS から消費する場合の同時コンシューマーのデフォルト数を指定します。スレッドの動的スケールアップ/ダウンを制御する maxMessagesPerTask オプションも参照してください。JMS で要求/応答を行う場合、オプション replyToConcurrentConsumers を使用して、リプライメッセージリスナーで同時コンシューマーの数を制御します。 | 1 | MEDIUM |
camel.component.jms.maxConcurrentConsumers | (JMS 上でリクエストや応答ではなく)JMS から消費する場合の同時コンシューマーの最大数を指定します。スレッドの動的スケールアップ/ダウンを制御する maxMessagesPerTask オプションも参照してください。JMS で要求/応答を行う場合、オプション replyToMaxConcurrentConsumers を使用して、リプライメッセージリスナーで同時コンシューマーの数を制御します。 | null | MEDIUM |
camel.component.jms.replyTo | Message.getJMSReplyTo()の着信値を上書きする明示的な ReplyTo 宛先を提供します。 | null | MEDIUM |
camel.component.jms.replyToDeliveryPersistent | 返信に永続配信を使用するかどうかを指定します。 | true | MEDIUM |
camel.component.jms.selector | 使用する JMS セレクターを設定します。 | null | MEDIUM |
camel.component.jms.subscriptionDurable | サブスクリプションを永続化するかどうかを設定します。使用する永続サブスクリプション名は、subscriptionName プロパティーから指定できます。デフォルトは false です。通常、永続サブスクリプションを登録するには、これを true に設定します(メッセージリスナークラス名がサブスクリプション名として適切である場合)。トピックをリッスンする場合にのみ(pub-sub ドメイン)、このメソッドは pubSubDomain フラグも切り替えます。 | false | MEDIUM |
camel.component.jms.subscriptionName | 作成するサブスクリプションの名前を設定します。共有サブスクリプションまたは永続サブスクリプションがあるトピック(pub-sub ドメイン)の場合に適用できます。サブスクリプション名は、クライアントの JMS クライアント ID 内で一意である必要があります。default は、指定されたメッセージリスナーのクラス名です。注記: 共有サブスクリプション(JMS 2.0 が必要)を除き、サブスクリプションごとに 1 つの同時コンシューマー(このメッセージリスナーコンテナーのデフォルト)のみが許可されます。 | null | MEDIUM |
camel.component.jms.subscriptionShared | サブスクリプションを共有するかどうかを設定します。使用する共有サブスクリプション名は、subscriptionName プロパティーから指定できます。デフォルトは false です。共有サブスクリプションを登録するには、true に設定します。通常、subscriptionName の値と併用します(メッセージリスナークラス名がサブスクリプション名として適切である場合)。共有サブスクリプションも永続的である可能性があるため、このフラグは subscriptionDurable と組み合わせることもできます。トピックをリッスンする場合にのみ(pub-sub ドメイン)、このメソッドは pubSubDomain フラグも切り替えます。JMS 2.0 と互換性のあるメッセージブローカーが必要です。 | false | MEDIUM |
camel.component.jms.acceptMessagesWhileStopping | 停止中にコンシューマーがメッセージを受け入れるかどうかを指定します。実行時に JMS ルートを開始および停止する場合に、キューでキューにまだキューに追加されたメッセージがある場合も、このオプションの有効化を検討してください。このオプションが false で、JMS ルートを停止すると、メッセージを拒否し、JMS ブローカーは再配信を試みる必要があります。これは再度拒否される可能性があり、最終的に JMS ブローカーのデッドレターキューに移動される可能性があります。これを回避するには、このオプションを有効にすることが推奨されます。 | false | MEDIUM |
camel.component.jms.allowReplyManagerQuickStop | Request-reply メッセージングの応答マネージャーで使用される DefaultMessageListenerContainer により、JmsConfiguration#isAcceptMessages whileStopping が有効になっている場合に DefaultMessageListenerContainer.runningAllowed フラグがすぐに停止でき、org.apache.camel.CamelContext が現在停止中です。この迅速な停止機能は、通常の JMS コンシューマーでデフォルトで有効になっていますが、応答マネージャーを有効にするには、このフラグを有効にする必要があります。 | false | MEDIUM |
camel.component.jms.consumerType | 使用するコンシューマータイプ。Simple、Default、または Custom のいずれかです。コンシューマータイプは、使用する Spring JMS リスナーを決定します。デフォルトは org.springframework.jms.listener.DefaultMessageListenerContainer を使用します。Simple は org.springframework.jms.listener.SimpleMessageListenerContainer を使用します。Custom を指定すると、messageListenerContainerFactory オプションによって定義された MessageListenerContainerFactory は、使用する org.springframework.jms.listener.AbstractMessageListenerContainer を決定します。[Simple]、[Default]、[Custom] のいずれか。 | "Default" | MEDIUM |
camel.component.jms.defaultTaskExecutorType | コンシューマーエンドポイントとプロデューサーエンドポイントの ReplyTo コンシューマーの両方に使用するデフォルトの TaskExecutor タイプを DefaultMessageListenerContainer に指定します。使用できる値 - SimpleAsync(Spring の SimpleAsyncTaskExecutor を使用)または ThreadPool(最適な値で Spring の ThreadPoolTaskExecutor を使用)、キャッシュされたスレッドプールのような値。設定しないと、コンシューマーエンドポイントにキャッシュされたスレッドプールを使用し、応答コンシューマーに SimpleAsync を使用する以前の動作がデフォルトになります。ThreadPool を使用すると、同時コンシューマーを動的に増減するエラスティック設定でスレッドごみ箱を減らすことが推奨されます。[ThreadPool]、[SimpleAsync] のいずれか。 | null | MEDIUM |
camel.component.jms.eagerLoadingOfProperties | JMS プロパティーは必須ではありませんが、ベースとなる JMS プロバイダーと JMS プロパティーの使用の初期段階で、メッセージが読み込まれるとすぐに JMS プロパティーとペイロードの Eager 読み込みを有効にします。eagerPoisonBody オプションも参照してください。 | false | MEDIUM |
camel.component.jms.eagerPoisonBody | EagerLoadingOfProperties が有効になり、JMS メッセージペイロード(JMS ボディーまたは JMS プロパティー)がポジションである場合(読み取り/マッピングはできません)、このテキストをメッセージボディーとして設定します(poison の原因は Exchange で例外としてすでに保存されています)。EagerPoisonBody=false を設定することでオフにすることができます。EagerLoadingOfProperties オプションも参照してください。 | ${exception.message}" による JMS メッセージ | MEDIUM |
camel.component.jms.exposeListenerSession | メッセージの消費時にリスナーセッションを公開するかどうかを指定します。 | false | MEDIUM |
camel.component.jms.replyToSameDestinationAllowed | JMS コンシューマーがコンシューマーが消費に使用する同じ宛先にリプライメッセージを送信することができるかどうか。これにより、同じメッセージを独自に消費してバックエンドレスループを防ぐことができます。 | false | MEDIUM |
camel.component.jms.taskExecutor | メッセージ消費にカスタムタスクエグゼキューターを指定できます。 | null | MEDIUM |
camel.component.jms.allowAutoWiredConnection Factory | 接続ファクトリーが設定されていない場合に、レジストリーから ConnectionFactory を自動検出するかどうか。ConnectionFactory の 1 つのインスタンスのみが見つかると、そのインスタンスが使用されます。これはデフォルトで有効になっています。 | true | MEDIUM |
camel.component.jms.allowAutoWiredDestination Resolver | 宛先リゾルバーが設定されていない場合には、レジストリーから DestinationResolver を自動検出するかどうか。DestinationResolver のインスタンスが 1 つだけ見つかった場合は、それが使用されます。これはデフォルトで有効になっています。 | true | MEDIUM |
camel.component.jms.allowSerializedHeaders | シリアライズされたヘッダーを含めるかどうかを制御します。transferExchange が true の場合にのみ適用されます。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化不可能なオブジェクトをすべて除外し、WARN レベルでログに記録されます。 | false | MEDIUM |
camel.component.jms.artemisStreamingEnabled | Apache Artemis ストリーミングモードを最適化するかどうか。 | true | MEDIUM |
camel.component.jms.asyncStartListener | ルートの開始時に JmsConsumer メッセージリスナーを非同期に起動するかどうか。たとえば、JmsConsumer がリモート JMS ブローカーへの接続を取得できない場合は、再試行中やフェイルオーバー中にブロックされる可能性があります。これにより、ルートの起動中に Camel がブロックされます。このオプションを true に設定すると、ルートの起動が可能になりますが、JmsConsumer は非同期モードで専用のスレッドを使用して JMS ブローカーに接続します。このオプションを使用すると、接続が確立されないと、WARN レベルで例外がログに記録され、コンシューマーはメッセージを受信できなくなります。次にルートを再起動して再試行できます。 | false | MEDIUM |
camel.component.jms.asyncStopListener | ルートを停止するときに JmsConsumer メッセージリスナーを非同期的に停止するかどうか。 | false | MEDIUM |
camel.component.jms.basicPropertyBinding | コンポーネントの基本的なプロパティーバインディング(Camel 2.x)または新しいプロパティーバインディングを追加機能と共に使用するかどうか。 | false | MEDIUM |
camel.component.jms.configuration | 共有 JMS 設定を使用するには、以下を実行します。 | null | MEDIUM |
camel.component.jms.destinationResolver | 独自のリゾルバーを使用できるプラグ可能な org.springframework.jms.support.destination.DestinationResolver(たとえば、JNDI レジストリーから実際の宛先を検索するためなど)。 | null | MEDIUM |
camel.component.jms.errorHandler | メッセージの処理中にキャッチされない例外が発生した場合に呼び出される org.springframework.util.ErrorHandler を指定します。デフォルトでは、errorHandler が設定されていない場合、これらの例外は WARN レベルでログに記録されます。errorHandlerLoggingLevel および errorHandlerLogStackTrace オプションを使用して、ロギングレベルおよびスタックトレースをログに記録するかどうかを設定できます。これにより、カスタム errorHandler をコーディングする必要よりも、設定が非常に簡単になります。 | null | MEDIUM |
camel.component.jms.exceptionListener | 基礎となる JMS 例外が通知される JMS 例外リスナーを指定します。 | null | MEDIUM |
camel.component.jms.idleConsumerLimit | いつでもアイドル状態にできるコンシューマーの数の制限を指定します。 | 1 | MEDIUM |
camel.component.jms.idleTaskExecutionLimit | 実行内でメッセージを受信せずに、受信タスクのアイドル実行の制限を指定します。この制限に達すると、タスクはシャットダウンし、他の実行中のタスク(動的なスケジューリングの場合は maxConcurrentConsumers の設定)を受信し続けます。Spring には追加のドキュメントがあります。 | 1 | MEDIUM |
camel.component.jms.includeAllJMSXProperties | JMS から Camel メッセージへのマッピング時に、すべての JMSXxxx プロパティーを含めるかどうか。これを true に設定すると、JMSXAppID や JMSXUserID などのプロパティーが含まれます。注記: カスタムの headerFilterStrategy を使用している場合は、このオプションは適用されません。 | false | MEDIUM |
camel.component.jms.jmsKeyFormatStrategy | JMS 鍵をエンコードおよびデコードするためのプラグ可能なストラテジー。これにより、JMS 仕様に準拠します。Camel は、追加設定なしで、default と passthrough の 2 つの実装を提供します。デフォルトのストラテジーは、ドットとハイフン(. および -)を安全にマーシャリングします。passthrough ストラテジーは、鍵をそのまま残します。JMS ヘッダーキーに不正な文字が含まれるかどうかは気にしない JMS ブローカーに使用できます。org.apache.camel.component.jms.JmsKeyFormatStrategy の独自の実装を提供し、# 表記を使用して参照できます。[default]、[passthrough] のいずれか。 | null | MEDIUM |
camel.component.jms.mapJmsMessage | Camel が受信した JMS メッセージを適切なペイロードタイプ(javax.jms.TextMessage など)に自動マッピングするかどうかを指定します。 | true | MEDIUM |
camel.component.jms.maxMessagesPerTask | タスクごとのメッセージ数。-1 は無制限です。同時コンシューマー(min max など)に範囲を使用する場合、このオプションを使用して値を eg 100 に設定して、作業が少なくなる場合にコンシューマーのスピードを制御することができます。 | -1 | MEDIUM |
camel.component.jms.messageConverter | javax.jms.Message への/からのマップ方法を制御するため、カスタムの Spring org.springframework.jms.support.converter.MessageConverter を使用します。 | null | MEDIUM |
camel.component.jms.messageCreatedStrategy | Camel が JMS メッセージを送信するときに Camel が javax.jms.Message オブジェクトの新規インスタンスを作成する際に呼び出される指定の MessageCreatedStrategy を使用します。 | null | MEDIUM |
camel.component.jms.messageIdEnabled | 送信時に、メッセージ ID を追加するかどうかを指定します。これは JMS ブローカーへのヒントに過ぎません。JMS プロバイダーがこのヒントを受け入れる場合、これらのメッセージにはメッセージ ID が null に設定されている必要があります。プロバイダーがヒントを無視する場合は、メッセージ ID を通常の一意の値に設定する必要があります。 | true | MEDIUM |
camel.component.jms.messageListenerContainer Factory | メッセージを消費するために使用する org.springframework.jms.listener.AbstractMessageListenerContainer を決定するために使用される MessageListenerContainerFactory のレジストリー ID。これを設定すると、consumerType が自動的に Custom に設定されます。 | null | MEDIUM |
camel.component.jms.messageTimestampEnabled | メッセージの送信時にタイムスタンプをデフォルトで有効にするかどうかを指定します。これは JMS ブローカーへのヒントに過ぎません。JMS プロバイダーがこのヒントを受け入れる場合、これらのメッセージではタイムスタンプがゼロに設定される必要があります。プロバイダーがヒントを無視する場合は、タイムスタンプを通常の値に設定する必要があります。 | true | MEDIUM |
camel.component.jms.pubSubNoLocal | 独自の接続によって公開されるメッセージの配信を抑制するかどうかを指定します。 | false | MEDIUM |
camel.component.jms.queueBrowseStrategy | キューの参照時にカスタム QueueBrowseStrategy を使用する | null | MEDIUM |
camel.component.jms.receiveTimeout | メッセージの受信のタイムアウト(ミリ秒単位)。 | 1000L | MEDIUM |
camel.component.jms.recoveryInterval | リカバリーを試行する間隔を指定します(例: 接続の更新時(ミリ秒単位)。デフォルトは 5000 ミリ秒で、5 秒です。 | 5000L | MEDIUM |
camel.component.jms.requestTimeoutCheckerInterval | JMS でリクエスト/リプライを行うときに Camel がタイムアウトしたエクスチェンジをチェックする頻度を設定します。デフォルトでは、Camel は 1 秒ごとに 1 回チェックします。ただし、タイムアウトの発生時により迅速に対応する必要がある場合は、この間隔を減らしてより頻繁に確認できます。タイムアウトは、requestTimeout オプションで決定されます。 | 1000L | MEDIUM |
camel.component.jms.transferException | 有効にすると、リクエスト応答メッセージング(InOut)を使用し、エクスチェンジがコンシューマー側で失敗した場合、発生した例外は javax.jms.ObjectMessage として応答として返信されます。クライアントが Camel の場合、返された Exception が再スローされます。これにより、Camel JMS をルーティングのブリッジとして使用できます。たとえば、永続キューを使用して堅牢なルーティングを有効にすることができます。transferExchange も有効化されている場合には、このオプションが優先されます。例外がシリアライズ可能である必要があります。コンシューマー側の元の例外は、プロデューサーに戻されたときに org.apache.camel.RuntimeCamelException などの外部例外でラップできます。データは Java オブジェクトのシリアライゼーションを使用し、受信がクラスレベルでデータをデシリアライズできるようにする必要があります。これにより、プロデューサーとコンシューマー間で強力な結合が強制されます。 | false | MEDIUM |
camel.component.jms.transferExchange | ボディーとヘッダーだけでなく、ネットワーク上でエクスチェンジを転送できます。次のフィールドが転送されます。本文、Out ボディー、フォールト本文、In ヘッダー、Out ヘッダー、フォールトヘッダー、エクスチェンジプロパティー、エクスチェンジ例外。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化不可能なオブジェクトをすべて除外し、WARN レベルでログに記録されます。プロデューサーとコンシューマー側の両方でこのオプションを有効にする必要があります。そのため、Camel はペイロードが通常のペイロードではなく Exchange を認識します。データは Java オブジェクトのシリアライゼーションを使用し、受信がクラスレベルでデータをデシリアライズできるようにする必要があります。これにより、互換性のある Camel バージョンを使用するプロデューサーとコンシューマー間で強力な結合が強制されます。 | false | MEDIUM |
camel.component.jms.useMessageIDAsCorrelationID | InOut メッセージに対して JMSCorrelationID として常に JMSMessageID を使用するかどうかを指定します。 | false | MEDIUM |
camel.component.jms.waitForProvisionCorrelationTo BeUpdatedCounter | request/reply over JMS を実行し、オプション useMessageIDAsCorrelationID が有効になっている場合に、プロビジョニング ID が実際の相関 ID に更新されるまで待機する回数。 | 50 | MEDIUM |
camel.component.jms.waitForProvisionCorrelationTo BeUpdatedThreadSleepingTime | プロビジョニングの相関 ID の更新を待機する間に毎回スリープ状態になる間隔(ミリ秒単位)。 | 100L | MEDIUM |
camel.component.jms.headerFilterStrategy | カスタムの org.apache.camel.spi.HeaderFilterStrategy を使用して、Camel メッセージとの間でヘッダーをフィルターします。 | null | MEDIUM |
camel.component.jms.errorHandlerLoggingLevel | キャッチされない例外についてのデフォルトの errorHandler ロギングレベルの設定を可能にします。[TRACE]、[DEBUG]、[INFO]、[WARN]、[ERROR]、[OFF] のいずれか。 | "WARN" | MEDIUM |
camel.component.jms.errorHandlerLogStackTrace | デフォルトの errorHandler によってスタックトレースをログに記録するかどうかを制御できます。 | true | MEDIUM |
camel.component.jms.password | ConnectionFactory で使用するパスワード。また、ユーザー名/パスワードを ConnectionFactory に直接設定することもできます。 | null | MEDIUM |
camel.component.jms.username | ConnectionFactory で使用するユーザー名。また、ユーザー名/パスワードを ConnectionFactory に直接設定することもできます。 | null | MEDIUM |
camel.component.jms.transacted | トランザクションモードを使用するかどうかを指定します。 | false | MEDIUM |
camel.component.jms.transactedInOut | このフラグが true に設定されている場合、InOut 操作(要求応答)のデフォルトが transacted モードを使用するように指定され、Spring JmsTemplate には sessionTransacted が true に設定され、InOut 操作に使用される JmsTemplate で acknowledgeMode がトランザクションとして処理されるかどうかを指定します。Spring JMS から: JTA トランザクション内で createQueue に渡されるパラメーター createTopic メソッドは考慮されません。Java EE トランザクションコンテキストに応じて、コンテナーはこれらの値に対して独自の決定を行います。この場合、Spring JMS は既存の JMS セッションで動作するため、これらのパラメーターはロー |