dogstatsd alternatives and similar packages
Based on the "Third Party APIs" category.
Alternatively, view dogstatsd alternatives based on common mentions on social networks and blogs.
-
ethereumex
Elixir JSON-RPC client for the Ethereum blockchain 0x063D3d782598744AF1252eBEaf3aA97D990Edf72 -
MongoosePush
MongoosePush is a simple Elixir RESTful service allowing to send push notification via FCM and/or APNS. -
cashier
Cashier is an Elixir library that aims to be an easy to use payment gateway, whilst offering the fault tolerance and scalability benefits of being built on top of Erlang/OTP -
airbrake
An Elixir notifier to the Airbrake/Errbit. System-wide error reporting enriched with the information from Plug and Phoenix channels.
CodeRabbit: AI Code Reviews for Developers
Do you think we are missing an alternative of dogstatsd or a related project?
Popular Comparisons
README
dogstatsd-elixir
A client for DogStatsd, an extension of the StatsD metric server for Datadog.
Quick Start Guide
First install the library:
Add dogstatsd to your
mix.exs
dependencies:def deps do [ {:dogstatsd, "0.0.3"} ] end
Add
:dogstatsd
to your application dependencies:def application do [applications: [:dogstatsd]] end
Then start instrumenting your code:
# Require the dogstatsd module.
require DogStatsd
# Configure DogStatsd.
{:ok, statsd} = DogStatsd.new("localhost", 8125)
# Increment a counter.
DogStatsd.increment(statsd, "page.views")
# Record a gauge 50% of the time.
DogStatsd.gauge(statsd, "users.online", 123, %{sample_rate: 0.5})
# Sample a histogram
DogStatsd.histogram(statsd, "file.upload.size", 1234)
# Time a block of code
DogStatsd.time(statsd, "page.render") do
render_page('home.html')
end
# Send several metrics at the same time
# All metrics will be buffered and sent in one packet when the block completes
DogStatsd.batch(statsd, fn(s) ->
s.increment(statsd, "page.views")
s.gauge(statsd, "users.online", 123)
end)
# Tag a metric.
DogStatsd.histogram(statsd, "query.time", 10, %{tags: ["version:1"]})
You can also post events to your stream. You can tag them, set priority and even aggregate them with other events.
Aggregation in the stream is made on hostname/event_type/source_type/aggregation_key.
# Post a simple message
DogStatsd.event(statsd, "There might be a storm tomorrow", "A friend warned me earlier.")
# Cry for help
DogStatsd.event(statsd, "SO MUCH SNOW", "Started yesterday and it won't stop !!", %{alert_type: "error", tags: ["urgent", "endoftheworld"]})
Feedback
To suggest a feature, report a bug, or general discussion, head over here.
Change Log
- 0.0.1
- Initial release.
Credits
dogstatsd-elixir is a port of the Ruby DogStatsd client