docs-v2/content/shared/influxdb3-write-guides/use-telegraf/configure.md

4.5 KiB

Use the Telegraf influxdb_v2 output plugin to collect and write metrics to {{< product-name >}}. This plugin uses the InfluxDB v2 HTTP API write endpoint available with {{% product-name %}}. Learn how to enable and configure the influxdb_v2 output plugin to write data to {{% product-name %}}.

[!Note] View the requirements for using Telegraf with {{< product-name >}}.

Configure Telegraf input and output plugins

Configure Telegraf input and output plugins in the Telegraf configuration file (typically named telegraf.conf). Input plugins collect metrics. Output plugins define destinations where metrics are sent.

This guide assumes you have already installed {{% product-name %}} and have been through the getting started guide.

Add Telegraf plugins

To add any of the available Telegraf plugins, follow the steps below.

  1. Find the plugin you want to enable from the complete list of available Telegraf plugins.
  2. Click View to the right of the plugin name to open the plugin page on GitHub. For example, view the MQTT plugin GitHub page.
  3. Copy and paste the example configuration into your Telegraf configuration file (typically named telegraf.conf).

Enable and configure the InfluxDB v2 output plugin

To send data to {{< product-name >}}, enable the influxdb_v2 output plugin in the telegraf.conf.

{{% code-placeholders "AUTH_TOKEN|DATABASE_NAME" %}}

[[outputs.influxdb_v2]]
  urls = ["http://{{< influxdb/host >}}"]
  token = "AUTH_TOKEN"
  organization = ""
  bucket = "DATABASE_NAME"

{{% /code-placeholders %}}

Replace the following:

  • {{% code-placeholder-key %}}DATABASE_NAME{{% /code-placeholder-key %}}: the name of the database to write data to

  • {{% code-placeholder-key %}}AUTH_TOKEN{{% /code-placeholder-key %}}: your {{< product-name >}} authorization token. Store this in a secret store or environment variable to avoid exposing the raw token string.

    [!Note] While in beta, {{< product-name >}} does not require an authorization token. For the token option, provide an arbitrary, non-empty token string.

The InfluxDB output plugin configuration contains the following options:

urls

An array of URL strings. To write to {{% product-name %}}, include your {{% product-name %}} URL:

["http://{{< influxdb/host >}}"]

token

Your {{% product-name %}} authorization token.

[!Note] While in beta, {{< product-name >}} does not require an authorization token. For the token option, provide an arbitrary, non-empty token string.

[!Tip]

Store your authorization token as an environment variable

To prevent a plain text token in your Telegraf configuration file, we recommend that you store the token as an environment variable and then reference the environment variable in your configuration file using string interpolation. For example:

[[outputs.influxdb_v2]]
  urls = ["http://{{< influxdb/host >}}"]
  token = "${INFLUX_TOKEN}"
  # ...

organization

For {{% product-name %}}, set this to an empty string ("").

bucket

The name of the {{% product-name %}} database to write data to.

[!Note] An InfluxDB v2 bucket is synonymous with an {{% product-name %}} database.

Other Telegraf configuration options

For more plugin configuration options, see the influxdb_v2 output plugin README on GitHub.

Start Telegraf

Start the Telegraf service using the --config flag to specify the location of your telegraf.conf.

telegraf --config /path/to/custom/telegraf.conf