2015-01-18 17 views
0

다음 워크 플로 XML 및 코디네이터 XML이 있습니다. 두 워크 플로는 모두 Hue Oozie Editor를 통해 만들어졌습니다. 나는 코디네이터를 실행 한 Oozie 워크 플로 매개 변수가 코디네이터에서 설정되지 않습니다.

<coordinator-app name="Demo4CoordinatorNew" 
    frequency="${coord:minutes(5)}" 
    start="2015-01-18T18:15Z" end="2015-01-19T10:46Z" timezone="US/Pacific" 
    xmlns="uri:oozie:coordinator:0.2"> 
    <controls> 
    <concurrency>1</concurrency> 
    <execution>FIFO</execution> 
    </controls> 
    <action> 
    <workflow> 
     <app-path>${wf_application_path}</app-path> 
     <configuration> 
     <property> 
      <name>DATE</name> 
      <value>${coord:formatTime(coord:nominalTime(), &#39;yyyy-MM-dd&#39;)}</value> 
     </property> 
     </configuration> 
    </workflow> 
    </action> 
</coordinator-app> 

아래

<workflow-app name="demo8" xmlns="uri:oozie:workflow:0.4"> 
    <start to="cds4"/> 
    <action name="cds4"> 
     <fs> 
       <mkdir path='${nameNode}/my/path/towritefile/${wf:conf(DATE)}'/> 
     </fs> 
     <ok to="end"/> 
     <error to="kill"/> 
    </action> 
    <kill name="kill"> 
     <message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message> 
    </kill> 
    <end name="end"/> 
</workflow-app> 

코디네이터의 conf이다. DATE 매개 변수에 전달 된 값이 비어 있습니다. 문제가 있습니까?

즉, 워크 플로가 트리거 된 시간을 기준으로 HDFS에 폴더를 만들려고합니다.

나는 또한 내가이 작업을 수행 할 때, 그것이 오류를 제공

<mkdir path='${nameNode}/my/path/towritefile/${wf:conf("DATE")}'/> 

을 시도했다.

답변

1

워크 플로에서 을 ${DATE}으로 바꿔서 올바르게 매개 변수화됩니다.

+0

감사합니다 .. 업데이트 된 코드는 다음과 같습니다. 또한 코디네이터 코드는 다음과 같습니다. : $ {coord : formatTime (coord : nominalTime(), "yyyy/MM/dd")} Vaya