datadogr is a simple package for querying data from Datadog.
datadogr is on CRAN now. You can install the released version from CRAN:
install.packages("datadogr")
Or the the development version from GitHub:
# install.packages("devtools")
devtools::install_github("yutannihilation/K9")
You must have an API key for Datadog to use APIs. Follow the instruction on the official document: http://docs.datadoghq.com/api/#authentication
datadogr package uses DATADOG_API_KEY
environmental variable for the API key. You can set this by:
.Renviron
and restart R session.k9_auth()
interactively.k9_list_metrics()
A query can be specified with query
argument using a query string:
k9_get_metrics(
query = "system.cpu.idle{role:db,environment:test}by{host,region}",
from = Sys.time() - 3600,
to = Sys.time()
)
Or, the same thing can be done with metric
, scope
and by
separetely:
k9_get_metrics(
metric = "system.cpu.idle",
scope = list(role = "db", environment = "test"),
by = c("host", "region"),
from = Sys.time() - 3600,
to = Sys.time()
)
The result will look like this:
#> # A tibble: 2 x 8
#> timestamp value metric display_name query_index interval host
#> * <dttm> <dbl> <chr> <chr> <int> <int> <chr>
#> 1 2015-04-29 21:50:00 98.19376 system.cpu.idle system.cpu.idle 0 600 vagrant-ubuntu-trusty-64
#> 2 2015-04-29 22:00:00 99.85857 system.cpu.idle system.cpu.idle 0 600 vagrant-ubuntu-trusty-64
#> # ... with 3 more variables: environment <chr>, role <chr>, region <chr>, expression <chr>
(This function is a but experimental.)
k9_get_events(start = Sys.Date() - 7, end = Sys.Date(), tags = list(role = "db"))