Skip to content

Latest commit

 

History

History
85 lines (65 loc) · 2.83 KB

README.md

File metadata and controls

85 lines (65 loc) · 2.83 KB

scalaz-metrics

Gitter

Goal

A high-performance, purely-functional library for adding instrumentation to any application, with a simple web client and JMX support.

Introduction and Highlights

Scalaz Metric is a principled functional programming library to measure the behavior of your application. It focuses on provideing metrics and health checks in a performant purely functional manner.

  • Comprehensive and consistent
  • Type safe, purely-functional
  • Pluggable effect monads
  • Asynchronous and non-blocking
  • Supports streaming
  • Can be used in Scala REPLs

If it can affect your code's business value, measure it. -- Coda Hale

In order to know how well our code is generating business value, we need metrics -- also Coda Hale

Competitors

Metrics Scala
Type safe, pure FP: ✘
Comprehensive: ✔
Scala: ✔
Notes:

Scala Metrics
Type safe, pure FP: ✘
Comprehensive: ✔
Scala: ✔
Notes:

Kamon
Type safe, pure FP: ✘
Comprehensive: ✔
Scala: ✔
Notes:

JAJMX
Type safe, pure FP: ✘ (but very FP oriented)
Comprehensive: ✔
Scala: ✔
Notes:

SSE-JMX
Type safe, pure FP: ✘
Comprehensive: ✔
Scala: ✔
Notes:

Metrics Datadog
Type safe, pure FP: ✘
Comprehensive: ✔
Scala: ✘ (Java)
Notes:

ekg: Remote monitoring of processes
Type safe, pure FP: ✔
Comprehensive: ✔
Scala: ✘ (Haskell)
Notes: Monad Metrics a wrapper and API for using EKG metrics

prometheus: Prometheus Haskell Client
Type safe, pure FP: ✔
Comprehensive: ✔
Scala: ✘ (Haskell)
Notes:

Metrics Type safe, pure FP: ✘
Comprehensive: ✔
Scala: ✘ (Go)
Notes: Haskell implementation, Metrics, Metrics, Everywhere - Coda Hale

Background

Optimizing Tagless Final – Saying farewell to Free

Tagless Final algebras and Streaming

Notes

Dropwizard and Cats Gist