{"id":21221387,"url":"https://github.com/nearmap/libddog","last_synced_at":"2025-07-10T12:31:58.408Z","repository":{"id":45302079,"uuid":"390143261","full_name":"nearmap/libddog","owner":"nearmap","description":"Datadog automation tool created by the Nearmap API team","archived":false,"fork":false,"pushed_at":"2022-11-17T01:51:57.000Z","size":348,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-07-07T21:06:26.579Z","etag":null,"topics":["datadog","metrics","metrics-visualization","monitoring","monitoring-tool","observability"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nearmap.png","metadata":{"files":{"readme":"README-PYPI.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-07-27T22:23:13.000Z","updated_at":"2022-12-09T22:04:04.000Z","dependencies_parsed_at":"2023-01-22T07:15:12.249Z","dependency_job_id":null,"html_url":"https://github.com/nearmap/libddog","commit_stats":null,"previous_names":[],"tags_count":32,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearmap%2Flibddog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearmap%2Flibddog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearmap%2Flibddog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearmap%2Flibddog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nearmap","download_url":"https://codeload.github.com/nearmap/libddog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225638719,"owners_count":17500619,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["datadog","metrics","metrics-visualization","monitoring","monitoring-tool","observability"],"created_at":"2024-11-20T22:27:23.148Z","updated_at":"2024-11-20T22:27:25.802Z","avatar_url":"https://github.com/nearmap.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Datadog library and command line tools\n\n[![Latest PyPI package version](https://badge.fury.io/py/libddog.svg)](https://pypi.org/project/libddog)\n[![libddog tests](https://github.com/nearmap/libddog/actions/workflows/github-actions.yml/badge.svg?branch=master)](https://github.com/nearmap/libddog/actions/workflows/github-actions.yml)\n\n\nlibddog lets you define your metrics and dashboards in code and get the full benefit of a programming language to automate your monitoring setup.\n\nFirst you write the query:\n\n```python\nquery = (Query(\"aws.elb.request_count\")\n        .filter(region=\"us-east-1\")\n        .agg(\"sum\").by(\"availability-zone\").as_count()\n        .rollup(\"sum\", 5 * 60))\n\n# produces:\n#   sum:aws.elb.request_count{region:us-east-1}\n#    by {availability-zone}.as_count().rollup(sum, 300)\n```\n\nThe query language closely resembles the Datadog syntax, but because it's Python code and not just a string it is validated and known to be well formed at definition time.\n\nThen you define what the graph looks like:\n\n```python\nTimeseries(\n    title=\"ELB: total requests by AZ every 5min\",\n    requests=[\n        Request(\n            queries=[query],\n            display_type=DisplayType.BARS,\n        ),\n    ],\n    size=Size(height=3, width=5),\n)\n```\n\nThis gives you the widget you want, with all the parameters supported by the Datadog UI.\n\nLearn more in the **[User guide](https://github.com/nearmap/libddog/blob/master/docs/USER_GUIDE.md)**.\n\n\n\n## The state of the project\n\nlibddog is a young project and currently supports a small but useful subset of dashboard functionality. See the **[Feature support](https://github.com/nearmap/libddog/blob/master/docs/FEATURE_SUPPORT.md)** page for details.\n\nWe plan to support more dashboard features over time. We also plan to support monitors.\n\nWant to know what's new in the project? Read the **[CHANGELOG](https://github.com/nearmap/libddog/blob/master/CHANGELOG.md)**.\n\nWant to contribute? Start by reading the **[Maintainer guide](https://github.com/nearmap/libddog/blob/master/docs/MAINTAINER_GUIDE.md)**.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnearmap%2Flibddog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnearmap%2Flibddog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnearmap%2Flibddog/lists"}