更新时间:2024-07-11 GMT+08:00

Python

使用Python节点前,需确认对应主机连接的主机配有用于执行Python脚本的环境。

功能

通过Python节点执行Python语句。

Python节点的具体使用教程,请参见开发一个Python脚本

Python节点支持脚本参数和作业参数。

参数

用户可以参考表1表2配置Python节点的参数。

表1 属性参数

参数

是否必选

说明

Python语句或脚本

可以选择Python语句或Python脚本。

  • Python语句

    单击“Python语句”参数下的文本框,在“Python语句”页面输入需要执行的Python语句,选择Python脚本。

  • Python脚本

    “Python脚本”参数后选择需要执行的Python脚本,系统自动默认显示Python版本,例如Python3。如果脚本未创建,请参考新建脚本开发Python脚本先创建和开发脚本。

    说明:
    • 若选择Python语句方式,数据开发模块将无法解析您输入Python语句中携带的参数。
    • 若选择Python脚本方式,系统自动默认显示的Python版本为创建Python脚本时所选择的Python版本。
    • 对于原有的作业,默认使用Python2。
    • Python节点运行的输出结果不能大于30M,大于30M会报错。

主机连接

选择执行Python语句的主机。需确认该主机配有用于执行Python脚本的环境。

须知:
  • Shell或Python脚本可以在该ECS主机上运行的最大并发数由ECS主机的/etc/ssh/sshd_config文件中MaxSessions的配置值确定。请根据Shell或Python脚本的调度频率合理配置MaxSessions的值。
  • 连接主机的用户需要具有主机/tmp目录下文件的创建与执行权限。
  • Shell和Python脚本都是发往ECS主机的/tmp目录下去运行的,需要确保/tmp目录磁盘不被占满。

参数

填写执行Python语句时,向语句传递的参数,参数之间使用空格分隔,例如:a b c。此处的“参数”需要在Python语句中引用,否则配置无效。

交互式输入

填写交互式参数,即执行Python语句的过程中,需要用户输入的交互式信息(例如密码)。交互式参数之间以空格分隔,Python语句根据交互情况按顺序读取参数值。

节点名称

节点名称,只能包含英文字母、数字、中文字符、中划线、下划线、/、<>和点号,且长度小于等于128个字符。

默认情况下,节点名称会与选择的脚本名称保持同步。若不需要节点名称和脚本名称同步,请参考禁用作业节点名称同步变化禁用该功能。

表2 高级参数

参数

是否必选

说明

节点状态轮询时间(秒)

设置轮询时间(1~60秒),每隔x秒查询一次节点是否执行完成。

节点执行的最长时间

设置节点执行的超时时间,如果节点配置了重试,在超时时间内未执行完成,该节点将会再次重试。

失败重试

节点执行失败后,是否重新执行节点

  • 是:重新执行节点,请配置以下参数。
    • 超时重试
    • 最大重试次数
    • 重试间隔时间(秒)
  • 否:默认值,不重新执行节点
    说明:

    如果作业节点配置了重试,并且配置了超时时间,该节点执行超时后,系统支持再重试。

    当节点运行超时导致的失败不会重试时,您可前往“默认项设置”修改此策略。

    当“失败重试”配置为“是”才显示“超时重试”。

当前节点失败后,后续节点处理策略

节点执行失败后的操作:

  • 终止后续节点执行计划:停止后续节点的运行,当前作业实例状态显示为“失败”。
  • 终止当前作业执行计划:停止当前作业运行,当前作业实例状态显示为“失败”。
  • 继续执行下一节点:忽略当前节点失败,当前作业实例状态显示为“忽略失败”。
  • 挂起当前作业执行计划:当前作业实例的状态为运行异常,该节点的后续节点以及依赖于当前作业的后续作业实例都会处于等待运行状态。

是否空跑

如果勾选了空跑,该节点不会实际执行,将直接返回成功。

任务组

选择任务组。任务组配置好后,可以更细粒度的进行当前任务组中的作业节点的并发数控制,比如作业中包含多个节点、补数据、重跑等场景。