21.4.2. クエリーパラメーター (94 パラメーター)


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

charset (共通)

このオプションは、ファイルのエンコーディングを指定するために使用されます。コンシューマーでこれを使用して、ファイルのエンコーディングを指定できます。これにより、Camel は、ファイルコンテンツがアクセスされている場合にファイルコンテンツをロードする必要がある charset を知ることができます。ファイルを書き込む場合も同様に、このオプションを使用して、ファイルを書き込む charset を指定できます。ファイルを書き込むとき、Camel はメッセージの内容をメモリーに読み込んで、データを設定された charset に変換できるようにする必要があることに注意してください。つまり、メッセージが大きい場合は、これを使用しないでください。

 

文字列

doneFileName (共通)

Producer: 指定された場合、元のファイルが書き込まれると、Camel は 2 番目の完了ファイルを書き込みます。完了ファイルは空になります。このオプションは、使用するファイル名を設定します。固定の名前を指定できます。または、動的プレースホルダーを使用することもできます。完了ファイルは、常に元のファイルと同じフォルダーに書き込まれます。Consumer: 指定すると、Camel は完了ファイルが存在する場合にのみファイルを消費します。このオプションは、使用するファイル名を設定します。固定の名前を指定できます。または、動的なプレースホルダーを使用できます。完了ファイルは、常に元のファイルと同じフォルダーにあると想定されます。動的プレースホルダーとしてサポートされているのは $\\{file.name} と $\\{file.name.next} のみです。

 

文字列

fileName (共通)

File Language などの式を使用して、ファイル名を動的に設定します。コンシューマーの場合は、ファイル名フィルターとして使用されます。プロデューサーの場合、書き込むファイル名を評価するために使用されます。式が設定されている場合は、CamelFileName ヘッダーよりも優先されます。(注: ヘッダー自体を式にすることもできます)。式オプションは String タイプと Expression タイプの両方をサポートします。式が String タイプである場合、これは常にファイル言語を使用して評価されます。式が Expression タイプである場合、指定された Expression タイプが使用されます。これにより、たとえば OGNL 式を使用できます。コンシューマーの場合、これを使用してファイル名をフィルターリングできるため、たとえば、ファイル言語構文 mydata-$\\{date:now:yyyyMMdd}.txt を使用して今日のファイルを消費できます。プロデューサーは、既存の CamelFileName ヘッダーよりも優先される CamelOverruleFileName ヘッダーをサポートします。CamelOverruleFileName は一度だけ使用されるヘッダーであり、CamelFileName を一時的に保存して後で復元する必要がなくなるため、簡単になります。

 

文字列

bridgeErrorHandler (コンシューマー)

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

false

boolean

delete (コンシューマー)

true の場合、ファイルは正常に処理された後に削除されます。

false

boolean

moveFailed (コンシューマー)

Simple 言語に基づいて move failure 式を設定します。たとえば、ファイルを .error サブディレクトリーに移動するには、.error を使用します。注: ファイルを失敗した場所に移動すると、Camel はエラーを処理し、ファイルを再度取得しません。

 

文字列

noop (コンシューマー)

true の場合、ファイルは移動または削除されません。このオプションは、読み取り専用データまたは ETL タイプの要件に適しています。noop=true の場合、Camel は idempotent=true も設定し、同じファイルを繰り返し消費しないようにします。

false

boolean

preMove (コンシューマー)

処理前に移動する場合にファイル名を動的に設定するために使用される式 (File 言語など)。たとえば、進行中のファイルを order ディレクトリーに移動するには、この値を order に設定します。

 

文字列

preSort (コンシューマー)

pre-sort が有効になっている場合、コンシューマーはポーリング中に、ファイルシステムから取得されたファイル名とディレクトリー名を並べ替えます。ソートされた順序でファイルを操作する必要がある場合に、これを行うことができます。pre-sort は、コンシューマーがフィルターリングを開始する前に実行され、Camel によって処理されるファイルを受け入れます。このオプション default=false で無効になっています。

false

boolean

recursive (コンシューマー)

ディレクトリーの場合は、すべてのサブディレクトリー内のファイルも検索します。

false

boolean

sendEmptyMessageWhenIdle (consumer)

