脚本开发 / DataFlux Func Sidecar
使用 Sidecar 连接器操作对象允许用户调用 Sidecar 执行 Shell 命令。
DFF.CONN(...) 参数如下:
| 参数 | 类型 | 必须 / 默认值 | 说明 |
|---|---|---|---|
connector_id |
str | 必须 | 连接器 ID |
有关 Sidecar 的完整使用文档,请参考「Sidecar 手册」
.shell(...)
执行调用 Sidecar 执行 Shell 命令,参数如下:
| 参数 | 类型 | 必须 / 默认值 | 说明 |
|---|---|---|---|
cmd |
str | 必须 | 需要执行的 Shell 命令 如: "ls -l" |
wait |
bool | True |
是否等待执行完成 设置为 False 时,本函数会立刻返回,并且不会返回终端输出 |
workdir |
str | None |
Shell 命令执行的工作目录 如: "/home/dev" |
envs |
dict | None |
环境变量,键和值都为字符串 如: {"MY_NAME": "Tom"} |
callback_url |
str | None |
回调地址,命令执行后,将 stdout 和 stderr 使用 POST 方式发送至指定 URL一般和 wait=False 参数一起使用,实现异步回调 |
timeout |
int | 3 |
请求超时时间 注意:本参数并不是 Shell 命令的超时时间,而是 Func 请求 Sidecar 的超时时间 即 Func 请求 Sidecar 可能会超时,但所执行的 Shell 命令并不会因此停止 |
执行后回调
调用 SidecarHelper.shell(...) 并指定 callback_url 参数后,Sidecar 会在执行完 Shell 命令后将标准输出 stdout 和标准错误 stderr 以 POST 方式发送至此地址。
具体结构如下:
| Text Only | |
|---|---|
1 2 3 4 5 6 7 8 9 | |
此结构与 DataFlux Func 的「函数 API」 标准 POST 方式 匹配,可直接使用「函数 API」接收执行后的回调