Support Questions
Find answers, ask questions, and share your expertise
Announcements
Alert: Welcome to the Unified Cloudera Community. Former HCC members be sure to read and learn how to activate your account here.

Oozie SLA nominal_time issue

Oozie SLA nominal_time issue

Contributor

Hi,

 

 

We are facing an issue with SLA events monitoring to set the nominal time for workflow.

Our workflow kicks when a particular notification file comes in which indicates data is available. The issue is how to set the nominal time of workflow to current time when the job starts not the coordinator if it gets the notification file.

 

Please help its urgent !!!!

 

Thanks

 

3 REPLIES 3
Highlighted

Re: Oozie SLA nominal_time issue

Explorer

To narrow down the problem, I recreate the issue as below.

 

I enabled SLA with the instructions provided [1]. Restarted my Oozie  service.

 

I extend the simple workflow [2] with sla enhancement [3]:

 

<end name="end"/>
<sla:info>
<sla:nominal-time>${nominal_time}</sla:nominal-time>
<sla:should-start>${10 * MINUTES}</sla:should-start>
<sla:should-end>${30 * MINUTES}</sla:should-end>
<sla:max-duration>${30 * MINUTES}</sla:max-duration>
<sla:alert-events>start_miss,end_miss,duration_miss</sla:alert-events>
<sla:alert-contact>example@example.com</sla:alert-contact>
</sla:info>
</workflow-app>

 

and submit the workflow using command line.

 

-bash-4.1$ oozie job -oozie http://<server name>:11000/oozie -config examples/apps/map-reduce/job.properties -run
Error: E0803 : E0803: IO error, E1004: Expression language evaluation error, Validation error :variable [nominal_time] cannot be resolved

 

Oozie server build version: 4.1.0-cdh5.5.2

Hue™ 3.9.0

 

Any input would be appreciated!

 

[1] http://gethue.com/hadoop-tutorial-monitor-and-get-alerts-for-your-workflows-with-the-oozie-slas/

[2] https://oozie.apache.org/docs/3.1.3-incubating/DG_Examples.html

[3] https://oozie.apache.org/docs/4.0.0/DG_SLAMonitoring.html

Re: Oozie SLA nominal_time issue

Contributor

Hi,

 

You need to use ${coord:nominalTime()} in place of ${nominal_time}

Re: Oozie SLA nominal_time issue

New Contributor

check nominal_time is present in your job.properties or not.

You can set nominal_time in OozieClient.createConfiguration also in java program if your java program as client. Here you are using command line as client.

 

Ooize needs nominal_time to run the SLA-sensitive workflow