ポーリングコンシューマーがファイルをポーリングしなかった場合、このオプションを有効にして、代わりに空のメッセージ (ボディーなし) を送信できます。

false

boolean

directoryMustExist (consumer (advanced))

startingDirectoryMustExist オプションと似ていますが、(コンシューマーの起動後)ポーリング中に適用されます。

false

boolean

exceptionHandler (コンシューマー (上級))

コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。

 

ExceptionHandler

exchangePattern (コンシューマー (上級))

コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。

列挙値:

  • InOnly
  • InOut
  • InOptionalOut
 

ExchangePattern

extendedAttributes (コンシューマー (上級))

対象のファイル属性を定義します。posix:permissions,posix:owner,basic:lastAccessTime と同様に、posix:、basic:lastAccessTime などの基本的なワイルドカードをサポートします。

 

文字列

inProgressRepository (コンシューマー (上級))

プラグ可能な in-progress リポジトリー org.apache.camel.spi.IdempotentRepository。in-progress リポジトリーは、現在進行中のファイルが消費されていることを示すために使用されます。デフォルトでは、メモリーベースのリポジトリーが使用されます。

 

IdempotentRepository

localWorkDirectory (コンシューマー (上級))

使用する場合、ローカルの作業ディレクトリーを使用して、リモートファイルのコンテンツをローカルファイルに直接保存し、コンテンツがメモリーに読み込まれないようにできます。これは、非常に大きなリモートファイルを使用している場合に、メモリーを節約するために役立ちます。

 

文字列

onCompletionExceptionHandler (consumer (advanced))

カスタム org.apache.camel.spi.ExceptionHandler を使用して、コンシューマーがコミットまたはロールバックを実行する完了プロセスのファイル中に出力される例外を処理します。デフォルトの実装は、WARN レベルですべての例外をログに記録し、無視します。

 

ExceptionHandler

pollStrategy (コンシューマー (上級))

プラグ可能な org.apache.camel.PollingConsumerPollingStrategy を使用すると、エクスチェンジが作成され、Camel でルーティングされる前に、通常はポーリング操作中に発生するエラー処理を制御するカスタム実装が提供できます。

 

PollingConsumerPollStrategy

probeContentType (コンシューマー (上級))

コンテンツタイプのプローブを有効にするかどうか。有効な場合、コンシューマーは Files#probeContentType(java.nio.file.Path) を使用してファイルのコンテンツタイプを判断し、それをキー Exchange#FILE_CONTENT_TYPE を持つヘッダーとしてメッセージに格納します。

false

boolean

processStrategy (コンシューマー (上級))

プラグ可能な org.apache.camel.component.file.GenericFileProcessStrategy を使用すると、独自の readLock オプションまたは同様のものを実装できます。特別な準備完了ファイルが存在するなど、ファイルを使用する前に特別な条件を満たす必要がある場合にも使用できます。このオプションを設定すると、readLock オプションは適用されません。

 

GenericFileProcessStrategy

resumeStrategy (コンシューマー (上級))

ファイルの再開ストラテジーを設定します。これにより、アプリケーションを停止する前に最後の時点からファイルの読み取りを再開するストラテジーを定義できます。実装の詳細については、FileConsumerResumeStrategy を参照してください。

 

FileConsumerResumeStrategy

startingDirectoryMustExist (consumer (advanced))

開始ディレクトリーの存在が必要かどうか。autoCreate オプションがデフォルトで有効になっていることに注意してください。これは、開始ディレクトリーが存在しない場合、通常は自動作成されることを意味します。autoCreate を無効にして有効にすると、開始ディレクトリーの存在が必要なことを確認できます。ディレクトリーが存在しない場合は例外が発生します。

false

boolean

startingDirectoryMustHaveAccess (consumer (advanced))

開始ディレクトリーにアクセス権があるかどうか。ディレクトリーが存在することを確認するには、startDirectoryMustExist パラメーターを true に設定する必要があります。ディレクトリーに読み取りおよび書き込みパーミッションがない場合は例外が発生します。

false

boolean

appendChars (プロデューサー)

ファイルの書き込み後に文字 (テキスト) を追加するために使用されます。たとえば、新規ファイルや既存ファイルを書き込んで追加する際に、新しい行やその他のセパレーターを追加するために使用できます。改行 (slash-n または slash-r) またはタブ (slash-t) 文字を指定するには、slash-slash-n のように追加のスラッシュでエスケープします。

 

