如何将配置传递给oozie电子邮件操作

ttcibm8c  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(310)

我有一个简单的oozie工作流,它执行pig操作并在失败时发送电子邮件。
电子邮件操作节点:

<action name="send_email_on_error">
        <email xmlns="uri:oozie:email-action:0.1">
            <job-xml>oozie-site.xml</job-xml>
            <to>ilona@aniways.com</to>
            <subject>Oozie Error</subject>
            <body>error message[${wf:errorMessage(wf:lastErrorNode())}]</body>
        </email>
        <ok to="fail"/>
        <error to="fail"/>
    </action>

我创建了一个oozie-site.xml文件,并向其中添加了以下属性:

<property>
        <name>oozie.email.smtp.host</name>
        <value>smtp.gmail.com</value>
    </property>
    <property>
        <name>oozie.email.smtp.port</name>
        <value>587</value>
    </property>
    <property>
        <name>oozie.email.from.address</name>
        <value>ilona@aniways.com</value>
    </property>

尝试部署作业时出现错误:

E0701: XML schema error, cvc-complex-type.2.4.a: Invalid content was found starting with element 'job-xml'. One of '{"uri:oozie:email-action:0.1":to}' is expected.

如何将这个必要的配置传递给oozie?

rbl8hiat

rbl8hiat1#

作业xml is属性错误。把它取下来,它就可以正常工作了。应自动读取配置。

nhaq1z21

nhaq1z212#

默认情况下加载oozie-site.xml,因此需要显式地包含它。从操作中删除以下行: <job-xml>oozie-site.xml</job-xml> 现在应该可以了。

相关问题