我遇到了一个问题,想到了一个我没有找到好答案的问题。也就是说,我如何故意使AWS EMR步骤失败? 我有一个Spark Scala脚本,它作为Spark步骤添加了一些命令行参数,并且脚本的输出被写入S3。
但是如果读取和处理命令行参数出错,那么将跳过脚本的逻辑并结束脚本。但是对于EMR来说这是正常的行为,它不知道没有输入if块。
"失败"运行,步骤状态仍然更改为"已完成"如果没有将结果写入S3,它似乎是成功的。
我想完成这一步骤,因为它会在"失败"状态。
我可以通过抛出异常来做到这一点然后我可以在EMR Step错误日志中看到相应的异常消息。但有更好的方法吗?我想亲自处理我的所有例外情况。
此外,我可以使用AWS SDK以某种方式以编程方式找出步骤失败的原因吗?
答案 0 :(得分:1)
从程序中返回非零值