111장. FTPS 구성 요소


Camel 버전 2.2에서 사용 가능

이 구성 요소는 FTP 및 SFTP 프로토콜을 통해 원격 파일 시스템에 대한 액세스를 제공합니다.

Maven 사용자는 이 구성 요소를 위해 다음 종속성을 pom.xml 에 추가해야 합니다.

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-ftp</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

자세한 내용은 FTP 구성 요소를 볼 수 있습니다.

111.1. URI 옵션

아래 옵션은 FTPS 구성 요소에만 사용할 수 있습니다.

FTPS 구성 요소는 아래 나열된 두 가지 옵션을 지원합니다.

이름설명기본값유형

useGlobalSslContext 매개변수 (보안)

글로벌 SSL 컨텍스트 매개 변수의 사용을 활성화합니다.

false

boolean

resolveProperty Placeholders (advanced)

구성 요소가 시작 시 자체적으로 속성 자리 표시자를 확인해야 하는지 여부입니다. String 유형의 속성만 속성 자리 표시자를 사용할 수 있습니다.Only properties which are of String type can use property placeholders.

true

boolean

FTPS 끝점은 URI 구문을 사용하여 구성됩니다.

ftps:host:port/directoryName

다음 경로 및 쿼리 매개변수를 사용합니다.

111.1.1. 경로 매개 변수(3 매개변수):

이름설명기본값유형

host

FTP 서버의 필수 호스트 이름

 

문자열

port

FTP 서버의 포트

 

int

directoryName

시작 디렉터리

 

문자열

111.1.2. 쿼리 매개변수(122 매개변수):

이름설명기본값유형

바이너리 (일반)

파일 전송 모드, BINARY 또는 ASCII를 지정합니다. 기본값은 ASCII(false)입니다.

false

boolean

charset (common)

이 옵션은 파일의 인코딩을 지정하는 데 사용됩니다. 소비자에서 이를 사용하여 파일의 인코딩을 지정할 수 있으며, 이 파일을 사용하면 Camel에서 파일 콘텐츠에 액세스하는 경우 파일 내용을 로드해야 하는 charset을 알 수 있습니다. 마찬가지로 파일을 작성할 때 이 옵션을 사용하여 파일을 작성할 문자 세트도 지정할 수 있습니다. Camel 파일을 작성할 때 데이터를 구성된 charset로 변환하기 위해 메시지 내용을 메모리로 읽을 수 있으므로 큰 메시지가 있는 경우 이 기능을 사용하지 마십시오.

 

문자열

연결 해제 (일반)

사용 후 원격 FTP 서버의 연결을 끊을지 여부입니다. 연결을 끊으면 FTP 서버에 대한 현재 연결만 끊어집니다. 중지하려는 소비자가 있는 경우 대신 소비자/경로를 중지해야 합니다.

false

boolean

doneFileName (common)

생산자: 제공된 경우 Camel은 원본 파일이 작성될 때 2nd done 파일을 작성합니다. 완료된 파일은 비어 있습니다. 이 옵션은 사용할 파일 이름을 구성합니다. 지정된 이름을 지정할 수 있습니다. 또는 동적 자리 표시자를 사용할 수 있습니다. 완료된 파일은 항상 원본 파일과 동일한 폴더에 작성됩니다. 소비자: 제공된 경우 Camel은 완료된 파일이 존재하는 경우에만 파일을 사용합니다. 이 옵션은 사용할 파일 이름을 구성합니다. 지정된 이름을 지정할 수 있습니다. 또는 동적 자리 표시자를 사용할 수 있습니다. 완료된 파일은 항상 원래 파일과 동일한 폴더에 있어야 합니다. $file.name 및 $file.name.noext만 동적 자리 표시자로 지원됩니다.

 

문자열

파일 이름 (일반)

파일 언어와 같은 식을 사용하여 파일 이름을 동적으로 설정합니다. 소비자의 경우 filename 필터로 사용됩니다. 생산자의 경우 쓸 파일 이름을 평가하는 데 사용됩니다. 표현식이 설정된 경우 CamelFileName 헤더보다 우선합니다. (참고: 헤더 자체는 표현식일 수도 있습니다.) 표현식 옵션은 문자열 및 식 유형을 모두 지원합니다. 식이 문자열 형식인 경우 항상 파일 언어를 사용하여 평가됩니다.If the expression is a String type, it is always evaluated using the File Language. 식 형식이 식 형식인 경우 지정된 식 형식이 사용됩니다.If the expression is an Expression type, the specified Expression type is used - this allows you, for example, to use OGNL expressions. 소비자의 경우 파일 이름을 필터링하는 데 사용할 수 있으므로 파일 언어 구문 mydata-$date:now:yyyyMMdd.txt를 사용하여 오늘 파일을 사용할 수 있습니다. 생산자는 기존 CamelFileName 헤더보다 우선하는 CamelOverruleFileName 헤더를 지원합니다. CamelOverruleFileName은 한 번만 사용되는 헤더이며 CamelFileName을 임시 저장소로 저장할 수 없으므로 나중에 복원해야 합니다.

 

문자열

passiveMode (일반)

패시브 모드 연결을 설정합니다. 기본값은 활성 모드 연결입니다.

false

boolean

구분 기호 (공용)

사용할 경로 구분 기호를 설정합니다. UNIX = Uses unix style path separator Windows = Uses Windows style path separator Auto = (기본값) Use existing path separator in file name

UNIX

PathSeparator

transferLoggingInterval Seconds (common)

진행 중인 업로드 및 다운로드 작업을 로깅할 때 사용할 간격(초)을 설정합니다. 이는 작업이 더 오래 걸리는 경우 진행률을 로깅하는 데 사용됩니다.

5

int

transferLoggingLevel (일반)

업로드 및 다운로드 작업의 진행 상황을 기록할 때 사용할 로깅 수준을 구성합니다.

