# awesome-influxdb

A curated list of awesome projects, libraries, tools, etc. related to InfluxDB. This list focuses on libraries, tools, etc. supporting InfluxDB version 1.0 and up.

Want to make this list better? Take a look at our page on contributing and then open a pull request!

## Reference material

If you know of any particularly useful blog posts, talks, slides, etc. that belong in this list, please open a pull request!

- Official documentation
- InfluxDB in IoT world. Part 1: Introduction | Part 2: Hosting and scaling on AWS | Part 3: Plotting graphs using Grafana

## Client libraries

### Official

- C# - A .NET library for efficiently sending points to InfluxDB
- Go - Go client for InfluxDB 1.x
- Java - Java client for InfluxDB
- PHP - PHP client for InfluxDB
- Python - Python client for InfluxDB
- Rails - Ruby on Rails bindings to automatically write metrics into InfluxDB
- Ruby - Ruby client for InfluxDB

### Unofficial

- capacitor - A Clojure client for InfluxDB
- cl-influxdb - Common Lisp interface to the Time Series Database InfluxDB
- erflux - InfluxDB client for Erlang
- fluxter - An InfluxDB writer for Elixir
- influent - InfluxDB Javascript driver
- influent.rs - InfluxDB Rust driver
- InfluxDB-Client-for-Arduino - Arduino client for InfluxDB
- InfluxDB-Client-LabVIEW - LabVIEW client for InfluxDB
- influxdb-cpp-rest - A C++ InfluxDB client with a batching async interface
- influxdb-haskell - Haskell client library for InfluxDB
- InfluxDB.NET - .NET client for InfluxDB
- InfluxDB PHP SDK - UDP/IP or HTTP adapters for read and write data
- influxdbr - R library for InfluxDB
- instream - InfluxDB driver for Elixir
- node-influx - InfluxDB Node.js Client
- node-influx-udp - Write to InfluxDB using its UDP interface
- scala-influxdb-client - Asynchronous InfluxDB client for Scala

## Collecting data into InfluxDB

### Projects

#### Dedicated

Tools whose primary or sole purpose is to feed data into InfluxDB.

- accelerometer2influx - Android application that takes the x-y-z axis metrics from your phone accelerometer and sends the data to InfluxDB.
- agento - Client/server collecting near realtime metrics from Linux hosts
- aggregateD - A dogstatsD inspired metrics and event aggregation daemon for InfluxDB
- aprs2influxdb - Interfaces ham radio APRS-IS servers and saves packet data into an influxdb database
- Charmander - Charmander is a lab environment for measuring and analyzing resource-scheduling algorithms
- gopherwx - a service that pulls live weather data from a Davis Instruments Vantage Pro2 station and stores it in InfluxDB
- grade - Track Go benchmark performance over time by storing results in InfluxDB
- Influx-Capacitor - Influx-Capacitor collects metrics from windows machines using Performance Counters. Data is sent to influxDB to be viewable by grafana
- Influxdb-Powershell - Powershell script to send Windows Performance counters to an InfluxDB Server
- influxdb-logger - SmartApp to log SmartThings device attributes to an InfluxDB database
- influxdb-sqlserver - Collect Microsoft SQL Server metrics for reporting to InfluxDB and visualize them with Grafana
- k6 - A modern load testing tool, using Go and JavaScript
- marathon-event-metrics - a tool for reporting Marathon events to InfluxDB
- mesos-influxdb-collector - Lightweight mesos stats collector for InfluxDB
- mqforward - MQTT to influxdb forwarder
- node-opcua-logger - Collect industrial data from OPC UA Servers
- ntp_checker - compares internal NTP sources and warns if the offset between servers exceeds a definable (fraction of) seconds
- proc_to_influxdb - Console app to observe Windows process starts and stops via InfluxDB
- pysysinfo_influxdb - Periodically send system information into influxdb (uses python3 + psutil, so it also works under Windows)
- sysinfo_influxdb - Collect and send system (linux) info to InfluxDB
- snmpcollector - A full featured Generic SNMP data collector with Web Administration Interface for InfluxDB
- Telegraf - (Official) plugin-driven server agent for reporting metrics into InfluxDB
- tesla-streamer - Streams data from Tesla Model S to InfluxDB (rake task)
- traffic_stats - Acquires and stores statistics about CDNs controlled by Apache Traffic Control
- vsphere-influxdb-go - Collect VMware vSphere, vCenter and ESXi performance metrics and send them to InfluxDB

