| InfluxDBClient {influxdbclient} | R Documentation |
InfluxDBClient
Description
Client for querying from and writing to InfluxDB 2.x.
Format
An R6Class object
Public fields
urlDatabase URL
tokenAuthentication token
orgOrganization name
dialectFlux dialect
retryOptionsRetry options
Methods
Public methods
Method new()
Creates instance of InfluxDBClient.
Usage
InfluxDBClient$new(url, token, org, retryOptions = NULL)
Arguments
urlInfluxDB instance URL
tokenAuthentication token
orgOrganization name
orgRetry options. See
RetryOptionsfor details. Set toTRUEfor default retry options. Default isNULLwhich disables retries.
Method health()
Gets health info of the InfluxDB instance.
Usage
InfluxDBClient$health()
Returns
Named list with name, message, status,
version, commit elements or error
Method query()
Queries data in the InfluxDB instance.
Usage
InfluxDBClient$query( text, POSIXctCol = c(`_time` = "time"), flatSingleResult = TRUE )
Arguments
textFlux query
POSIXctColFlux time to (new)
POSIXctcolumn mapping (named list). Default isc("_time"="time"). UseNULLto skip it.flatSingleResultWhether to return simple list when response contains only one result. Default is
TRUE.
Returns
List of data frames. Data frame represents Flux table. It can be a named list of nested lists of data frames when query response contains multiple results (see Flux yield), or a simple list of data frames for single result response.
Method ready()
Gets readiness status of the InfluxDB instance.
Usage
InfluxDBClient$ready()
Returns
Named list with status, started and up elements or error
Method write()
Writes data to the InfluxDB instance.
Usage
InfluxDBClient$write(
x,
bucket,
batchSize = 5000,
precision = c("ns", "us", "ms", "s"),
measurementCol = "_measurement",
tagCols = NULL,
fieldCols = c(`_field` = "_value"),
timeCol = "_time",
object = NULL,
...
)Arguments
xData as (list of)
data.framebucketTarget bucket name
batchSizeBatch size. Positive number or
FALSEto disable. Default is5000.precisionTime precision
measurementColName of measurement column. Default is
"_measurement".tagColsNames of tag (index) columns
fieldColsNames of field columns. In case of unpivoted data previously retrieved from InfluxDB, use default value ie. named list
c("_field"="_value"). For all other cases, just use simple vector of column names (see Examples).timeColName of time column. The column values should be either of
nanotimeorPOSIXcttype. Default is"_time".objectOutput object name. For dry-run operation, specify the name of the object to receive the output. Default is
NULL. For debugging purposes.
Method clone()
The objects of this class are cloneable with this method.
Usage
InfluxDBClient$clone(deep = FALSE)
Arguments
deepWhether to make a deep clone.
Examples
## Not run:
# Instantiation
client <- InfluxDBClient$new(url = "http://localhost:8086",
token = "my-token",
org = "my-org")
# Query
data <- client$query('from(bucket: "my-bucket") |> range(start: -1h)')
# Write
data <- data.frame(...)
client$write(data, bucket = "my-bucket", precision = "us",
measurementCol = "name",
tagCols = c("location", "id"),
fieldCols = c("altitude", "temperature"),
timeCol = "time")
# Ready status
ready <- client$ready()
# Healt info
ready <- client$health()
## End(Not run)