DEBUG

LoggingLevel

transferLoggingVerbose (일반적으로)

업로드 및 다운로드 작업의 진행 상황을 세부 정보 표시 (fine grained) 로깅할지 여부를 구성합니다.

false

boolean

fastExistsCheck (common)

이 옵션을 true로 설정하면 camel-ftp는 목록 파일을 직접 사용하여 파일이 존재하는지 확인합니다. 일부 FTP 서버는 파일을 직접 나열할 수 없으므로 옵션이 false인 경우 camel-ftp는 이전 방법을 사용하여 디렉토리를 나열하고 파일이 존재하는지 확인합니다. 이 옵션은 또한 readLock=changed에 영향을 미치며 빠른 검사를 수행하여 파일 정보를 업데이트할지 여부를 제어합니다. 이는 FTP 서버에 많은 파일이 있는 경우 프로세스 속도를 높이는 데 사용할 수 있습니다.

false

boolean

bridgeErrorHandler (consumer)

소비자를 Camel 라우팅 오류 처리기에 브리징할 수 있습니다. 이는 소비자가 들어오는 메시지를 선택하는 동안 예외가 발생한 것을 의미하며, 이제 메시지로 처리되어 라우팅 오류 처리기에 의해 처리됩니다. 기본적으로 소비자는 org.apache.camel.spi.ExceptionHandler를 사용하여 WARN 또는 ERROR 수준에서 기록되고 무시되는 예외를 처리합니다.

false

boolean

삭제 (consumer)

true인 경우 파일이 성공적으로 처리된 후 삭제됩니다.

false

boolean

moveFailed (consumer)

간단한 언어를 기반으로 이동 실패 표현식을 설정합니다. 예를 들어 파일을 .error 하위 디렉토리로 이동하려면 다음을 사용합니다. .error. 참고: 파일을 실패 위치로 이동할 때 Camel에서 오류를 처리하고 파일을 다시 가져오지 않습니다.

 

문자열

noop (consumer)

true인 경우 파일을 어떤 방식으로든 이동하거나 삭제하지 않습니다. 이 옵션은 읽기 전용 데이터 또는 ETL 형식 요구 사항에 적합합니다.This option is good for readonly data, or for ETL type requirements. noop=true인 경우 Camel은 같은 파일을 반복해서 사용하지 않도록 멱등=true로 설정합니다.

false

boolean

preMove (consumer)

처리 전에 이동할 때 파일 이름을 동적으로 설정하는 데 사용되는 표현식(예: File Language)입니다. 예를 들어 진행 중인 파일을 주문 디렉터리로 이동하려면 이 값을 order로 설정합니다.

 

문자열

preSort (consumer)

Pre-sort를 활성화하면 소비자가 폴링 중에 파일 시스템에서 검색한 파일 및 디렉터리 이름을 정렬합니다. 정렬된 순서로 파일에서 작업해야 하는 경우 이 작업을 수행할 수 있습니다. 사용자가 필터링을 시작하고 Camel에서 처리할 파일을 승인하기 전에 사전 정렬이 실행됩니다. 이 옵션은 default=false 의미로 비활성화됨을 의미합니다.

false

boolean

재귀 (consumer)

디렉터리가 있는 경우 는 모든 하위 디렉터리에서 파일도 찾습니다.

false

boolean

resumeDownload (consumer)

resume download가 활성화되어 있는지 여부를 설정합니다. 이는 FTP 서버에서 지원해야 합니다(대부분의 모든 FTP 서버가 이를 지원함). 또한, localWorkDirectory 옵션을 구성해야 하므로 다운로드한 파일이 로컬 디렉터리에 저장되어야 하며, 다운로드 다시 시작을 지원하는 데 필요한 옵션 바이너리를 활성화해야 합니다.

false

boolean

sendEmptyMessageWhenIdle (consumer)

폴링 소비자가 파일을 폴링하지 않은 경우 이 옵션을 활성화하여 빈 메시지( 본문 없음)를 대신 보낼 수 있습니다.

false

boolean

streamDownload (consumer)

로컬 작업 디렉터리를 사용하지 않는 경우 사용하도록 다운로드 방법을 설정합니다. true로 설정하면 원격 파일이 읽을 때 경로로 스트리밍됩니다. false로 설정하면 경로로 전송되기 전에 원격 파일이 메모리에 로드됩니다.

false

boolean

DirectoryMustExist (consumer)

DirectoryMustExist를 시작하는 것과 유사하지만 재귀 하위 디렉터리를 폴링하는 동안 적용됩니다.

false

boolean

다운로드 (consumer)

FTP 소비자가 파일을 다운로드할지 여부입니다. 이 옵션을 false로 설정하면 메시지 본문이 null이지만 소비자가 파일 이름, 파일 크기 등과 같은 파일에 대한 세부 정보가 있는 Camel Exchange를 트리거합니다. 그것은 단지 파일이 다운로드 되지 않습니다.

false

boolean

예외 처리기 (consumer)

소비자가 사용자 지정 ExceptionHandler를 사용하도록 하려면 다음을 수행합니다. bridgeErrorHandler 옵션이 활성화되어 있는지 확인한 후 이 옵션은 사용되지 않습니다. 기본적으로 소비자는 WARN 또는 ERROR 수준에서 기록되고 무시되는 예외를 처리합니다.

 

ExceptionHandler

exchangePattern (consumer)

소비자가 교환을 생성할 때 교환 패턴을 설정합니다.

 

ExchangePattern

handleDirectoryParser AbsoluteResult (consumer)

디렉터리가 절대 경로가 있는 경우 소비자가 경로의 하위 폴더 및 파일을 처리하는 방법을 설정할 수 있습니다. 그 이유는 일부 FTP 서버가 절대 경로가 있는 파일 이름을 반환할 수 있으며, 그렇다면 FTP 구성 요소에서 반환된 경로를 상대 경로로 변환하여 이를 처리해야 합니다.

false

boolean

ignoreFileNotFoundOr PermissionError (consumer)

디렉토리가 파일을 나열할 때 또는 파일을 다운로드할 때 또는 권한 오류로 인해 존재하지 않는 경우를 무시할지 여부입니다. 기본적으로 디렉터리 또는 파일이 없거나 사용 권한이 충분하지 않으면 예외가 발생합니다. 이 옵션을 true로 설정하면 이를 무시할 수 있습니다.

false

boolean

inProgressRepository (consumer)

진행 중인 리포지토리 org.apache.camel.spi.IdempotentRepository. 진행 중인 리포지토리는 현재 사용 중인 진행 중인 파일을 설명하는 데 사용됩니다. 기본적으로 메모리 기반 리포지토리가 사용됩니다.

 

IdempotentRepository

localWorkDirectory (consumer)

사용하는 경우 메모리에 콘텐츠를 로드하지 않도록 로컬 작업 디렉터리를 로컬 파일에 직접 원격 파일 내용을 저장하는 데 사용할 수 있습니다. 이는 매우 큰 원격 파일을 사용하고 따라서 메모리를 절약할 수 있는 경우 유용합니다.

 

문자열

OnCompletionException Handler (consumer)

사용자 지정 org.apache.camel.spi.ExceptionHandler를 사용하여 소비자가 커밋 또는 롤백을 수행하는 완료 프로세스에서 발생하는 발생된 예외를 처리합니다. 기본 구현은 WARN 수준에서 예외를 기록하고 무시합니다.

 

ExceptionHandler

pollStrategy (consumer)

플러그형 org.apache.camel.PollingConsumerPollingStrategy를 사용하면 Camel에서 Exchange를 생성하고 라우팅하기 전에 폴링 작업 중에 일반적으로 발생한 오류 처리를 제어하는 사용자 정의 구현을 제공할 수 있습니다.

 

PollingConsumerPoll Strategy

processStrategy (consumer)

플러그형 org.apache.camel.component.file.GenericFileProcessStrategy를 사용하여 고유한 readLock 옵션을 구현할 수 있습니다. 은 특수 조건이 존재하기 전에 특수 조건을 충족해야 하는 경우(예: 특수 준비 파일)도 사용할 수 있습니다. 이 옵션을 설정하면 readLock 옵션이 적용되지 않습니다.

 

GenericFileProcess Strategy

receiveBufferSize (consumer)

FTPClient에서만 사용되는 수신(download) 버퍼 크기

32768

int

StartDirectoryMustExist (consumer)

시작 디렉터리가 있어야 하는지 여부입니다. autoCreate 옵션은 기본적으로 활성화되어 있습니다. 즉, 시작 디렉터리가 없는 경우 자동으로 생성됩니다. 자동 생성을 비활성화하고 이를 활성화하여 시작 디렉터리가 있는지 확인할 수 있습니다. 디렉터리가 없는 경우 예외를 throw합니다.

false

boolean

UseList (consumer)

파일을 다운로드할 때 LIST 명령을 사용할지 여부입니다. 기본값은 true입니다. 일부 사용 사례에서는 특정 파일을 다운로드하고 LIST 명령을 사용할 수 없으므로 이 옵션을 false로 설정할 수 있습니다. 이 옵션을 사용할 때 다운로드할 특정 파일에는 파일 크기, 타임스탬프, 권한 등과 같은 메타 데이터 정보가 포함되어 있지 않습니다. 이러한 정보는 LIST 명령을 사용하는 경우에만 검색할 수 있기 때문입니다.

true

boolean

fileExist (producer)

동일한 이름의 파일이 이미 있는 경우 어떻게 해야 합니까. 기본값인 을 재정의하고 기존 파일을 대체합니다. append - 기존 파일에 내용을 추가합니다. fail - 기존 파일이 이미 있음을 나타내는 GenericFileOperationException을 throw합니다. ignore - 자동으로 문제를 무시하고 기존 파일을 재정의하지 않지만 모든 것이 괜찮다고 가정합니다. move - 옵션은 moveExisting 옵션을 사용하여 구성해야 합니다. eagerDeleteTargetFile 옵션을 사용하여 파일을 이동하는 경우 수행할 작업을 제어할 수 있으며, 기존 파일이 이미 존재합니다. 그렇지 않으면 이동 작업이 실패합니다. 이동 옵션은 대상 파일을 작성하기 전에 기존 파일을 이동합니다. TryRename은 tempFileName 옵션이 사용 중인 경우에만 적용할 수 있습니다. 이렇게 하면 존재하는 확인을 수행하지 않고 임시 이름에서 실제 이름으로 파일 이름을 바꿀 수 있습니다. 일부 파일 시스템 및 특히 FTP 서버에서 이 확인이 더 빠를 수 있습니다.

override

GenericFileExist

flatten (producer)

flatten은 모든 선행 경로를 제거하도록 파일 이름 경로를 병합하는 데 사용되므로 파일 이름만 있으면 됩니다. 이를 통해 하위 디렉터리로 반복적으로 사용할 수 있지만 파일을 다른 디렉토리에 쓸 때 단일 디렉토리에 쓸 수 있습니다. 생산자에서 이를 true로 설정하면 CamelFileName 헤더의 모든 파일 이름이 모든 선행 경로에 대해 제거됩니다.

false

boolean

jailStartingDirectory (producer)

시작 디렉토리(및 하위 명령)에 파일 쓰기 전용(재무 제한)에 사용됩니다. 이는 Camel이 외부 디렉터리에 파일을 쓸 수 없도록 기본적으로 활성화되어 있습니다(장에서 더 안전하게 보호됨). 상위 또는 루트 폴더와 같은 시작 디렉토리 외부의 디렉터리에 파일을 쓸 수 있도록 이 기능을 해제할 수 있습니다.

true

boolean

기존 이동 (producer)

fileExist=Move가 구성될 때 사용할 파일 이름을 계산하는 데 사용되는 표현식(예: File Language)입니다. 파일을 백업 하위 디렉터리로 이동하려면 backup을 입력하면 됩니다. 이 옵션은 file:name, file:name.ext, file:name.noext, file:onlyname, file:onlyname.noext, file:ext 및 file:parent 토큰만 지원합니다. FTP 구성 요소에서 기존 파일을 현재 디렉터리 기반의 상대 디렉토리로만 이동할 수 있으므로 file:parent는 FTP 구성 요소에서 지원되지 않습니다.

 

문자열

tempFileName (producer)

tempPrefix 옵션과 동일하지만 파일 언어를 사용할 때 임시 파일 이름의 이름을 보다 세밀하게 제어할 수 있습니다.

 

문자열

tempPrefix (producer)

이 옵션은 임시 이름을 사용하여 파일을 작성한 다음 쓰기가 완료된 후 실제 이름으로 이름을 바꾸는 데 사용됩니다. 은 기록되는 파일을 식별하는 데 사용할 수 있으며 진행 중인 파일에서 읽는 소비자(정상 읽기 잠금을 사용하지 않음)도 방지할 수 있습니다. 큰 파일을 업로드할 때 FTP에서 자주 사용됩니다.

 

문자열

allownullBody (producer)

파일을 작성하는 동안 null 본문이 허용되는지 여부를 지정하는 데 사용됩니다. true로 설정하면 빈 파일이 생성되고 false로 설정되고, 파일 구성 요소에 null 본문을 보내려고 하면 GenericFileWriteException of 'Cannot write null body to file.'가 throw됩니다. fileExist 옵션이 'Override'로 설정된 경우 파일이 잘려지고 파일을 추가하도록 설정하면 변경되지 않습니다.

false

boolean

chmod (producer)

저장된 파일에 chmod를 설정할 수 있습니다. 예: chmod=640입니다.

 

문자열

disconnectOnBatchComplete (producer)

Batch 업로드가 완료된 직후 원격 FTP 서버에서 연결을 해제할지 여부입니다. disconnectOnBatchComplete는 현재 FTP 서버와의 연결만 분리합니다.

false

boolean

eagerDeleteTargetFile (producer)

기존 대상 파일을 신속하게 삭제할지 여부입니다. 이 옵션은 fileExists=Override 및 tempFileName 옵션을 사용하는 경우에만 적용됩니다. 임시 파일을 작성하기 전에 이를 사용하여 대상 파일을 삭제(false로 설정)할 수 있습니다. 예를 들어 대용량 파일을 작성하고 임시 파일을 작성하는 동안 대상 파일이 존재하도록 할 수 있습니다. 이렇게 하면 임시 파일의 이름이 대상 파일 이름으로 변경되기 직전에 마지막까지 대상 파일이 삭제됩니다. 이 옵션은 fileExist=Move가 활성화되어 있을 때 기존 파일을 삭제할지 여부를 제어하는 데도 사용됩니다. 이 옵션 copyAndDeleteOnRenameFails false를 사용하면 기존 파일이 존재하면 true인 경우 기존 파일이 throw된 다음 이동 작업 전에 기존 파일이 삭제됩니다.

true

boolean

keepLastModified (producer)

는 소스 파일에서 마지막으로 수정된 타임스탬프를 유지합니다(있는 경우). 그러면 Exchange.FILE_LAST_MODIFIED 헤더를 사용하여 타임스탬프를 배치합니다. 이 헤더에는 타임스탬프가 있는 java.util.Date 또는 long이 포함될 수 있습니다. 타임 스탬프가 존재하고 옵션이 활성화되면 이 타임스탬프가 기록된 파일에 설정됩니다. 참고: 이 옵션은 파일 생산자에만 적용됩니다. 이 옵션은 ftp 생산자와 함께 사용할 수 없습니다.

false

boolean

moveExistingFileStrategy (producer)

fileExist=Move가 구성될 때 사용할 특수 네이밍 토큰이 있는 파일을 이동하는 데 사용되는 전략(Custom Strategy)입니다. 사용자 정의 전략이 제공되지 않는 경우 기본적으로 구현이 사용됩니다.

 

FileMove 기존 전략

sendNoop (producer)

FTP 서버에 파일을 업로드하기 전에 noop 명령을 사전 쓰기 검사로 보낼지 여부입니다. 이는 기본적으로 연결의 검증으로 활성화되어 있으므로 자동으로 파일을 업로드할 수 있습니다. 그러나 이로 인해 문제가 발생하면 이 옵션을 해제할 수 있습니다.

true

boolean

activePortRange (advanced)

클라이언트 측 포트 범위를 활성 모드로 설정합니다. 구문은: minPort-maxPort Both 포트 번호가 포함되어 있으며 모든 1xxxx 포트를 포함하는 eg 10000-19999가 포함되어 있습니다.

 

문자열

autoCreate (advanced)

파일의 경로 이름에 누락된 디렉터리를 자동으로 생성합니다. file consumer의 경우 이는 시작 디렉토리를 생성하는 것을 의미합니다. 파일 생산자의 경우 파일을 작성해야 하는 디렉터리를 의미합니다.

true

boolean

bufferSize (advanced)

바이트로 크기의 쓰기 버퍼입니다.

131072

int

ConnectTimeout (advanced)

FTPClient와 JSCH 모두에서 사용되는 연결을 설정할 때까지 연결 시간 초과를 설정합니다.

10000

int

FTPClient (advanced)

FTPClient의 사용자 정의 인스턴스 사용

 

FTPClient

ftpClientConfig (advanced)

FTPClientConfig의 사용자 지정 인스턴스를 사용하여 끝점에서 사용해야 하는 FTP 클라이언트를 구성합니다.

 

FTPClientConfig