#### Non-dedicated

Tools that generate data that feed into multiple backends, InfluxDB included.

- cAdvisor - Analyzes resource usage and performance characteristics of running containers
- Centreon - A network, system, applicative supervision and monitoring tool
- cernan - A telemetry and logging aggregation server
- cloudwatch-sender - Send metrics to InfluxDB/Graphite from Amazon Cloudwatch
- crankshaftd - Simple Go agent to ingest streaming data from Turbine via SSE and push it into StatsD as a gauge or to InfluxDB
- Domoticz - Open source Home Automation System
- gatling - Async Scala-Akka-Netty based Stress Tool
- Glances - Glances an Eye on your system
- Graphios - A program to send nagios perf data to graphite (carbon) / statsd / librato / influxDB
- heapster - Monitor container resource usage of a Kubernetes cluster
- heka - General purpose data collection and processing tool
- internet_data_usage - Python based application to pull data plan usage for different carriers such as Telus and Koodo
- ioBroker - Homeautomation / IoT Platform uses Influxdb to store history data
- jmxtrans - Effectively the missing connector between speaking to a JVM via JMX on one end and whatever logging / monitoring / graphing package that you can dream up on the other end.
- Apache JMeter - Popular load testing tool, you can get real-time results sent to a backend through the InfluxDBBackendListenerClient which allows you to send metrics (active threads, response time …) to an InfluxDB Backend using UDP or HTTP protocols
- logary - High performance, multi-target logging, metric and health-check library for mono and .Net
- metrics.sh - Collect and forward metrics using portable shell scripts
- OpenHAB - A universal integration platform for all things around home automation
- Riemann - A network event stream processing system, in Clojure
- statsd-jvm-profiler - Simple JVM Profiler Using StatsD
- statsite - C implementation of statsd
- Sematext Agent - Open source monitoring agent to collect metrics from Solr, Elasticsearch, Cassandra, JVM, JMX, ClickHouse, MySQL, Hadoop, and more via pluggable integrations. Output via Influx Line Protocol to InfluxDB or Sematext Cloud
- logagent - is a modern, open-source, light-weight log shipper. Logagent includes influxdb input plugin and influxdb output plugin and many other integrations

### Libraries

Libraries to collect data and feed into InfluxDB.

- crow-metrics - small metrics collector for node servers
- django-influxdb-metrics - A reusable Django app that sends metrics about your project to InfluxDB
- go-runtime-metrics - Collect golang runtime Metrics, outputting to InfluxDB or through Telegraf
- lua-resty-influx - OpenResty client for InfluxDB
- metrics - (PHP) Simple library that abstracts different metrics collectors. “I find this necessary to have a consistent and simple metrics (functional) API that doesn’t cause vendor lock-in”
- pyVsphereInflux - A library and supporting script for pulling data from vSphere and inserting it into InfluxDB
- telemetry - metric reporting for Go applications

#### Hooks

Hooks for other logging libraries to output to InfluxDB.

- go-metrics-influxdb - A reporter for the go-metrics library which will post the metrics to InfluxDB
- logrus_influxdb - InfluxDB Hook for Logrus

### Plugins

Plugins to allow other standalone tools to send their data into InfluxDB.

- embulk-output-influxdb - InfluxDB output plugin for Embulk
- exometer_influxdb - Exometer reporter for InfluxDB
- fluent-plugin-influxdb - A buffered output plugin for fluentd and InfluxDB
- influx-nagios-plugin - Nagios plugin for querying monitoring stats from InfluxDB
- jenkinsci/influxdb-plugin - Jenkins plugin to send build metrics into InfluxDB
- kafka-influxdb - A Kafka consumer for InfluxDB written in Python
- logstash-output-influxdb - Community-maintained Logstash plugin to output metrics to InfluxDB
- metrics-influxdb - A reporter for dropwizard metrics which announces measurements to an InfluxDB server
- mod-influxdb - Shinken module for exporting data to InfluxDB
- sensu-plugins-influxdb - Sensu InfluxDB Plugins
- sidekiq-influxdb - A Sidekiq middleware to send job execution metrics to InfluxDB
- snap-plugin-publisher-influxdb - Publishes snap metrics to InfluxDB
- statsd-influxdb-backend - A naive InfluxDB backend for StatsD
- logagent influx input plugin - Logagent plugin to receive data via Influx Line Protocol
- logagent InfluxDB output plugin - Plugin to send data via Influx Line Protocol

