yannmoisan / graphite4s   0.1.3

Apache License 2.0 GitHub

A library for sending points to graphite.

Scala versions: 2.13 2.12 2.11

graphite4s

Build status Maven Central codecov License

A library for sending points to graphite.

Project goals

The aim is to provide a lightweight graphite client.

This library respects referentially transparency and is agnostic of effect type.

Getting started

Add the dependency to your project:

libraryDependencies += "com.yannmoisan" %% "graphite4s" % Version

Usage

import java.time.Instant
import cats.effect._

object Example extends IOApp.Simple {
  override def run: IO[Unit] = {
    val graphite = new BatchGraphite(new JavaTCPClient[IO]("localhost", 2003))
    (for {
      now <- Clock[IO].realTime
      req <- graphite.send(GraphitePoint("path", 42.0, Instant.ofEpochMilli(now.toMillis)))
    } yield req)
  }
}