ftpClientConfigParameters (고급)

FtpComponent에서 FTPClientConfig에 대한 추가 매개변수 제공

 

map

ftpClientParameters (advanced)

FtpComponent에서 FTPClient에 대한 추가 매개 변수를 제공하는 데 사용됩니다.

 

map

maximumReconnectAttempts (advanced)

원격 FTP 서버에 연결을 시도할 때 Camel이 수행하는 최대 다시 연결 시도를 지정합니다. 이 동작을 비활성화하려면 0을 사용합니다.

 

int

reconnectDelay (advanced)

밀리코어의 Camel이 지연되면 다시 연결을 시도하기 전에 대기합니다.

 

long

siteCommand (advanced)

성공적인 로그인 후 실행할 선택적 site 명령을 설정합니다. 여러 사이트 명령은 새 줄 문자를 사용하여 구분할 수 있습니다.

 

문자열

soTimeout (advanced)

FTPClient에서만 사용되는 시간 초과를 설정합니다.

300000

int

stepwise (advanced)

파일을 다운로드할 때 파일 구조를 전달하는 동안 단계별로 변경해야 하는지 또는 디렉터리에 파일을 업로드할 때 파일을 단계별로 변경해야 하는지 여부를 설정합니다. 예를 들어 보안상의 이유로 FTP 서버의 디렉터리를 변경할 수 없는 경우 이를 비활성화할 수 있습니다.

true

boolean

synchronous (advanced)

동기 처리를 엄격하게 사용해야 하는지 또는 Camel이 비동기 처리를 사용할 수 있는지 여부를 설정합니다(지원되는 경우).

false

boolean

throwExceptionOnConnect Failed (advanced)

연결 실패(Exhausted) 기본 예외가 throw되지 않고 WARN이 기록되면 예외가 throw되어야 합니다. 이를 사용하여 throw되는 예외를 활성화하고 org.apache.camel.spi.PollingConsumerPollStrategy 롤백 메서드에서 throw된 예외를 처리할 수 있습니다.

false

boolean

시간 초과 (advanced)

FTPClient에서만 사용하는 응답을 기다리는 데 필요한 데이터 시간 초과 설정

30000

int

antExclude (filter)

ant 스타일 필터 제외. ant included와 antExclude가 모두 사용되면 antExclude가 ant Include보다 우선합니다. 여러 제외를 쉼표로 구분된 형식으로 지정할 수 있습니다.

 

문자열

antFilterCaseSensitive (filter)

ant 필터에 대/소문자 구분 플래그를 설정

true

boolean

ant included (filter)

ant 스타일 필터 포함. 여러 개의 포함 사항을 쉼표로 구분된 형식으로 지정할 수 있습니다.

 

문자열

eagerMaxMessagesPerPoll (filter)

maxMessagesPerPoll의 제한을 신속하게 수행할 수 있는지 여부를 제어할 수 있습니다. 원하는 경우 제한을 사용하면 파일을 검사하는 동안 제한이 있습니다. false로 모든 파일을 스캔한 다음 정렬을 수행합니다. 이 옵션을 false로 설정하면 모든 파일을 먼저 정렬한 다음 폴링을 제한할 수 있습니다. 이 경우 정렬을 수행하려면 모든 파일 세부 정보가 메모리에 있으므로 메모리 사용량이 높아야 합니다.

true

boolean

exclude (filter)

은 파일을 제외하는 데 사용됩니다. filename이 regex 패턴과 일치하는 경우(대문자 in-senstive)입니다. 더하기 기호와 같은 기호를 사용하고 다른 기호를 엔드포인트 uri로 구성하면 RAW() 구문을 사용하여 이를 구성해야 합니다. 끝점 URI 구성에 대한 자세한 내용은 참조

 

문자열

filter (필터)

Pluggable 필터를 org.apache.camel.component.file.GenericFileFilter 클래스로 필터링합니다. 필터가 accept() 메서드에서 false를 반환하면 파일을 건너뜁니다.

 

GenericFileFilter

filterDirectory (filter)

단순 언어를 기반으로 디렉터리를 필터링합니다. 예를 들어 현재 날짜에 대해 필터링하려면 $date:now:yyyyMMdd와 같은 간단한 날짜 패턴을 사용할 수 있습니다.

 

문자열

filterFile (filter)

단순 언어를 기반으로 파일을 필터링합니다. 예를 들어 파일 크기를 필터링하려면 $file:size 5000을 사용할 수 있습니다.

 

문자열

등(filter)

Idempotent Consumer EIP 패턴을 사용하여 Camel이 이미 처리된 파일을 건너뛸 수 있도록 하는 옵션. 기본적으로 1000개의 항목이 있는 메모리 기반 LRUCache를 사용합니다. noop=true인 경우 동일한 파일을 반복해서 사용하지 않도록 멱등이 활성화됩니다.

false

부울

멱등Key (filter)

사용자 지정 멱등 키를 사용하려면 다음을 수행합니다. 기본적으로 파일의 절대 경로가 사용됩니다. 파일 언어를 사용하여 파일 이름과 파일 크기를 사용할 수 있습니다. 멱등Key=$file:name-$file:size

 

문자열

멱등Repository (필터)

플러그형 리포지토리 org.apache.camel.spi.IdempotentRepository은 지정되어 있지 않고 멱등이 true인 경우 기본적으로 MemoryMessageIdRepository을 사용합니다.

 

IdempotentRepository

포함 (필터)

은 파일을 포함하는 데 사용됩니다. filename이 regex 패턴과 일치하는 경우 (대/소문자를 구분하지 않음) 더하기 기호와 같은 기호를 사용하고 다른 기호를 엔드포인트 uri로 구성하면 RAW() 구문을 사용하여 이를 구성해야 합니다. 끝점 URI 구성에 대한 자세한 내용은 참조

 

문자열

maxdepth (filter)