### Import tools

Tools to import a fixed set of data into InfluxDB. * JMeter2InfluxDB - Read JMeter results in a csv file and put results in InfluxDB after the load test * LoadRunner Raw Results Exporter - To export scenario results (load test results) to InfluxDB * nmon2influxdb - Import nmon file into InfluxDB

## Consuming data from InfluxDB

### Dashboards and visualization

- Chronograf - Official InfluxDB data visualization tool
- DBeaver - DBeaver Universal Database Tool, DBeaver Enterprise has special extensions for InfluxDB
- facette - Time series data visualization and graphing software
- FluxDash - Terminal based InfluxDB dashboard
- grafana - Gorgeous metric viz, dashboards & editors for Graphite, InfluxDB & OpenTSDB
- InfluxDB Studio - InfluxDB Studio is a UI management tool, its inspiration comes from other similar SQL database management tools (use InfluxData.Net run on MS Windows)
- InfluxGraph - Graphite InfluxDB storage finder for Graphite-API
- ostent - collects and displays system metrics and optionally relays to Graphite and/or InfluxDB

### Other tools

- hubot-influxdb-alerts - Create and manage alerts in your chatroom using hubot and influxdb
- influx-alert - A tool to query InfluxDB and send alerts based on a YAML config
- influxdb_google_sheets - Google Sheets script for fetching and formatting InfluxDB data
- Morgoth - Metric anomaly detection

## Provisioning InfluxDB

Tools, libraries, etc. to help you get InfluxDB running without installing it by hand.

- chef-influxdb - Chef cookbook for InfluxDB
- golja-influxdb - Puppet module for InfluxDB
- influxdb-formula - Installs and configures the InfluxDB timeseries database
- influxdb-release - Experimental BOSH release for InfluxDB
- puppet-telegraf - Puppet module for Telegraf
- rossmcdonald/influxdb - Ansible role for installing, configuring, and maintaining InfluxDB
- tutum-docker-influxdb - Docker image to run an out-of-the-box InfluxDB server

## Queries

- dbal-influxdb - Doctrine DBAL for InfluxDB
- Influxdb::Arel - Influxdb::Arel is a SQL AST manager for InfluxDB dialect. It simplifies the generation of complex SQL queries
- influxer - InfluxDB ActiveRecord-style
- Time Series Admin - Administration panel and querying interface for InfluxDB databases

## Hosting of InfluxDB / SaaS

- InfluxCloud - From the creators of InfluxDB
- Aiven - Provides a choice of host (AWS, Google, DigitalOcean, etc.), geographic location, and server specs
- Scalingo - Provides a choice of server specs
- HostedMetrics - Geared towards custom application monitoring by hosting the combination of InfluxDB, Grafana, and StatsD

## Miscellaneous

Projects that don’t seem to fit in any other category.

- influx-protector - proxy to prevent dangerous queries getting to influxdb
- influxdb-schema-updater - A small DevOps tool to manage the schema of an InfluxDB instance with a set of configuration files
- influx-prompt - An interactive command-line InfluxDB cli with auto completion
- cleanflux - proxy around /query endpoint with auto retention policy selection and on the wire bug corrections

## Other awesome lists

### Awesome lists that include links to InfluxDB

- awesome-bigdata
- awesome-dashboard
- awesome-data-engineering
- awesome-db
- awesome-go
- awesome-home-assistant
- awesome-microservices
- awesome-sysadmin

### Lists of awesome lists that include awesome-influxdb

- awesome
- lists

## License

To the extent possible under law, the authors and contributors have waived all copyright and related or neighboring rights to awesome-influxdb.

influxdb.md Github