oozie, передайте время планировщика координатора действию java

Мне нужно передать время планировщика действию oozie java.

Например, я установил время планировщика на 1 минуту. Текущее время 15:45, но возникает любая задержка или ошибка, поэтому текущее время выполнения действия Java составляет 15:40 (задержка 5 минут), и мне нужно зарегистрировать время выполнения в моем действии Java, поэтому мне нужно передать значение 15.40 в мой java-код (jar) в качестве аргумента.

Как я могу этого добиться?

Спасибо


person baris    schedule 06.12.2017    source источник
comment
Найдите примеры того, как отформатировать coord:nominalTime() и передать его от координатора в рабочий процесс в действие. Только с точностью до минуты.   -  person Samson Scharfrichter    schedule 08.12.2017


Ответы (1)


Вы можете использовать функцию oozie, встроенную в EL функцию "String timestamp()", чтобы получить отметку времени и передать код Java в качестве аргумента. например

 <action name='actionJava'>
        <java>
            <job-tracker>${jobTracker}</job-tracker>
            <name-node>${nameNode}</name-node>
            <name>JavaAction</name> 
            <main-class>com.oozie.JTestMain</main-class> 
            <arg>${timestamp()}</arg>
        </java>
       <ok to="end" />
       <error to="killJob" />
 </action>
person Amit Kumar    schedule 08.12.2017