디렉터리를 재귀적으로 처리할 때 이동할 최대 깊이입니다.

2147483647

int

maxMessagesPerPoll (filter)

폴링당 수집할 최대 메시지를 정의합니다. 기본적으로 최대값은 설정되어 있지 않습니다. 은 수천 개의 파일이 있는 서버를 시작할 때 발생하지 않도록 (예: 1000)의 제한을 설정하는 데 사용할 수 있습니다. 0 또는 음수 값을 비활성화로 설정합니다. 참고: 이 옵션이 사용 중인 경우 파일 및 FTP 구성 요소는 정렬 전에 제한됩니다. 예를 들어 100000개의 파일이 있고 maxMessagesPerPoll=500을 사용하는 경우 처음 500개 파일만 선택한 다음 정렬됩니다. eagerMaxMessagesPerPoll 옵션을 사용하여 먼저 모든 파일을 스캔한 다음 나중에 정렬할 수 있도록 이를 false로 설정할 수 있습니다.

 

int

minDepth (filter)

디렉터리를 재귀적으로 처리할 때 처리를 시작하는 최소 깊이입니다. minDepth=1을 사용하면 기본 디렉터리가 됩니다. minDepth=2를 사용하면 첫 번째 하위 디렉터리가 됩니다.

 

int

이동 (filter)

처리 후 이동할 때 파일 이름을 동적으로 설정하는 데 사용되는 표현식(예: Simple Language)입니다. 파일을 .done 하위 디렉터리로 이동하려면 .done을 입력하면 됩니다.

 

문자열

exclusiveReadLockStrategy (lock)

org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy 구현으로 Pluggable read-lock.

 

GenericFileExclusive ReadLockStrategy

readLock (lock)

소비자가 파일에 배타적인 읽기 잠금이 있는 경우에만 파일을 폴링하는 데 사용합니다(즉, 파일이 진행 중이거나 기록되지 않음). Camel은 파일 잠금이 부여될 때까지 대기합니다. 이 옵션은 전략 빌드를 제공합니다. none - read lock is in use markerFile - Camel은 마커 파일 (fileName.camelLock)을 만든 다음 잠금을 유지합니다. 변경된 FTP 구성 요소에는 이 옵션을 사용할 수 없습니다. Changed는 파일 길이/수정 타임스탬프를 사용하여 파일이 현재 복사 중인지 여부를 탐지합니다. 최소한 1초를 사용하여 이를 결정하므로 이 옵션은 다른 항목과 마찬가지로 파일을 빠르게 사용할 수 없지만 JDK IO API는 파일이 현재 다른 프로세스에서 사용되고 있는지 여부를 확인할 수 없으므로 더 신뢰할 수 없습니다. readLockCheckInterval 옵션을 사용하여 확인 빈도를 설정할 수 있습니다. fileLock -는 java.nio.channels.FileLock을 사용하기 위한 것입니다. 이 옵션은 Windows 또는 FTP 구성 요소에서 사용할 수 없습니다. 파일 시스템이 분산 파일 잠금을 지원하지 않는 한 마운트/공유를 통해 원격 파일 시스템에 액세스하는 경우 이 방법을 피해야 합니다. 이름 바꾸기는 테스트로 파일 이름을 변경하려고 합니다. 멱등은 배타적인 읽기 잠금을 얻을 수 있습니다. 멱등은 멱등Repository만 읽기 잠금으로 사용하는 것입니다. 이를 통해 멱등 리포지토리 구현이 해당. idempotent-changed를 지원하는 경우 클러스터링을 지원하는 읽기 잠금을 사용할 수 있습니다. (파일 구성 요소 전용) 멱등Repository을 사용하고 결합된 read-lock로 변경된 경우 클러스터링을 사용할 수 있습니다. 이를 통해 멱등 리포지토리 구현이 해당. idempotent-rename을 지원하는 경우 클러스터링을 지원하는 읽기 잠금을 사용할 수 있습니다. (파일 구성 요소 전용) 멱등Repository을 사용하고 결합된 read-lock로 이름을 바꿉니다. 이를 통해 멱등 리포지토리 구현이 지원하는 경우 클러스터링을 지원하는 읽기 잠금을 사용할 수 있습니다. 참고: 다양한 읽기 잠금이 클러스터 모드로 작동하는 데 적합하지 않습니다. 다른 노드의 동시 소비자는 공유 파일 시스템의 동일한 파일에 대해 경쟁합니다. markerFile은 빈 마커 파일을 생성하는 데 원자성 작업을 사용하는 반면 클러스터에서는 작동하지 않을 수 있습니다. fileLock이 더 잘 작동할 수 있지만 파일 시스템은 분산 파일 잠금을 지원해야 합니다. 멱등 읽기 잠금을 사용하면 멱등 리포지토리에서 Hazelcast 구성 요소 또는 Infinispan과 같은 클러스터링을 지원하는 경우 클러스터링을 지원할 수 있습니다.

none

문자열

readLockCheckInterval (lock)

읽기 잠금에서 지원되는 경우 read-lock의 간격을 밀리코어로 설정합니다. 이 간격은 읽기 잠금을 획득하려는 시도 사이에 잠자는 데 사용됩니다. 예를 들어 변경된 읽기 잠금을 사용하는 경우 속도가 느린 쓰기를 수행하도록 간격 기간을 설정할 수 있습니다. 프로듀서가 파일을 쓰는 속도가 매우 느린 경우 기본값은 1초입니다. 참고: FTP의 경우 기본 readLockCheckInterval은 5000입니다. readLockTimeout 값은 readLockCheckInterval보다 커야하지만 엄지 손가락 규칙에는 readLockCheckInterval보다 2배 이상 높은 시간 초과가 있습니다. 이 작업은 읽기 잠금 프로세스가 시간 초과에 도달하기 전에 잠금을 잡으려는 대기 시간이 허용되도록 하는 데 필요합니다.

