跳转至

脚本开发 / 连接器对象 DFF.CONN / 总览

在创建连接器后,可以在代码中调用 DFF.CONN(connector_id, **kwargs) 获取指定连接器的操作对象。

参数 类型 必须 / 默认值 说明
connector_id str 必须 连接器 ID
**kwargs - - 覆盖本次操作对象的部分配置,支持范围取决于连接器类型

传入值为 None 或空白字符串的可选参数会被忽略。未传入可选参数时,操作对象使用连接器中保存的配置或代码默认值。

示例
1
2
3
4
@DFF.API('InfluxDB 操作演示')
def influxdb_demo():
    db = DFF.CONN('demo_influxdb')
    return db.query('SELECT * FROM demo LIMIT 3')

各连接器支持的可选参数如下:

连接器类型 可选参数 说明
观测云、TrueWatch timeout HTTP 请求超时时间,默认 10 秒
DataKit source、timeout、split_size 覆盖 Source、请求超时时间和批量分片大小
DataWay token、timeout、split_size 覆盖 Token、请求超时时间和批量分片大小
DataFlux Func Sidecar timeout HTTP 请求超时时间,默认 10 秒
InfluxDB database 覆盖默认数据库
MySQL database 覆盖默认数据库
Redis database、client_name 覆盖数据库编号和 Redis 客户端名称
Memcached - 无可选参数
ClickHouse database 覆盖默认数据库
Oracle 数据库 database 覆盖服务名
Microsoft SQL Server database 覆盖默认数据库
PostgreSQL database 覆盖默认数据库
MongoDB database 覆盖默认数据库
Elasticsearch timeout HTTP 请求超时时间,默认 10 秒
NSQ timeout HTTP 请求超时时间,默认 10 秒
MQTT Broker、Kafka - 无可选参数
Prometheus timeout HTTP 请求超时时间,默认 10 秒
阿里云日志服务 SLS - 无可选参数
LLM model、timeout 覆盖默认模型;请求超时时间默认为 60 秒

只有上表列出的参数会影响对应操作对象,其他额外参数虽然可被调用入口接收,但连接器实现不会使用。

覆盖数据库

数据库类连接器配置了默认数据库时,查询会在默认数据库中进行。如本次操作需要使用其他数据库,可以在获取连接器操作对象时传入 database:

Python
1
db = DFF.CONN('demo_influxdb', database='my_database')

支持 database 参数的连接器以参数表为准。对于不支持该参数的连接器,如需操作其他数据库,应创建不同的连接器。

覆盖 DataWay Token

DataWay 可以在获取操作对象时覆盖连接器中保存的 Token:

Python
1
dataway = DFF.CONN('df_dataway', token='xxxxx')

不同类型连接器返回的操作对象具有不同方法,具体接口见对应连接器文档。