操作场景
您可通过本文快速了解 Batch 的使用方法及计算能力。
前提条件
查看 Demo
说明:
使用编辑器打开
1_SimpleStart.py
文件# custom (Change to your info)imageId = "img-m4q71qnf"Application = {"DeliveryForm": "LOCAL","Command": " python -c \\"fib=lambda n:1 if n<=2 else fib(n-1)+fib(n-2); print(fib(20))\\" "}StdoutRedirectPath = "your cos path"StderrRedirectPath = "your cos path"
自定义部分除 Application 以外,都已在前置准备中说明, Application 中配置请参考下表:
配置项 | 描述 |
DeliveryForm | 应用程序的交付方式,包括软件打包、容器镜像、CVM 内部直接运行三种,这里 LOCAL 代表的是 CVM 内部直接运行。 |
Command | 任务启动命令,这里执行的是一段 Python 脚本。以1为起点,将斐波拉契数列的前20个数字求和并输出到 StdOutput 里。 |
提交作业
执行以下命令,执行 Python 脚本。
Demo 中已经通过 Python 脚本 + Batch 命令行工具的形式封装了提交作业流程。
python 1_SimpleStart.py
返回结果如下所示,则表示提交成功。
{"RequestId": "393292f4-5583-48ad-a9f5-f673138ea637","JobId": "job-o0xxxxxq7"}
查看状态
执行以下命令,通过 DescribeJob 查看执行状态:
$ tccli batch DescribeJob --version 2017-03-12 --JobId job-xxx
说明:
返回信息如下(部分已省略):
{"EndTime": "2019-10-08T04:06:58Z","JobState": "SUCCEED","TaskInstanceMetrics": {...},"Zone": "ap-guangzhou-2","TaskMetrics": {...},"JobName": "TestJob","Priority": 1,"RequestId": "7a5f4c94-1357-486c-9c48-8286ba01b5b2","TaskSet": [...],"StateReason": null,"JobId": "job-o0xxxxxq7","DependenceSet": [],"CreateTime": "2019-10-08T04:05:54Z"}
返回信息包含下列常见执行状态:
STARTING:启动中
RUNNING:执行中
SUCCEED:执行成功
FAILED:执行失败
查看结果
1. 登录对象存储控制台,单击左侧导航栏中的 存储桶列表。
2. 选择已创建的 Bucket ID >文件列表 > logs 文件,执行结果均保存在 logs 文件中。如下图所示:
成功时请查看标准输出 stdout.job-xxx.xxxx.0.log,内容如下:
6765
失败时请查看标准错误 stderr.job-xxx.xxxx.0.log,可能的内容如下:
/bin/sh: -c: line 0: syntax error near unexpected token `('/bin/sh: -c: line 0: ` python -c \\"fib=lambda n:1 if n<=2 else fib(n-1)+fib(n-2); print(fib(20))\\" '