1000

long

readLockDeleteOrphanLock Files (lock)

시작 시 마커 파일을 사용하여 잠금을 읽을지 여부는 Camel이 올바르게 종료되지 않은 경우(예: JVM 충돌) 파일 시스템에 남아 있을 수 있는 분리된 읽기 잠금 파일을 삭제해야 합니다. 이 옵션을 false로 설정하면 분리된 잠금 파일이 있으면 Camel이 해당 파일을 선택하려고 시도하지 않을 수 있습니다. 다른 노드에서 동일한 공유 디렉터리에서 파일을 읽고 있기 때문일 수도 있습니다.

true

boolean

readLockIdementRelease Async (lock)

지연된 릴리스 작업이 동기 또는 비동기여야 하는지 여부입니다. 자세한 내용은 readLockIdempotentReleaseDelay 옵션을 참조하십시오.

false

boolean

readLockIdempotentRelease AsyncPoolSize (lock)

비동기 릴리스 작업을 사용하는 경우 예약된 스레드 풀의 스레드 수입니다. 기본값 1개의 코어 스레드를 사용하는 것이 거의 모든 사용 사례에서 충분해야 하며 멱등 리포지토리를 업데이트하는 경우 이 값을 더 높은 값으로 설정하거나 처리할 파일이 많이 있을 때 이 값을 더 높은 값으로 설정합니다. readLockIdempotentReleaseExecutorService 옵션을 구성하여 공유 스레드 풀을 사용하는 경우 이 옵션을 사용하지 않습니다. 자세한 내용은 readLockIdempotentReleaseDelay 옵션을 참조하십시오.

 

int

readLockIdementRelease Delay (lock)

밀리코어의 릴리스 작업을 지연할지 여부입니다. 이 값을 사용하면 파일이 읽기 잠금으로 간주될 때 창을 확장하도록 릴리스 작업을 지연하여, 공유 멱등 리포지토리가 있는 활성/활성 클러스터 시나리오에서 경쟁 조건으로 인해 다른 노드에서 동일한 파일을 잠재적으로 검사하고 가져올 수 없도록 할 수 있습니다. 릴리스 작업의 시간 범위를 확장하면 이러한 상황을 방지할 수 있습니다. 참고 지연은 readLockRemoveOnCommit를 true로 구성한 경우에만 필요합니다.

 

int

readLockIdementRelease ExecutorService (lock)

비동기 릴리스 작업에 대해 사용자 지정 및 공유 스레드 풀을 사용하려면To use a custom and shared thread pool for asynchronous release tasks 자세한 내용은 readLockIdempotentReleaseDelay 옵션을 참조하십시오.

 

ScheduledExecutor Service

readLockLoggingLevel (lock)

읽기 잠금을 가져올 수 없을 때 사용되는 로깅 수준입니다. 기본적으로 WARN이 기록됩니다. 예를 들어 로깅이 없도록 이 수준을 OFF로 변경할 수 있습니다. 이 옵션은 readLock 유형만 적용할 수 있습니다: changed, fileLock, 멱등, 멱등-rename, rename.

DEBUG

LoggingLevel

readLockMarkerFile (lock)

변경된, 이름 변경 또는 독점적 읽기 잠금 유형과 함께 마커 파일을 사용할지 여부입니다. 기본적으로 마커 파일은 물론 다른 프로세스에서 동일한 파일을 선택하는 것을 보호하는 데 사용됩니다. 이 옵션을 false로 설정하여 이 동작을 비활성화할 수 있습니다. 예를 들어 Camel 애플리케이션에서 파일 시스템에 마커 파일을 작성하지 않으려면 다음을 수행합니다.

true

boolean

readLockMinAge (lock)

이 옵션은 readLock=changed에만 적용됩니다. 읽기 잠금을 획득하기 전에 파일이 있어야 하는 최소 기간을 지정할 수 있습니다. 예를 들어 파일을 지난 5분 동안 사용하도록 readLockMinAge=300s를 사용하십시오. 이렇게 하면 변경된 읽기 잠금을 빠르게 수행할 수 있습니다. 이는 적어도 해당 기간인 파일을 획득하려고 시도하기 때문입니다.

0

long

readLockMinLength (lock)

이 옵션은 readLock=changed에만 적용됩니다. 최소 파일 길이를 구성할 수 있습니다. 기본적으로 Camel은 파일에 데이터를 포함할 것으로 예상하므로 기본값은 1입니다. 길이가 0인 파일을 사용할 수 있도록 이 옵션을 0으로 설정할 수 있습니다.

1

long

readLockRemoveOnCommit (lock)

이 옵션은 readLock=idempotent에만 적용됩니다. 파일을 처리할 때 멱등 리포지토리에서 파일 이름 항목을 제거할지 여부를 지정하고 커밋이 수행됩니다. 기본적으로 파일은 제거되지 않으므로 경쟁 조건이 발생하지 않도록 다른 활성 노드가 파일을 잡으려 할 수 있습니다. 대신 멱등 리포지토리는 X분 후에 파일 이름 항목을 제거하도록 구성할 수 있는 제거 전략을 지원할 수 있습니다. 이로 인해 경합 상태가 발생하지 않습니다. 자세한 내용은 readLockIdempotentReleaseDelay 옵션을 참조하십시오.

false

boolean

readLockRemoveOnRollback (lock)

이 옵션은 readLock=idempotent에만 적용됩니다. 파일을 처리할 때 멱등 리포지토리에서 파일 이름 항목을 제거할지 여부를 지정하고 롤백이 수행됩니다. 이 옵션이 false이면 파일 이름 항목이 확인됩니다(파일에서 커밋한 것처럼).

true

boolean

readLockTimeout (lock)

