chronix.go

module
v0.0.0-...-98aa545 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 17, 2018 License: Apache-2.0

README

Build Status Go Report Card code-coverage go-doc Apache License 2

The Chronix Go Client Library

This repository contains the Go client library for Chronix. It allows writing time series data into Chronix and reading it back. While the write implementation allows storing structured time series data, the read implementation is still rudimentary and returns only an opaque byte slice (usually containing JSON, but this depends on the fl query parameter).

For full details on usage, see the Go package documentation.

Example Usage

This example stores several test time series in Chronix and reads them back.

Importing

import "github.com/ChronixDB/chronix.go/chronix"

Creating a Chronix Client

// Parse the Solr/Chronix URL.
u, err := url.Parse("http://<solr-url>/solr/chronix")
if err != nil {
	// Handle error.
}

// Create a Solr client.
solr := chronix.NewSolrClient(u, nil)

// Construct a Chronix client based on the Solr client.
c := chronix.New(solr)

Writing Series Data

// Construct a test time series with one data point.
series := []chronix.TimeSeries{
	{
		Metric: "testmetric",
		Attributes: map[string]string{
			"host": "testhost",
		},
		Points: []chronix.Point{
			{
				Timestamp: 1470784794,
				Value: 42.23,
			},
		},
	},
}

// Store the test series and commit within one second.
err := c.Store(series, false, time.Second)
if err != nil {
  // Handle error.
}

Querying Series Data

// Define the Chronix query parameters.
q := "metric:(testmetric) AND start:1470784794000 AND end:1470784794000"
fq := "join=host_s,metric"
fl := "dataAsJson"

// Execute the query.
resp, err := c.Query(q, fq, fl)
if err != nil {
  // Handle error.
}

Directories

Path Synopsis
pb
Package MetricPoint is a generated protocol buffer package.
Package MetricPoint is a generated protocol buffer package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL