기술_Nifi

매개 변수 및 표현 언어

구일칠구 2022. 8. 8. 03:55

표현식 언어를 사용하는 매개 변수를 추가 할 때 표현식 언어가 평가되는 컨텍스트를 이해하는 것이 중요합니다. 표현식은 항상 매개 변수를 참조하는 프로세스 또는 컨트롤러 서비스의 컨텍스트에서 평가됩니다. 예를 들어 이름 Time이 있는 Parameter가 값으로 추가 되는 시나리오를 가정 해보십시오 ${now()}. Expression Language는 평가 될 때 시스템 시간을 결정하기위한 호출을 발생시킵니다. 매개 변수로 추가되면 매개 변수가 추가 될 때 시스템 시간이 평가되지 않고 프로세서 또는 컨트롤러 서비스가 표현식을 평가할 때 평가됩니다. 즉, 프로세서에 값이 설정된 속성이있는 #{Time}경우 해당 속성의 값이 다음과 같이 설정된 것과 똑같은 방식으로 작동합니다.${now()}. 속성이 참조 될 때마다 다른 타임 스탬프가 생성됩니다.

또한 일부 속성은 식 언어를 허용하지 않는 반면 다른 속성은 식 언어를 허용하지만 FlowFile 특성에 대해 식을 평가하지 않습니다. 작동 방식을 이해하는 데 도움이되도록 File값이 인 매개 변수를 고려하십시오 ${filename}. 그런 다음 각각 다른 식 언어 범위와 파일 이름이 test.txt. 각 속성이로 설정되어 있으면 #{File}다음 표에 결과 값이 나와 있습니다.

구성된 속성 값표현 언어 범위효과적인 재산 가치메모

#{파일} FlowFile 속성 test.txt 파일 이름은 filename속성 을보고 확인됩니다 .
#{파일} 가변 레지스트리 만 빈 문자열 FlowFile 속성은 범위에 없으며 "filename"이라는 변수 레지스트리에 변수가 없다고 가정합니다.
#{파일} 없음 $ {파일 이름} 리터럴 텍스트 "$ {filename}"은 평가되지 않습니다.
프로세스 그룹에 매개 변수 컨텍스트 할당
구성 요소가 매개 변수를 참조하려면 먼저 해당 프로세스 그룹에 매개 변수 컨텍스트를 할당해야합니다. 할당되면 해당 프로세스 그룹 내의 프로세서 및 컨트롤러 서비스는 해당 매개 변수 컨텍스트 내의 매개 변수 만 참조 할 수 있습니다.
프로세스 그룹에는 하나의 매개 변수 컨텍스트 만 할당 할 수있는 반면, 주어진 매개 변수 컨텍스트는 여러 프로세스 그룹에 할당 할 수 있습니다.
사용자는 프로세스 그룹의 매개 변수 컨텍스트를 사용자에게보기 정책이있는 매개 변수 컨텍스트 중 하나로 만 설정할 수 있습니다. 또한 매개 변수 컨텍스트를 설정하려면 사용자에게 프로세스 그룹에 대한 수정 정책이 있어야합니다. 자세한 내용은 매개 변수 액세스 를 참조하십시오.
매개 변수 컨텍스트를 프로세스 그룹에 지정하려면 작동 팔레트 또는 프로세스 그룹 컨텍스트 메뉴에서 구성을 클릭하십시오.
흐름 구성 창에서 "일반"탭을 선택합니다. 프로세스 그룹 매개 변수 컨텍스트 드롭 다운 메뉴에서 기존 매개 변수 컨텍스트를 선택하거나 새로 만듭니다.
구성 변경 사항을 저장하려면 "적용"을 선택하십시오. 이제 프로세스 그룹 상황에 맞는 메뉴에 할당 된 매개 변수 상황에 대한 매개 변수 상황 업데이트 창에 빠르게 액세스 할 수있는 "매개 변수"옵션이 포함됩니다.
프로세스 그룹에 대한 매개 변수 컨텍스트가 변경되면 해당 프로세스 그룹의 매개 변수를 참조하는 모든 구성 요소는 해당 구성 요소가 이전에 실행 중이고 여전히 유효한 것으로 가정하여 중지, 유효성 검사 및 다시 시작됩니다.
매개 변수 컨텍스트가 프로세스 그룹에서 설정되지 않은 경우 상위 프로세스 그룹에서 매개 변수 컨텍스트를 상속 하지 않습니다 . 대신 매개 변수를 참조 할 수 없습니다. 이미 매개 변수를 참조하는 구성 요소는 유효하지 않게됩니다.

'기술_Nifi' 카테고리의 다른 글

매개 변수 참조 구문  (0) 2022.08.08
매개 변수 컨텍스트  (0) 2022.08.08
배치 지향 프로세스 그룹 연결  (0) 2022.08.07
FlowFile 동시성  (0) 2022.08.07
댓글 탭  (0) 2022.08.07