read-lock에서 지원하는 경우 read-lock의 선택적 타임아웃은 read-lock에 대해 밀리코어입니다. 읽기 잠금을 부여할 수 없고 시간이 트리거되면 Camel이 파일을 건너뜁니다. 다음 poll Camel에서 파일을 다시 시도하고 이번에는 읽기 잠금을 부여할 수 있습니다. 0 값을 사용하거나 영원히 표시하려면 더 낮은 값을 사용합니다. 현재 fileLock, 변경된 및 이름 바꾸기는 시간 초과를 지원합니다. 참고: FTP의 경우 기본 readLockTimeout 값은 10000 대신 20000입니다. readLockTimeout 값은 readLockCheckInterval보다 커야하지만 엄지 손가락 규칙에는 readLockCheckInterval보다 2배 이상 높은 시간 초과가 있습니다. 이 작업은 읽기 잠금 프로세스가 시간 초과에 도달하기 전에 잠금을 잡으려는 대기 시간이 허용되도록 하는 데 필요합니다.

10000

long

backoffErrorThreshold (scheduler)

백오프Multipler를 시작하기 전에 발생해야 하는 후속 오류 폴링(일부 오류 발생) 수입니다.

 

int

backoffIdleThreshold (scheduler)

백오프Multipler를 시작하기 전에 발생해야 하는 후속 유휴 폴링 수입니다.

 

int

backoffMultiplier (scheduler)

예약된 폴링 소비자 백오프가 연속된 여러 개의 유휴/errors가 있는 경우 해당 행에 사용할 수 있습니다. multiplier는 다음 실제 시도가 다시 발생하기 전에 건너뛸 폴링 수입니다. 이 옵션을 사용하는 경우 backoffIdleThreshold 및/또는 backoffErrorThreshold도 구성해야 합니다.

 

int

지연 (scheduler)

다음 폴링보다 밀리초입니다. 60초(60초), 5m30초(5분 및 30초) 및 1h(1시간)와 같은 단위를 사용하여 시간 값을 지정할 수도 있습니다.

500

long

greedy (scheduler)

greedy가 활성화된 경우 ScheduledPollConsumer는 이전 실행이 1개 이상의 메시지를 폴링하면 즉시 다시 실행됩니다.

false

boolean

initialDelay (scheduler)

첫 번째 폴링이 시작되기 전까지의 밀리초입니다. 60초(60초), 5m30초(5분 및 30초) 및 1h(1시간)와 같은 단위를 사용하여 시간 값을 지정할 수도 있습니다.

1000

long

runLoggingLevel (scheduler)

소비자는 폴링할 때 시작/완료 로그 행을 기록합니다. 이 옵션을 사용하면 로깅 수준을 구성할 수 있습니다.

TRACE

LoggingLevel

scheduledExecutorService (scheduler)

소비자에 사용할 사용자 지정/공유 스레드 풀을 구성할 수 있습니다. 기본적으로 각 소비자는 자체 스레드 스레드 풀이 있습니다.

 

ScheduledExecutor Service

스케줄러 (scheduler)

camel-spring 또는 camel-quartz2 구성 요소에서 cron 스케줄러를 사용하려면

none

ScheduledPollConsumer Scheduler

스케줄러 속성 (scheduler)

사용자 지정 스케줄러 또는 Quartz2, Spring 기반 스케줄러를 사용할 때 추가 속성을 구성하려면 다음을 수행합니다.

 

map

StartScheduler (scheduler)

스케줄러가 자동으로 시작되어야 하는지 여부입니다.

true

boolean

timeUnit (scheduler)

initialDelay 및 지연 옵션의 시간 단위입니다.

밀리초

TimeUnit

UseFixedDelay (scheduler)

고정 지연 또는 고정 속도가 사용되는 경우 제어합니다. 자세한 내용은 JDK의 ScheduledExecutorService를 참조하십시오.

true

boolean

shuffle (sort)

파일 목록을 축소하려면 ( 임의의 순서로 정렬됨)

false

boolean

sortby (sort)

파일 언어를 사용하여 기본 제공 정렬입니다. 파일 이름별 정렬을 수정하고 수정된 날짜에 따라 정렬을 두 번째 그룹 정렬으로 수행할 수 있도록 중첩 정렬을 지원합니다.Supports nested sorts, so you can have a sort by file name and as a twond group sort by modified date.

 

문자열

Sorter (sort)

java.util.Comparator 클래스로 플러그형 정렬기.

 

비교

계정 (보안)

로그인에 사용할 계정

 

문자열

SecureDataChannel 기본값 비활성화 (보안)

보안 데이터 채널을 사용할 때 기본 옵션을 비활성화하려면 이 옵션을 사용합니다. 이를 통해 execPbsz 및 execProt 설정을 완전히 제어할 수 있습니다. 기본값은 false입니다.

false

boolean

execPbsz (security)

보안 데이터 채널을 사용하는 경우 exec 보호 버퍼 크기를 설정할 수 있습니다.

 

long

execProt (보안)

exec 보호 수준 PROT 명령. C - Clear S - Safe(SSL 프로토콜만 해당) E - Confidential(SSL 프로토콜 전용) P - 비공개

 

문자열

ftpClientKeyStore Parameters (security)

키 저장소 매개변수 설정

 

map

ftpClientTrustStore Parameters (security)

신뢰 저장소 매개변수 설정

 

map

isImplicit (security)

보안 모드(Implicit/Explicit). true - Implicit Mode / False - 탐색 모드

false

boolean

암호 (보안)

로그인에 사용할 암호

 

문자열

securityProtocol (security)

기본 보안 프로토콜을 설정합니다.

TLS

문자열

sslContextParameters (security)

FtpsEndpoint#ftpClientKeyStoreParameters, ftpClientTrustStoreParameters 및 FtpsConfiguration#getSecurityProtocol()의 설정을 재정의하는 JSSE 구성을 가져옵니다.

 

SSLContextParameters

사용자 이름 (보안)

로그인에 사용할 사용자 이름

 

문자열

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.