如何找到运行我的工作的hadoopjar命令?

falq053o  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(332)

我在用 CDH5.4 . 我正在运行一个hadoop作业,它在命令行中看起来是正常的(当使用 hadoop jar ). 但是如果我从 yarn 它只需要一个Map器,没有还原器,就可以安静地完成。我真的怀疑两个“runs”运行的是同一个命令。不过,我想确定这一点。所以我看了一下日志:
(注意它是一个 scalding 自定义运行程序的作业-从命令行运行时一切正常)。 /container_1432733015407_0953_01_000001/container_1432733015407_0953_01_000001/user/stdout/?start=0 我看到了这样的景象:

Main class        : org.apache.oozie.action.hadoop.JavaMain

Maximum output    : 2048

Arguments         :
                    -D
                    oneparam=value
                    -D
                    secondparam=value

所以我把这些变成了命令行。
用类似 hadoop jar MyScaldingRunner -D oneparam=value -D secondparam=value 它运行得很好,产生了结果。
有没有办法让我看到同样的事实 hadoop jar hadoop通过执行时运行的命令行 oozie + yarn 运行它?因为从那边它就安静地结束了!

efzxgjgh

efzxgjgh1#

我无法直接回答您的问题,但jdiagnostics可以帮助您重新创建所需的参数,如类路径或环境变量。下面是一个在运行程序之前可以放在程序开头的示例:

LOG.info(new DefaultQuery().call())

相关问题