Documentation

Use Telegraf to write CSV data to InfluxDB

Use the Telegraf file input plugin to read and parse CSV data into line protocol and write it to InfluxDB. Telegraf is a plugin-based agent that collects metrics from different sources and writes them to specified destinations.

Configure Telegraf to read CSV files

  1. Add and enable the inputs.file plugin in your Telegraf configuration file.
  2. Use the files option to specify the list of CSV files to read. CSV files must be accessible by the Telegraf agent.
  3. Set the data_format option to csv.
  4. Define all other csv_ configuration options specific to the CSV data you want to write to InfluxDB. For detailed information about each of the CSV format configuration options, see CSV input data format.
[[inputs.file]]
  files = ["/path/to/example.csv"]
  data_format = "csv"
  csv_header_row_count = 0
  csv_column_names = []
  csv_column_types = []
  csv_skip_rows = 0
  csv_metadata_rows = 0
  csv_metadata_separators = [":", "="]
  csv_metadata_trim_set = ""
  csv_skip_columns = 0
  csv_delimiter = ","
  csv_comment = ""
  csv_trim_space = false
  csv_tag_columns = []
  csv_measurement_column = ""
  csv_timestamp_column = ""
  csv_timestamp_format = ""
  csv_timezone = ""
  csv_skip_values = []
  csv_skip_errors = false
  csv_reset_mode = "none"

Configure Telegraf to write to InfluxDB

To send data to InfluxDB Cloud Serverless, enable the influxdb_v2 output plugin in the telegraf.conf.

[[outputs.influxdb_v2]]
  urls = ["https://cloud2.influxdata.com"]
  # INFLUX_TOKEN is an environment variable you created for your API WRITE token
  token = "${INFLUX_TOKEN}"
  organization = ""
  bucket = "
BUCKET_NAME
"

Replace the following:

  • BUCKET_NAME: the name of the InfluxDB bucket to write data to

To learn more about configuration options, see Enable and configure the InfluxDB v2 output plugin.

View full example Telegraf configuration file

Restart the Telegraf agent to apply the configuration change and write the CSV data to InfluxDB.

Other Telegraf configuration options

The preceding examples describe Telegraf configurations necessary for writing to InfluxDB Cloud Serverless. The output plugin provides several other options for configuring the Telegraf client:


Was this page helpful?

Thank you for your feedback!


The future of Flux

Flux is going into maintenance mode. You can continue using it as you currently are without any changes to your code.

Flux is going into maintenance mode and will not be supported in InfluxDB 3.0. This was a decision based on the broad demand for SQL and the continued growth and adoption of InfluxQL. We are continuing to support Flux for users in 1.x and 2.x so you can continue using it with no changes to your code. If you are interested in transitioning to InfluxDB 3.0 and want to future-proof your code, we suggest using InfluxQL.

For information about the future of Flux, see the following:

InfluxDB Cloud Serverless