Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Elixir
  3. elixometer

elixometer

Apache-2.0Elixir1.5.0

A lightweight Elixir wrapper for exometer that simplifies metric definition and automatic subscription to reporters.

Visit WebsiteGitHubGitHub
825 stars57 forks0 contributors

What is elixometer?

Elixometer is a lightweight Elixir wrapper around the exometer Erlang library that simplifies metric instrumentation. It automatically subscribes defined metrics to the configured reporter based on the environment, reducing boilerplate and configuration overhead. The library supports various metric types including timers, histograms, gauges, counters, and spirals with straightforward update functions.

Target Audience

Elixir developers building applications that require performance monitoring and metric collection, particularly those who want to integrate with existing exometer reporters like StatsD or OpenTSDB without dealing with exometer's complexity.

Value Proposition

Developers choose Elixometer because it abstracts the complexities of exometer with automatic metric subscription, minimal configuration, and developer-friendly features like function timing annotations. It provides overload protection through pobox integration and supports custom formatters and bulk reporting for efficient metric handling.

Overview

A light Elixir wrapper around exometer.

Use Cases

Best For

  • Instrumenting Elixir applications with automatic metric subscription to configured reporters
  • Timing code blocks or entire functions using @timed annotations with automatic key generation
  • Building custom metric reporters that need bulk subscription and reporting capabilities
  • Preventing system overload during metric collection with configurable message buffer limits
  • Integrating with existing exometer reporters like StatsD or OpenTSDB in Elixir applications
  • Reducing boilerplate code when implementing various metric types (timers, histograms, gauges, counters, spirals)

Not Ideal For

  • Projects not using the BEAM ecosystem, as it relies on Erlang's exometer and Elixir.
  • Teams needing out-of-the-box visualization or dashboards, since it focuses on instrumentation without UI components.
  • Applications requiring pure Elixir dependencies without Erlang library ties, due to exometer integration.
  • Scenarios where fine-grained control over metric lifecycle is critical, as automatic subscription limits manual intervention.

Pros & Cons

Pros

Automatic Metric Subscription

Reduces boilerplate by automatically subscribing metrics to configured reporters based on the environment, as shown in the configuration examples that prepend prefixes and environment names.

Developer-Friendly Instrumentation

Simplifies metric updates with straightforward functions for counters, timers, etc., and supports @timed annotations for automatic key generation in function timing.

Flexible Customization Options

Allows custom formatters for metric naming and bulk reporting for efficient handling, enabling tailored integration with various reporters like StatsD or OpenTSDB.

Built-in Overload Protection

Integrates with pobox to buffer messages and prevent system overload, with configurable max_messages limits to manage high metric volumes safely.

Cons

Complex Underlying Dependency

Relies on exometer, which has poor and difficult-to-find documentation for custom reporters, as admitted in the README, adding setup complexity.

Configuration Overhead

Requires coordinating multiple config files for exometer and elixometer, including reporter settings and subscription options, which can be error-prone.

Limited Metric Ecosystem

Tied to exometer's supported metric types and reporters, which may lack modern features or active development compared to newer libraries like Prometheus clients.

Frequently Asked Questions

Quick Stats

Stars825
Forks57
Contributors0
Open Issues8
Last commit3 years ago
CreatedSince 2015

Tags

#exometer#elixir#reporting#observability#telemetry#monitoring#instrumentation#metrics#performance

Built With

E
Elixir

Links & Resources

Website

Included in

Elixir13.1k
Auto-fetched 1 day ago

Related Projects

wobserverwobserver

Web based metrics, monitoring, and observer

Stars926
Forks82
Last commit6 years ago
telemetrytelemetry

Dynamic dispatching library for metrics and instrumentations.

Stars915
Forks74
Last commit3 months ago
prom_exprom_ex

An Elixir Prometheus metrics collection library built on top of Telemetry with accompanying Grafana dashboards

Stars705
Forks133
Last commit2 months ago
exometerexometer

Basic measurement objects and probe behavior

Stars528
Forks102
Last commit7 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub