finds.dev← search

// the find

influxdata/influxdb-client-go

★ 654 · Go · MIT · updated Jul 2026

InfluxDB 2 Go Client

The official Go client for InfluxDB 2.x, maintained by InfluxData. Covers writes (sync and async with batching/retry), Flux queries, and the full management API (buckets, orgs, users, authorizations). If you're running InfluxDB 2.x and writing Go, this is what you use.

The async write path is well thought out — implicit batching, configurable flush intervals, exponential backoff with jitter, and a dedicated error channel so you don't have to poll for failures. The blocking and non-blocking write APIs are cleanly separated, so you can pick the right model for your workload without fighting the abstraction. Parameterized queries are supported and the README actually explains the injection-prevention angle rather than burying it. The domain API layer is generated from the OpenAPI spec, which means it stays in sync with the server without manual drift.

This library is explicitly for InfluxDB 2.x with Flux, but InfluxDB is now on v3 and InfluxData is steering users toward InfluxQL and the v1 compatibility layer — the README itself admits this in the first paragraph, which is a strange way to open. Flux as a query language is effectively deprecated upstream, so you're betting on a client for a query language with no future. The async write API surfaces errors through a channel that you have to remember to drain in a goroutine; miss that and you get silent drops with no indication anything went wrong. No structured logging — the internal logger writes plain strings, so integrating with zerolog or slog requires wrapping the whole thing.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →