influxctl write
The influxctl write
command writes line protocol
to InfluxDB Clustered.
Provide line protocol in one of the following ways:
- a string on the command line
- a path to a file that contains line protocol
- a single dash (
-
) to read line protocol from stdin
Important to note
- This command supports only one write request per execution, but does support
multiple lines of line protocol and will batch data based on the
--batch-size
. - This command is not meant to be a full, feature-rich write tool. It’s meant for debug, triage, and initial exploration.
InfluxDB connection configuration
Your InfluxDB cluster host and port are
configured in your in your influxctl
connection profile.
Default uses TLS and port 443.
You can set a default database and token to use for the query
and write
commands in your connection profile or pass them with the
command using the --database
and --token
flags.
Command line flags override settings in the connection profile.
Usage
influxctl write [flags] <LINE_PROTOCOL>
Arguments
Argument | Description |
---|---|
LINE_PROTOCOL | Line protocol to write (command line string, path to file, or - to read from stdin) |
Flags
Flag | Description | |
---|---|---|
--batch-size | Number of metrics to write per batch (default is 10000 ) | |
--database | Database to write to | |
--precision | Precision of data timestamps (ns (default), us , ms , or s ) | |
--timeout | Client timeout in seconds (default is 10 ) | |
--token | Database token with write permissions on the target database | |
-h | --help | Output command help |
Examples
- Write line protocol to InfluxDB v3
- Write line protocol to InfluxDB v3 with non-default timestamp precision
- Write line protocol to InfluxDB v3 with a custom batch size
- Write line protocol to InfluxDB v3 with a custom client timeout
- Write line protocol to InfluxDB v3 using credentials from the connection profile
In the examples below, replace the following:
DATABASE_TOKEN
: Database token with write access to the target databaseDATABASE_NAME
: Name of the database to write to
Write line protocol to 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 \
-
Write line protocol to InfluxDB v3 with non-default timestamp precision
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 \
-
Write line protocol to InfluxDB v3 with a custom batch size
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 \
-
Write line protocol to InfluxDB v3 with a custom client timeout
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 \
-
Write line protocol to InfluxDB v3 using credentials from the connection profile
The following example uses the database
and token
defined in the default
connection profile.
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for InfluxDB and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.