A Go Module for in memory RRD
CategoriesGoSoftware ModulesDatabase

This Go Module allows you to build RRDs in memory.

It uses the MIT license and is concise. It maintains a simple data structure in a defined Go struct that provides rate and counter data.

Get the module and read the documentation on Github.

Watch the video for an explanation of how it works, and keep in mind that the result is a simple array of data points through time.

Update a RRD in Go (each measurement interval)

//24 hours with 5 minute interval
rrd.Update(5*60, 24*60/5, 'GAUGE', []float64 {34, 100}, &rrdPtr);

//30 days with 1 hour interval
rrd.Update(60*60, 30*24, 'GAUGE', []float64 {34, 100}, &rrdPtr);

//365 days with 1 day interval
rrd.Update(24*60*60, 365*24, 'GAUGE', []float64 {34, 100}, &rrdPtr);