InfluxDB Components

Apiman components for InfluxDB.

InfluxDB is a popular time-series database. Apiman supports the InfluxDB 1 protocol. Refer to the InfluxDB v2 documentation on InfluxDB 1.x compatibility API.

Metrics

Set the metrics implementation as shown.

  • Properties (Servlet)

  • JSON (Vert.x)

apiman-gateway.metrics=io.apiman.gateway.engine.influxdb.InfluxDbMetrics
{
  "metrics": {
    "class": "io.apiman.gateway.engine.influxdb.InfluxDbMetrics",
    "config": {
      // Config options here.
     }
  }
}

Required Parameters

Name Type Description

endpoint

String

InfluxDB URL for Apiman to connect to.

  • Allowed Values: must not contain whitespace

database

String

InfluxDB database name

  • Allowed Values: must not contain whitespace

measurement

String

InfluxDB series name (aka. measurement)

  • Allowed Values: must not contain whitespace

Optional Parameters

Name Type Description

retentionPolicy

String

InfluxDB data retention policy

  • Default Value: default retention policy, as set in InfluxDB

  • Allowed Values: must not contain whitespace

username

String

Username

password

String

Password

token

String

Authentication token (typically used in place of username and password, especially in InfluxDB v2)

  • Allowed Values: must not contain whitespace

generatorName

String

Generator name (tag in dataset)

  • Default Value: apiman-gateway

  • Allowed Values: must not contain whitespace

queue.size

Integer

Maximum allowed queue size (metrics waiting to be sent)

  • Default Value: 10,000

  • Allowed Values: int greater than zero

batch.size

Integer

Maximum batch size flushed to InfluxDB in a single request. Typically, batch sizes will be much smaller than this unless there is a backlog caused by network issues, outages, etc.

  • Default Value: 5,000

  • Allowed Values: int greater than zero