文字列

fileExist (プロデューサー)

同じ名前のファイルがすでに存在する場合のアクション。override (デフォルト)は既存のファイルを置き換えます。- Append - は、既存のファイルにコンテンツを追加します。- Fail - は GenericFileOperationException を出力し、既存のファイルが存在することを示します。- Ignore - は問題を通知せずに上書きしませんが、すべてが正常にあることを前提としています。-Move - オプションは moveExisting オプションも設定する必要があります。オプション eagerDeleteTargetFile を使用して、ファイルを移動する際に既存ファイルが存在する場合に何をすべきか制御でき、そうでない場合は移動操作が失敗します。Move オプションは、ターゲットファイルを書き込む前に既存のファイルを移動します。- TryRename は、tempFileName オプションが使用されている場合にのみ適用されます。これにより、存在チェックを実行せずに、一時的なファイル名から実際のファイル名への変更を試みることができます。このチェックは、一部のファイルシステム、特に FTP サーバーでは高速になる場合があります。

列挙値:

  • オーバーライド
  • Append
  • Fail
  • 無視
  • Move
  • TryRename

オーバーライド

GenericFileExist

flatten (プロデューサー)

flatten は、ファイル名パスをフラット化して先頭のパスを削除するために使用されるので、ファイル名だけになります。これにより、サブディレクトリーに再帰的に使用できますが、たとえばファイルを別のディレクトリーに書き込む場合、ファイルは単一のディレクトリーに書き込まれます。これをプロデューサーで true に設定すると、CamelFileName ヘッダーのファイル名が先頭パスから削除されます。

false

boolean

jailStartingDirectory (プロデューサー)

ファイルの書き込みを開始ディレクトリー (およびサブ) のみに拘束 (制限) するために使用されます。これはデフォルトで有効になっており、Camel は外部ディレクトリーにファイルを書き込むことができません (そのままでセキュアにするため)。無効にすると、親フォルダーやルートフォルダーなど、開始ディレクトリー以外のディレクトリーにファイルを書き込むことができます。

true

boolean

lazyStartProducer (producer)

最初のメッセージでプロデューサーをレイジーに起動すべきかどうか。レイジーに起動することで、起動時にプロデューサーが失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、プロデューサーの作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。

false

boolean

moveExisting (プロデューサー)

fileExist=Move が設定されている場合に使用するファイル名の計算に使用される式 (File 言語など)。ファイルをバックアップサブディレクトリーに移動するには、backup と入力します。このオプションは、file:name、file:name.ext、file:name.noext、file:onlyname、file:onlyname.noext、file:ext、および file:parent の File Language トークンのみをサポートします。FTP コンポーネントでは file:parent がサポートされていないことに注意してください。FTP コンポーネントは、既存のファイルを現在のディレクトリーをベースとする相対ディレクトリーにしか移動できないためです。

 

文字列

tempFileName (producer)

tempPrefix オプションと同じですが、ファイル言語を使用するため、一時ファイル名の命名をより細かく制御できます。tempFilename の場所は、ベース URI のターゲットディレクトリーではなく、'fileName' オプションの最後のファイルの場所と相対的です。たとえば、fileName にディレクトリー接頭辞 dir/finalFilename が含まれている場合、tempFileName はそのサブディレクトリー dir と相対的になります。

 

文字列

tempPrefix (プロデューサー)

このオプションは、一時的な名前を使用してファイルを書き込み、書き込みが完了した後に、その名前を実際の名前に変更するために使用されます。書き込み中のファイルを識別し、(排他的読み取りロックを使用せずに) コンシューマーが進行中のファイルを読み取らないようにするために使用できます。大きなファイルをアップロードするときに FTP でよく使用されます。

 

文字列

allowNullBody (プロデューサー (上級))

ファイルの書き込み中に null の本文を許可するかどうかを指定するために使用されます。true に設定すると空のファイルが作成され、false に設定して null の本文をファイルコンポーネントに送信しようとすると、Cannot write null body to file.という GenericFileWriteException が出力されます。fileExist オプションを Override に設定するとファイルは切り捨てられ、append に設定するとファイルは変更されません。

