Amazon Timestream for InfluxDB
JVM AGENT
Item Type Support
SIGNALSASSETS
Overview
The InfluxDB V2 connector enables Seeq to access data from a Timestream for InfluxDB instance, translating measurements/tags/series into assets and signals in Seeq.
Prerequisites
If you have not yet created a data model, we recommend you read the Schema Recommendations section of Understanding the InfluxDB Connector.
Create a Timestream for InfluxDB database.
Ensure you add port 8086 to your security group as an incoming rule to allow connectivity to your database instance (https://docs.aws.amazon.com/timestream/latest/developerguide/timestream-for-influx-getting-started-creating-db-instance.html)
Create an account for Seeq to access Timestream and record the credentials
Configuration
This is an example configuration template that is displayed in the Additional Configuration box that appears when you click Configure for an existing datasource (or if a new datasource is being created, in the Create new datasource connection modal that appears after clicking Add Datasource) on the Datasources administration page.
InfluxDB V2
{
"Url" : "http://localhost:8086",
"Username" : "admin",
"Password" : "admin",
"Token" : null,
"ConnectTimeoutInSeconds" : 30,
"ReadTimeoutInSeconds" : 120,
"CallTimeoutInSeconds" : 150,
"Organizations" : [ ],
"Simulation" : false,
"IndexingSchemaQueryStart" : null,
"IndexingSchemaQueryStop" : null,
"IndexingSchemaDiscoverOnly" : false
}
InfluxDB V2 Additional Configuration
Property Name | Default Value | Data Type | Description |
---|---|---|---|
|
| String | The URL of the InfluxDB v2 server you wish to connect to. If you are using InfluxDB Cloud, this is the root of the URL you will see in your browser address bar when using the web-based admin console (e.g.: |
|
| String | NOT RECOMMENDED: This is the username of a user that has access to InfluxDB. It is strongly recommended that you commission an API Token and use that instead, as described here: https://docs.influxdata.com/influxdb/cloud/security/tokens/create-token/. You will place the token string in the |
|
| String/SecretFile | NOT RECOMMENDED: The password of a user that has access to the database. It is recommended to leverage a Secrets File to store this information. It is strongly recommended that you commission an API Token and use that instead, as described here: https://docs.influxdata.com/influxdb/cloud/security/tokens/create-token/. You will place the token string in the |
| null | String/SecretFile | The API Token used to access InfluxDB. Follow the instructions at https://docs.influxdata.com/influxdb/cloud/security/tokens/create-token/ to generate your token. It is recommended to leverage a Secrets File to store this information. You can also authenticate via username / password, but it is not recommended. |
| 30 | Integer | The connect timeout is applied when connecting a TCP socket to the target host. |
| 120 | Integer | The read timeout is applied to both the TCP socket and for individual read IO operations including on Source of the Response. |
| 150 | Integer | The call timeout spans the entire call: resolving DNS, connecting, writing the request body, server processing, and reading the response body. If the call requires redirects or retries they must all be completed within one timeout period. |
| Empty List | List of Organizations | Seeq will automatically fill in this property on the first connection. Afterward, you may modify the organization definition as specified in Rearranging the Asset Tree. |
|
| Boolean | If you have a blank InfluxDB server and you're just experimenting, you can load simulated data into InfluxDB by changing this field to |
| null (30 days ago) | String | InfluxDB v2 requires that a time period is included when querying for the set of measurements / tag keys / field keys that are present in a bucket. When this field is set to null, a default of 30 days ago is used. If you find that “old” measurements/tags/fields are not being indexed, considering setting this field to |
| null (now) | String | InfluxDB v2 requires that a time period is included when querying for the set of measurements / tag keys / field keys that are present in a bucket. When this field is set to null, a default of “now” is used. |
|
| Boolean | If set to |
Known Issues
InfluxDB does not currently have a clean mechanism for storing metadata for a series. Find our schema recommendations for working around this limitation here.
Please report any other issues you find to our support portal.
Troubleshooting
Simulation Issues
If you would like to run the simulator against your Timestream for InfluxDB database instance you will need the operator token. This can be retrieved by following the steps here: https://docs.aws.amazon.com/timestream/latest/developerguide/timestream-for-influx-getting-started-operator-token.html.
Rearranging the Asset Tree
You may be interested in rearranging the ordering of the asset tree in Seeq. The default asset tree organization will be populated within the configuration file, as shown on the right.
To rearrange the ordering, change the Tree field to reflect the new ordering. Each level of the asset tree is separated by >> and the levels can contain static text as well. You can omit levels by just removing them. For example, this tree specification removes the database level and adds a "Model" and "Unit#" prefix to make the asset tree easier to understand:
"Tree" : "${_measurement} >> ${Location} >> Model ${Model} >> Unit# ${Unit Serial No}"
You can also enable/disable databases and measurements using the Enabled field.
{
"Databases" : [ {
"Database" : "American_Manufacturing",
"Enabled" : true,
"Measurements" : [ {
"Measurement" : "Power Generators",
"Enabled" : true,
"Tree" : "${_database} >> ${_measurement} >> ${Location} >> ${Model} >> ${Unit Serial No}"
} ]
} ]
}
Note: This example is for an InfluxDB v1 configuration. InfluxDB v2 configurations will have Organizations
and Buckets
in place of Databases
.
If you are running into other issues with connecting to or access data from InfluxDB, view our guide for troubleshooting datasource issues.
Performance considerations
The InfluxDB connector does not have any special performance considerations. View our guide on optimizing datasource performance for general guidance.