文档说明

influxctl write

influxctl write 命令将 行协议 写入 InfluxDB 集群。

以下方式之一提供行协议

  • 命令行上的字符串
  • 包含行协议的文件的路径
  • 单个短横线(-)从 stdin 读取行协议

注意要点

  • 此命令在每个执行中仅支持一个写入请求,但支持多行行协议,并将根据 --batch-size 批量数据。
  • 此命令不是为了成为一个功能丰富的完整写入工具。它用于调试、分类和初步探索。

InfluxDB 连接配置

您的InfluxDB集群主机和端口号配置在您的influxctl 连接配置文件中。默认使用TLS和端口443。您可以在连接配置文件中设置默认数据库和令牌,用于querywrite命令,或使用命令行中的--database--token标志传递它们。命令行标志将覆盖连接配置文件中的设置。

用法

influxctl write [flags] <LINE_PROTOCOL>

参数

参数描述
LINE_PROTOCOL写入行协议(命令行字符串、文件路径或-从stdin读取)

标志

标志描述
--batch-size每批写入的指标数(默认为10000
--database要写入的数据库
--precision数据时间戳的精度(ns (默认)usmss
--timeout客户端超时时间(秒,默认为10
--token具有目标数据库写入权限的数据库令牌
-h--help输出命令帮助

另请参阅 influxctl 全局标志

示例

以下示例中,请将以下内容替换为

  • DATABASE_TOKEN:具有对目标数据库写入访问权限的数据库令牌
  • DATABASE_NAME:要写入的数据库的名称

将行协议写入InfluxDB v3

influxctl write \
  --token 
DATABASE_TOKEN
\
--database
DATABASE_NAME
\
"home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000000000000 home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000000000000 home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600000000000 home,room=Kitchen temp=23.0,hum=36.2,co=0i 1641027600000000000 "
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 \ "home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000 home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000 home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600 home,room=Kitchen temp=23.0,hum=36.2,co=0i 1641027600 "
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 \ "home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000 home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000 home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600 home,room=Kitchen temp=23.0,hum=36.2,co=0i 1641027600 "
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 \ "home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000 home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000 home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600 home,room=Kitchen temp=23.0,hum=36.2,co=0i 1641027600 "
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 连接配置文件中定义的databasetoken

influxctl write "home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000000000000
home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000000000000
home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600000000000
home,room=Kitchen temp=23.0,hum=36.2,co=0i 1641027600000000000
"

查看命令更新


这个页面有帮助吗?

感谢您的反馈!


Flux的未来

Flux将进入维护模式。您可以在不更改代码的情况下继续按当前方式使用它。

阅读更多

InfluxDB v3增强功能和InfluxDB Clustered现在已正式推出

新功能,包括更快的查询性能和管理工具,推进了InfluxDB v3产品线。InfluxDB Clustered现在已正式推出。

InfluxDB v3性能和功能

InfluxDB v3产品线在查询性能方面进行了重大改进,并提供了新的管理工具。这些改进包括用于监控InfluxDB集群健康状况的操作仪表板,InfluxDB云专享版中的单点登录(SSO)支持,以及用于令牌和数据库的新管理API。

了解v3的新增功能


InfluxDB集群版已正式发布

InfluxDB集群版现已正式发布,让您能够在自己的自管理堆栈中获得InfluxDB v3的强大功能。

与我们讨论InfluxDB集群版