influxctl write
influxctl write
命令将 行协议 写入 InfluxDB 集群。
以下方式之一提供行协议
- 命令行上的字符串
- 包含行协议的文件的路径
- 单个短横线(
-
)从 stdin 读取行协议
注意要点
- 此命令在每个执行中仅支持一个写入请求,但支持多行行协议,并将根据
--batch-size
批量数据。 - 此命令不是为了成为一个功能丰富的完整写入工具。它用于调试、分类和初步探索。
InfluxDB 连接配置
您的InfluxDB集群主机和端口号配置在您的influxctl
连接配置文件中。默认使用TLS和端口443。您可以在连接配置文件中设置默认数据库和令牌,用于query
和write
命令,或使用命令行中的--database
和--token
标志传递它们。命令行标志将覆盖连接配置文件中的设置。
用法
influxctl write [flags] <LINE_PROTOCOL>
参数
参数 | 描述 |
---|---|
LINE_PROTOCOL | 写入行协议(命令行字符串、文件路径或- 从stdin读取) |
标志
标志 | 描述 | |
---|---|---|
--batch-size | 每批写入的指标数(默认为10000 ) | |
--database | 要写入的数据库 | |
--precision | 数据时间戳的精度(ns (默认)、us 、ms 或s ) | |
--timeout | 客户端超时时间(秒,默认为10 ) | |
--token | 具有目标数据库写入权限的数据库令牌 | |
-h | --help | 输出命令帮助 |
另请参阅 influxctl
全局标志。
示例
- 将行协议写入InfluxDB v3
- 使用非默认时间戳精度将行协议写入InfluxDB v3
- 使用自定义批大小将行协议写入InfluxDB v3
- 使用自定义客户端超时将行协议写入InfluxDB v3
- 使用连接配置文件中的凭据将行协议写入InfluxDB v3
以下示例中,请将以下内容替换为
DATABASE_TOKEN
:具有对目标数据库写入访问权限的数据库令牌DATABASE_NAME
:要写入的数据库的名称
将行协议写入InfluxDB v3
influxctl write \
--token DATABASE_TOKEN \
--database DATABASE_NAME \
/path/to/metrics.lp
cat ./metrics.lp | influxctl write \
--token DATABASE_TOKEN \
--database DATABASE_NAME \
-
使用非默认时间戳精度将行协议写入InfluxDB v3
influxctl write \
--token DATABASE_TOKEN \
--database DATABASE_NAME \
--precision s \
/path/to/metrics.lp
cat ./metrics.lp | influxctl write \
--token DATABASE_TOKEN \
--database DATABASE_NAME \
--precision s \
-
使用自定义批大小将行协议写入InfluxDB v3
influxctl write \
--token DATABASE_TOKEN \
--database DATABASE_NAME \
--batch-size 5000 \
/path/to/metrics.lp
cat ./metrics.lp | influxctl write \
--token DATABASE_TOKEN \
--database DATABASE_NAME \
--batch-size 5000 \
-
使用自定义客户端超时将行协议写入InfluxDB v3
influxctl write \
--token DATABASE_TOKEN \
--database DATABASE_NAME \
--timeout 20 \
/path/to/metrics.lp
cat ./metrics.lp | influxctl write \
--token DATABASE_TOKEN \
--database DATABASE_NAME \
--timeout 20 \
-
使用连接配置文件中的凭据将行协议写入InfluxDB v3
以下示例使用在default
连接配置文件中定义的database
和token
。
这个页面有帮助吗?
感谢您的反馈!