Skip to content
forked from aerosol/kai

Erlang KairosDB Client This repository has been archived and moved to GitHub Enterprise

License

Notifications You must be signed in to change notification settings

Ubiquiti-Cloud/kai

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kai

KairosDB Erlang Client

⚠️ WIP. Do not use yet.

Roadmap / planned features:

  1. Inserting metrics:
  • pool of raw tcp clients (aka telnet API)
  • schedules ELB-friendly "ping", prevents corporate firewalls from killing idle connections
  1. Retreiving metrics and aggregations:
  1. pre-aggregation facility

  2. benchmarks / load-testing tools

Detailed implementation status

  • Configuration

    • Telnet port
    • Telnet host
    • Pool size
    • Ping interval
    • REST API port
    • REST API host
  • Pool of telnet clients

    • Insert data points
    • Query version
    • Auto-reconnect
      • Proper back-off on connection errors (currently each connection is delayed to prevent reconnections at the same time)
    • ELB friendly keep-alive for erlang node-cassandra
    • ELB friendly keep-alive for kairos-cassandra
  • REST API (adding data points is not planned, there is no good reason to do it within the scope of this client)

    • custom response wrappers
      • delete data points
      • delete metric
      • list metric names
      • list tag names
      • list tag values
      • query metrics
        • query builder api - stable (improvements pending)
        • validate input as much as possible
        • aggregates:
          • avg
          • sum
          • dev
          • div
          • histogram
          • least_squares
          • max
          • min
          • rate
        • tags support
        • group_by support
          • tags
          • time
          • value
        • exclude_tags
        • limit
        • order
  • Pre-aggregation (TBD)

  • Load-testing / spammers (TBD)

Credits

Authors

Adam Rutkowski hq@mtod.org

Łukasz Biedrycki lukasz.biedrycki@gmail.com

Special thanks

Thanks to Mahesh Paolini-Subramanya and Ubiquiti Networks for letting us making it an open source project.

About

Erlang KairosDB Client This repository has been archived and moved to GitHub Enterprise

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Erlang 98.8%
  • Makefile 1.2%