false

boolean

chmod (プロデューサー (上級))

プロデューサーによって送信されるファイルパーミッションを指定します。chmod の値は 000 から 777 の間の値である必要があります。0755 のように先頭に数字がある場合は無視します。

 

文字列

chmodDirectory (プロデューサー (上級))

不足しているディレクトリーをプロデューサーが作成するときに使用するディレクトリーパーミッションを指定します。chmod 値は 000 から 777 の間である必要があります。0755 のように先頭に数字がある場合は無視します。

 

文字列

eagerDeleteTargetFile (producer (advanced))

既存のターゲットファイルを積極的に削除するかどうか。このオプションは、fileExists=Override および tempFileName オプションを使用している場合にのみ適用されます。これを使用して、一時ファイルが書き込まれる前にターゲットファイルを削除することを無効化 (false に設定) できます。たとえば、大きなファイルを書き込んで、一時ファイルの書き込み中にターゲットファイルを存在させたい場合があります。これにより、一時ファイルの名前がターゲットファイル名に変更される直前まで、ターゲットファイルは削除されません。このオプションは、fileExist=Move が有効で、既存のファイルが存在する場合に、既存のファイルを削除するかどうかを制御するためにも使用されます。このオプション copyAndDeleteOnRenameFails が false の場合、既存のファイルが存在する場合は例外が出力されます。true の場合、移動操作の前に既存のファイルが削除されます。

true

boolean

forceWrites (プロデューサー (上級))

ファイルシステムへの書き込みを強制的に同期するかどうか。たとえばログや監査ログへの書き込みなど、このレベルの保証が必要ない場合はオフにすることでパフォーマンスが向上します。

true

boolean

keepLastModified (producer (advanced))

ソースファイル (存在する場合) からの最終変更のタイムスタンプを保持します。Exchange.FILE_LAST_MODIFIED ヘッダーを使用してタイムスタンプを見つけます。このヘッダーには、java.util.Date またはタイムスタンプ付きの long を含めることができます。タイムスタンプが存在し、オプションが有効な場合は、書き込まれたファイルにこのタイムスタンプが設定されます。注記: このオプションは、ファイルプロデューサーにのみ適用されます。このオプションは、ftp プロデューサーでは使用できません。

false

boolean

moveExistingFileStrategy (プロデューサー (上級))

fileExist=Move が設定されている場合に使用する特別な命名トークンを持つファイルを移動するために使用されるストラテジー (カスタムストラテジー)。デフォルトでは、カスタムストラテジーが指定されていない場合に使用される実装があります。

 

FileMoveExistingStrategy

autoCreate (上級)

ファイルのパス名に不足しているディレクトリーを自動的に作成します。ファイルコンシューマーの場合は、開始ディレクトリーを作成することを意味します。ファイルプロデューサーの場合、ファイルが書き込まれるディレクトリーを意味します。

true

boolean

bufferSize (上級)

ファイルの書き込みに使用されるバッファーサイズ(またはファイルのダウンロードおよびアップロード用の FTP の場合)。

131072

int

copyAndDeleteOnRenameFail (advanced)

ファイルの名前を直接変更できなかった場合に、フォールバックしてファイルのコピーと削除を行うかどうか。このオプションは FTP コンポーネントでは使用できません。

true

boolean

renameUsingCopy (上級)

コピーおよび削除ストラテジーを使用して名前変更操作を実行します。これは主に、通常の名前変更操作が信頼できない環境で使用されます (たとえば、異なるファイルシステムまたはネットワーク間)。このオプションは、遅延が追加された後に限り、コピーおよび削除ストラテジーに自動的にフォールバックする copyAndDeleteOnRenameFail パラメーターよりも優先されます。

false

boolean

synchronous (上級)

同期処理を厳密に使用するかどうかを設定します。

false

boolean

antExclude (フィルター)

ant スタイルのフィルターの除外。antInclude と antExclude の両方を使用する場合は、antInclude よりも antExclude が優先されます。コンマ区切り形式で複数の除外を指定できます。

 

文字列

antFilterCaseSensitive (フィルター)

ant フィルターに大文字と小文字を区別するフラグを設定します

true

boolean

antInclude (フィルター)

