influxdb/influxdb_iox_client
Stuart Carnie 2306c383f3
feat: Introduce InfluxQL to Flight (#6166)
* feat: Introduce InfluxQL to Flight

All InfluxQL queries will fail with an error

* chore: Temper protobuf lint

* chore: Finalize flight.proto changes; fix tests

* chore: Add tests for InfluxQL planner

* chore: Update docs

* chore: Update docs

* chore: Rename back to original

* chore: Use .into() rather than cast

* chore: Use function rather than field

* chore: Improved InfluxQL planner name

* chore: Restore `impl Into<String>` argument

* chore: Add a comment that Go clients are unable to execute InfluxQL

* chore: Add a test for the `--lang` argument and InfluxQL
2022-11-23 00:33:49 +00:00
..
src feat: Introduce InfluxQL to Flight (#6166) 2022-11-23 00:33:49 +00:00
Cargo.toml chore(deps): Bump bytes from 1.2.1 to 1.3.0 (#6199) 2022-11-22 08:23:24 +00:00
README.md docs: Readability improvements (#4946) 2022-06-27 21:46:18 +00:00

README.md

InfluxDB IOx Client

This is the official Rust client library for connecting to InfluxDB IOx.

Currently only gRPC is supported.

Using the gRPC Write Client

To write to IOx, create a connection and a write client, and then send line protocol. Here is an example of creating an instance that connects to an IOx server running at http://127.0.0.1:8081 (the default bind address for the gRPC endpoint of IOx when running in all-in-one mode) and sending a line of line protocol:

#[tokio::main]
fn main() {
    use influxdb_iox_client::{
        write::Client,
        connection::Builder,
    };

    let mut connection = Builder::default()
        .build("http://127.0.0.1:8081")
        .await
        .unwrap();

    let mut client = Client::new(connection);

    // write a line of line protocol data
    client
        .write_lp("bananas", "cpu,region=west user=23.2 100",0)
        .await
        .expect("failed to write to IOx");
    }
}