本文整理汇总了Python中mrjob.emr.EMRJobRunner._pick_error方法的典型用法代码示例。如果您正苦于以下问题:Python EMRJobRunner._pick_error方法的具体用法?Python EMRJobRunner._pick_error怎么用?Python EMRJobRunner._pick_error使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mrjob.emr.EMRJobRunner
的用法示例。
在下文中一共展示了EMRJobRunner._pick_error方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: from mrjob.emr import EMRJobRunner [as 别名]
# 或者: from mrjob.emr.EMRJobRunner import _pick_error [as 别名]
def main(cl_args=None):
arg_parser = _make_arg_parser()
options = arg_parser.parse_args(cl_args)
MRJob.set_up_logging(quiet=options.quiet, verbose=options.verbose)
runner_kwargs = {k: v for k, v in options.__dict__.items()
if k not in ('quiet', 'verbose', 'step_id')}
runner = EMRJobRunner(**runner_kwargs)
emr_client = runner.make_emr_client()
# pick step
step = _get_step(emr_client, options.cluster_id, options.step_id)
if not step:
raise SystemExit(1)
if step['Status']['State'] != 'FAILED':
log.warning('step %s has state %s, not FAILED' %
(step['Id'], step['Status']['State']))
# interpret logs
log.info('Diagnosing step %s (%s)' % (step['Id'], step['Name']))
log_interpretation = dict(step_id=step['Id'])
step_type = _infer_step_type(step)
error = runner._pick_error(log_interpretation, step_type)
# print error
if error:
log.error('Probable cause of failure:\n\n%s\n\n' %
_format_error(error))
else:
log.warning('No error detected')