Current section
Files
Jump to
Current section
Files
lib/prometheus/config.ex
defmodule Prometheus.Config do
defmacro __using__(default_config) do
quote do
defmodule Config do
@moduledoc false
def config(key) do
Application.get_env(:prometheus, key, unquote(default_config))
end
defp config(key, name, default) do
config(key)
|> Keyword.get(name, default)
end
unquote do
for {option, default} <- default_config do
quote do
def unquote(option)(key) do
config(key, unquote(option), unquote(default))
end
end
end
end
end
end
end
end