A simple library for sending metrics to DataDog
If available in Hex, the package can be installed
by adding elixir_data_dog
to your list of dependencies in mix.exs
:
def deps do
[{:elixir_data_dog, "~> 0.1.0"}]
end
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/elixir_data_dog.
Provide the following variables in your config.exs
:
config :elixir_data_dog,
datadog_port: 8125,
datadog_host: "localhost",
datadog_namespace: "YOUR_APP_NAME"
ElixirDataDog.increment("page.views")
ElixirDataDog.decrement("page.logins")
ElixirDataDog.count("page.visits", 10)
ElixirDataDog.gauge("users.online", 123)
ElixirDataDog.histogram("file.upload.size", 1234)
ElixirDataDog.timing("file.download.time", 1000)
result = ElixirDataDog.time("page.render") do
render_page('home.html')
end
ElixirDataDog.set("users", "John Doe")
ElixirDataDog.event("The server returned 500.")
For each function you can provide additional options with tags.
ElixirDataDog.event("The server returned 500.", tags: ~w(tag1 tag2))