Ant スタイルフィルターの組み込み。コンマ区切り形式で複数の組み込みを指定できます。

 

文字列

eagerMaxMessagesPerPoll (filter)

maxMessagesPerPoll の制限が eager かどうかを制御できます。eager の場合、ファイルのスキャン中に制限されます。false の場合、すべてのファイルをスキャンし、並び替えを実行します。このオプションを false に設定すると、すべてのファイルを最初にソートしてからポーリングを制限できます。ソートのためにすべてのファイルの詳細がメモリー内にあるため、メモリー使用量が大きくなることに注意してください。

true

boolean

exclude (filter)

ファイル名が正規表現パターンに一致する場合にファイルを除外するために使用されます(照合では大文字と小文字を区別します)。プラス記号などのシンボルを使用する場合は、エンドポイント URI としてこれを設定する場合は RAW() 構文を使用して設定する必要があります。詳細はエンドポイント URI の設定を参照してください。

 

文字列

excludeExt (フィルター)

ファイル拡張子名 (大文字と小文字を区別しない) に一致するファイルを除外するために使用されます。たとえば、bak ファイルを除外するには、excludeExt=bak を使用します。bak ファイルおよび dat ファイルを除外する場合など、複数の拡張子は excludeExt=bak,dat のようにコンマで区切ることができます。ファイル拡張子にはすべての部分が含まれています。たとえば、mydata.tar.gz という名前のファイルの場合、拡張子は tar.gz になります。より柔軟性を高めるには、include/exclude オプションを使用します。

 

文字列

filter (filter)

org.apache.camel.component.file.GenericFileFilter クラスとしてのプラグ可能なフィルター。フィルターがその accept () メソッドで false を返す場合、ファイルをスキップします。

 

GenericFileFilter

filterDirectory (フィルター)

Simple 言語に基づいてディレクトリーをフィルターリングします。たとえば、現在の日付でフィルターリングするには、$\\{date:now:yyyMMdd} などの単純な日付パターンを使用できます。

 

文字列

filterFile (フィルター)

Simple 言語に基づいてファイルをフィルターリングします。たとえば、ファイルサイズでフィルターリングするには、$\\{file:size} 5000 を使用できます。

 

文字列

idempotent (フィルター)

Camel が既に処理されたファイルをスキップできるように、Idempotent Consumer EIP パターンを使用するオプション。デフォルトでは、1000 エントリーを保持するメモリーベースの LRUCache を使用します。noop=true の場合は、同じファイルを何度も使用することを回避するため、べき等性も有効になります。

false

ブール値

idempotentKey (フィルター)

カスタムのべき等性キーを使用するには、以下を行います。デフォルトでは、ファイルの絶対パスが使用されます。File 言語を使用できます。たとえば、ファイル名とファイルサイズを使用するには idempotentKey=$\\{file:name}-$\\{file:size} となります。

 

文字列

idempotentRepository (フィルター)

何も指定されておらず、べき等性が true の場合、プラグ可能なリポジトリー org.apache.camel.spi.IdempotentRepository はデフォルトで MemoryIdempotentRepository を使用します。

 

IdempotentRepository

include (filter)

ファイル名が正規表現パターンに一致する場合にファイルを含めるために使用されます (照合では大文字と小文字を区別します)。プラス記号などのシンボルを使用する場合は、エンドポイント URI としてこれを設定する場合は RAW() 構文を使用して設定する必要があります。詳細はエンドポイント URI の設定を参照してください。

 

文字列

includeExt (フィルター)

ファイル拡張子名 (大文字と小文字を区別しない) に一致するファイルを含めるために使用されます。たとえば、txt ファイルを含めるには includeExt=txt を使用します。複数の拡張子はコンマで区切ることができます。たとえば、txt ファイルと xml ファイルを含める場合は、includeExt=txt,xml を使用します。ファイル拡張子にはすべての部分が含まれています。たとえば、mydata.tar.gz という名前のファイルの場合、拡張子は tar.gz になります。より柔軟性を高めるには、include/exclude オプションを使用します。

 

文字列

maxDepth (フィルター)

ディレクトリーを再帰的に処理する際にトラバースする最大深度。

2147483647

int

maxMessagesPerPoll (フィルター)

ポーリングごとに収集する最大メッセージを定義します。デフォルトでは最大値は設定されていません。たとえば制限を 1000 などに設定して、数千のファイルがあるサーバーの起動を回避できます。無効にするには、0 または負の値を設定します。注記: このオプションが使用されている場合、File および FTP コンポーネントはソート前に制限されます。たとえば、100000 個のファイルがある場合に maxMessagesPerPoll=500 を使用すると、最初の 500 個のファイルのみ選択され、ソートされます。eagerMaxMessagesPerPoll オプションを使用して、これを false に設定すると、最初にすべてのファイルをスキャンし、後でソートできます。

 

int

minDepth (フィルター)

ディレクトリーを再帰的に処理する際に処理を開始する最小深度。minDepth=1 はベースディレクトリーを意味します。minDepth=2 は最初のサブディレクトリーを意味します。

 

int

move (filter)

処理後に移動する場合にファイル名を動的に設定するために使用される式 (Simple 言語など)。ファイルを .done サブディレクトリーに移動するには、.done と入力します。

 

文字列

exclusiveReadLockStrategy (ロック)

org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy 実装としてのプラグ可能な読み取りロック。

 

GenericFileExclusiveReadLockStrategy

readLock (ロック)

ファイルに排他的な読み取りロックがある (つまり、ファイルが進行中または書き込み中ではない) 場合にのみファイルをポーリングするために、コンシューマーが使用します。Camel はファイルロックが許可されるまで待機します。このオプションは、ストラテジーでビルドを提供します。none: 読み取りロックは使用されていません。markerFile: Camel はマーカーファイル (fileName.camelLock) を作成してロックを保持します。このオプションは、FTP コンポーネント changed では使用できません。changed は、ファイルの長さ/変更のタイムスタンプを使用して、ファイルが現在コピーされているかどうかを検出します。この判断には 1 秒以上かかるため、このオプションは他のオプションほど速くファイルを消費できませんが、JDK IO API はファイルが別のプロセスで使用中かどうか判断できないため、信頼性が高くなります。readLockCheckInterval オプションを使用してチェック頻度を設定できます。fileLock は java.nio.channels.FileLock 用です。このオプションは、Windows OS および FTP コンポーネントでは使用できません。ファイルシステムが分散ファイルロックをサポートしていない限り、マウント/共有によりリモートファイルシステムにアクセスする場合、このアプローチは避ける必要があります。rename: 排他的な読み取りロックを取得できるかどうかのテストとしてファイル名の変更を試みるために使用します。idempotent: (ファイルコンポーネントのみ) 読み取りロックとして idempotentRepository を使用するためのものです。これにより、べき等性リポジトリーの実装がサポートする場合に、クラスターリングをサポートする読み取りロックを使用できます。idempotent-changed: (ファイルコンポーネントのみ) idempotentRepository および changed を結合された read-lock として使用するためのものです。これにより、べき等性リポジトリーの実装がサポートする場合に、クラスターリングをサポートする読み取りロックを使用できます。idempotent-rename: (ファイルコンポーネントのみ) idempotentRepository および rename を結合された読み取りロックとして使用するためのものです。これにより、べき等性リポジトリーの実装がサポートする場合にクラスターリングをサポートする読み取りロックを使用できます。注意:さまざまな読み取りロックは、異なるノードの同時コンシューマーが共有ファイルシステム上の同じファイルに対して競合するクラスターモードでの動作にすべて適しているわけではありません。アトミックに近い操作を使用して空のマーカーファイルを作成する markerFile ですが、クラスターでの動作は保証されていません。fileLock の方が良好に機能しますが、ファイルシステムは分散ファイルロックなどに対応する必要があります。べき等性リポジトリーが Hazelcast コンポーネントや Infinispan などのクラスターリングに対応している場合、べき等性等読み取りロックを使用できます。

列挙値:

  • none
  • markerFile
  • fileLock
  • rename
  • changed
  • idempotent
  • idempotent-changed
  • idempotent-rename

none

文字列

readLockCheckInterval (ロック)

読み取りロックでサポートされている場合、読み取りロックの間隔 (ミリ単位)。この間隔は、読み取りロックを取得する試行間のスリープに使用されます。たとえば、changed 読み取りロックを使用する場合、遅い書き込みに対応するために間隔を長く設定できます。デフォルトは 1 秒ですが、プロデューサーによるファイルの書き込みが非常に遅い場合は短すぎる可能性があります。注記: FTP の場合、デフォルトの readLockCheckInterval は 5000 です。readLockTimeout の値は readLockCheckInterval よりも大きくする必要がありますが、thumb のルールではタイムアウトは readLockCheckInterval の 2 倍以上にする必要があります。これは、タイムアウトに達する前に読み取りロックプロセスがロックを取得しようとするためのアンブル時間を確保するために必要です。

1000

long

readLockDeleteOrphanLockFiles (lock)

Camel が適切にシャットダウンされなかった場合 (JVM クラッシュなど)、マーカーファイルを使用した読み取りロックが、ファイルシステムに残っている可能性のある孤立した読み取りロックファイルを起動時に削除する必要があるかどうか。このオプションを false にすると、孤立したロックファイルがあると Camel はそのファイルを取得しようとしなくなります。これは、別のノードが同じ共有ディレクトリーから同時にファイルを読み取っているが原因である可能性もあります。

true

boolean

readLockIdempotentReleaseAsync (lock)

遅延リリースタスクを同期と非同期のどちらにするか。詳細は、readLockIdempotentReleaseDelay オプションを参照してください。

false

boolean

readLockIdempotentReleaseAsyncPoolSize (lock)

非同期リリースタスクを使用する場合の、スケジュール済みスレッドプール内のスレッドの数。デフォルトの 1 コアスレッドの使用で、ほとんどすべてのユースケースに対応できます。べき等リポジトリーの更新が遅い場合、または処理するファイルが多い場合にのみ、より高い値に設定してください。readLockIdempotentReleaseExecutorService オプションを設定して共有スレッドプールを使用する場合、このオプションは使用されません。詳細は、readLockIdempotentReleaseDelay オプションを参照してください。

 

int

readLockIdempotentReleaseDelay (lock)

リリースタスクをミリ秒遅らせるかどうか。これを使用して、共有べき等性リポジトリーを使用するアクティブ/アクティブクラスターシナリオで、ファイルに読み取りロックが適用されていると見なされる場合にウィンドウを拡張するリリースタスクを遅らせることができます。そうすることで、競合条件により、他のノードは同じファイルをスキャンして取得できくなります。リリースタスクの期間を拡張することで、このような状況を防ぐことができます。readLockRemoveOnCommit を true に設定した場合にのみ、遅延が必要になることに注意してください。

 

int

readLockIdempotentReleaseExecutorService (lock)

非同期リリースタスクにカスタムおよび共有スレッドプールを使用します。詳細は、readLockIdempotentReleaseDelay オプションを参照してください。

 

ScheduledExecutorService

readLockLoggingLevel (lock)

読み取りロックを取得できなかったときに使用されるロギングレベル。デフォルトでは、DEBUG がログに記録されます。このレベルを変更できます。たとえば、ログを記録しないように OFF に設定できます。このオプションを適用できる readLock タイプは、changed、fileLock、idempotent、idempotent-changed、idempotent-rename、rename のみです。

列挙値:

  • TRACE
  • DEBUG
  • INFO
  • WARN
  • ERROR
  • OFF

DEBUG

LoggingLevel

readLockMarkerFile (lock)

changed、rename、exclusive の読み取りロックタイプでマーカーファイルを使用するかどうか。デフォルトでは、他のプロセスが同じファイルを取得するのを防ぐために、マーカーファイルも使用されます。このオプションを false に設定すると、この動作をオフにできます。たとえば、Camel アプリケーションによってマーカーファイルをファイルシステムに書き込みたくない場合などです。

true

boolean

readLockMinAge (lock)

このオプションは、readLock=changed の場合にのみ適用されます。読み取りロックを取得しようとする前に、ファイルが経過しなければならない最小期間を指定できます。たとえば、readLockMinAge=300s を使用して、ファイルに 5 分以上の経過を要求します。これにより、指定された期間以上のファイルの取得を試みるため、changed 読み取りロックが高速化されます。

0

long

readLockMinLength (lock)

