diff options
Diffstat (limited to 'lib/exdatadog/metrics.ex')
-rw-r--r-- | lib/exdatadog/metrics.ex | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/lib/exdatadog/metrics.ex b/lib/exdatadog/metrics.ex new file mode 100644 index 0000000..26c238e --- /dev/null +++ b/lib/exdatadog/metrics.ex @@ -0,0 +1,34 @@ +defmodule Exdatadog.Metrics do + @moduledoc """ + Metrics functions for DataDog + """ + import Exdatadog + + @doc """ + Return active metrics between from given time to now + + Required parameter: `from`, seconds since unix epoch + """ + @spec metrics(integer, Exdatadog.Client.t) :: Exdatadog.response + def metrics(from, client) when is_integer(from) do + get("api/v1/metrics", client, from: from) + end + + @doc """ + Post time-series data to Datadog + """ + @spec post_series(map, Exdatadog.Client.t) :: Exdatadog.response + def post_series(series, client) when is_map(series) do + post("api/v1/series", client, series) + end + + @doc """ + Query Metrics for any time period + """ + @spec query(integer, integer, binary, Exdatadog.Client.t) :: + Exdatadog.response + def query(from, to, query, client) do + get("api/v1/query", client, [from: from, to: to, query: query]) + end + +end |