このオプションは、readLock=changed の場合にのみ適用されます。最小ファイル長を設定できます。デフォルトで Camel はファイルにデータが含まれていると想定するため、デフォルト値は 1 です。このオプションをゼロに設定すると、長さがゼロのファイルを使用できます。

1

long

readLockRemoveOnCommit (lock)

このオプションは、readLock=idempotent にのみ適用されます。ファイル処理に成功し、コミットが行われるときに、べき等性リポジトリーからファイル名のエントリーを削除するかどうかを指定できます。デフォルトはファイルは削除されないため、競合状態が発生せず、別のアクティブなノードがファイルを取得しようとする可能性があります。代わりにべき等性リポジトリーは、X 分後にファイル名のエントリーをエビクトするように設定するエビクションストラテジーをサポートする場合があります。これにより、競合状態の問題がなくなります。詳細は、readLockIdempotentReleaseDelay オプションを参照してください。

false

boolean

readLockRemoveOnRollback (lock)

このオプションは、readLock=idempotent にのみ適用されます。ファイル処理に失敗し、ロールバックが発生するときに、べき等性リポジトリーからファイル名のエントリーを削除するかどうかを指定できます。このオプションが false の場合、ファイル名のエントリーが (ファイルがコミットされたかのように) 確認されます。

true

boolean

readLockTimeout (ロック)

読み取りロックでサポートされている場合、読み取りロックのオプションのタイムアウト (ミリ秒単位)。読み取りロックを許可できず、タイムアウトがトリガーされた場合、Camel はファイルをスキップします。次のポーリングで、Camel はファイルを再試行します。このときに、読み取りロックが許可される可能性があります。無期限を指定するには、0 以下の値を使用します。現在、fileLock、changed、および rename がタイムアウトに対応しています。注記: FTP の場合、デフォルトの readLockTimeout 値は 10000 ではなく 20000 です。readLockTimeout の値は readLockCheckInterval よりも大きくする必要がありますが、thumb のルールではタイムアウトは readLockCheckInterval の 2 倍以上にする必要があります。これは、タイムアウトに達する前に読み取りロックプロセスがロックを取得しようとするためのアンブル時間を確保するために必要です。

10000

long

backoffErrorThreshold (スケジューラー)

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

 

int

backoffIdleThreshold (スケジューラー)

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

 

int

backoffMultiplier (スケジューラー)

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

 

int

delay (スケジューラー)

次のポーリングまでの時間 (ミリ秒単位)。

500

long

greedy (スケジューラー)

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

false

boolean

initialDelay (スケジューラー)

最初のポーリングが開始されるまでの時間 (ミリ秒単位)。

1000

long

repeatCount (スケジューラー)

実行の最大数を指定します。そのため、これを 1 に設定するとスケジューラーは 1 度だけ実行されます。これを 5 に設定した場合、5 回だけ実行されます。0 または負の値を設定すると、無制限に実行されます。

0

long

runLoggingLevel (scheduler)

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

列挙値:

  • TRACE
  • DEBUG
  • INFO
  • WARN
  • ERROR
  • OFF

TRACE

LoggingLevel

scheduledExecutorService (スケジューラー)

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

 

ScheduledExecutorService

scheduler (スケジューラー)

camel-spring または camel-quartz コンポーネントから cron スケジューラーを使用します。スケジューラーにビルドされた値 spring または quartz を使用。

none

オブジェクト

schedulerProperties (スケジューラー)

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

 

マップ

startScheduler (スケジューラー)

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

true

boolean

timeUnit (スケジューラー)

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

列挙値:

  • ナノ秒
  • マイクロ秒
  • MILLISECONDS
  • SECONDS
  • 時間

MILLISECONDS

TimeUnit

useFixedDelay (スケジューラー)

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

true

boolean

shuffle (sort)

ファイルの一覧をシャッフルします (ランダムな順序でのソート)

false

boolean

sortBy (並べ替え)

File 言語を使用したビルトインソート。ネストされたソートをサポートしているため、ファイル名でのソートと、2 つ目のグループとして変更日でソートできます。

 

文字列

sorter (sort)

java.util.Comparator クラスとしてのプラグ可能なソーター。

 

Comparator

注記

ファイルプロデューサーのデフォルト動作
デフォルトでは、同じ名前の既存ファイルが存在する場合は、既存ファイルをオーバーライドします。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る