{"id":13529573,"url":"https://github.com/ccpgames/aggregateD","last_synced_at":"2025-04-01T16:31:36.641Z","repository":{"id":31981366,"uuid":"35551603","full_name":"ccpgames/aggregateD","owner":"ccpgames","description":"A dogstatsD inspired metrics and event aggregation daemon for InfluxDB.","archived":false,"fork":false,"pushed_at":"2016-09-03T03:30:43.000Z","size":108,"stargazers_count":14,"open_issues_count":0,"forks_count":1,"subscribers_count":19,"default_branch":"master","last_synced_at":"2024-11-02T16:35:03.331Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","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/ccpgames.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2015-05-13T13:47:08.000Z","updated_at":"2023-07-21T17:59:47.000Z","dependencies_parsed_at":"2022-08-26T12:00:24.487Z","dependency_job_id":null,"html_url":"https://github.com/ccpgames/aggregateD","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccpgames%2FaggregateD","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccpgames%2FaggregateD/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccpgames%2FaggregateD/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccpgames%2FaggregateD/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ccpgames","download_url":"https://codeload.github.com/ccpgames/aggregateD/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246670548,"owners_count":20815003,"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":[],"created_at":"2024-08-01T07:00:37.543Z","updated_at":"2025-04-01T16:31:36.395Z","avatar_url":"https://github.com/ccpgames.png","language":"Go","funding_links":[],"categories":["Collecting data into InfluxDB"],"sub_categories":["Projects"],"readme":"[![Build Status](https://travis-ci.org/ccpgames/aggregateD.svg?branch=master)](https://travis-ci.org/ccpgames/ccp-aggregateD)\n\naggregateD\n===========\n\naggregateD is a network daemon which listens for metrics including gauges, counters, histograms, sets and events, sent over http and sends aggregates to InfluxDB. InfluxDB is a promising, but young time series database, aggregateD is intended to bring dogstatsD like functionality to Influx.\n\naggregateD can accept metrics either as JSON over HTTP or in the dogstatsD format sent over UDP.  Therefore, aggregateD can be deployed in the same manner as either satsD or dogstatsD. That is, it can either run on the same host as instrumented applications or it can run on a dedicated host that multiple clients communicate with.\n\nUsage and Configuration\n-----------------------\n\nUsuage:\n  ./aggregated -config aggregated.json\n\naggregateD requires a minimal config in order to specify the InfluxDB server and its credentials. Config can either be provided as a json file or as a yaml file. An example config is as follows:\n  ```yaml\n\n#accept metrics via HTTP\ninputJSON: true\n#accept metrics via plain StatsD\ninputStatsD: true\n#accept metrics via DogStatsD\ninputDogStatsD: true\n\n#submit metrics to InfluxDB every 60 seconds\nflushInterval: 60\n\n#output metrics via InfluxDB\noutputInfluxDB: true\n\n#influxDB settings\ninflux:\n    url: http://localhost:8083\n    username: username\n    password: pass123\n    defaultDB: myDB\n\n#write to a redis list falback if InfluxDB is unavailable\nredisOnInfluxFail: true\nredisOutputURL: redis:6379\n  ```\n\naggregateD exposes two web service endpoints: /events and /metrics on port 8083 by default. aggregateD accepts json encoded metrics which take the form of:\n\n  ```json\n  {\n  \t\"name\":      \t\t\"requests\",\n  \t\"host\":      \t\t\"httpd.example.com\",\n  \t\"timestamp\": \t\t1461204545\t\n  \t\"type\":      \t\t\"gauge\",\n  \t\"value\":     \t\t67,\n  \t\"sampling\":  \t\t1,\n\t\"secondaryValues\": \t{\"value1: \"my.host\"},\n  \t\"tags\":      \t\t{\"exampleTag1\": 5, \"exampleTag2\": \"value\"}\n  }\n  ```\nSimilarly, events are represented in the following format:\n\n  ```json\n  {\n    \"name\":           \"timeout\",\n    \"text\":           \"a worker thread timedout\",\n    \"host\":           \"node4.example.com\",\n    \"alerttype\":      \"warning\",\n    \"priority\":       \"normal\",\n    \"timestamp\":      1461204545\n    \"aggregationKey\": \"worker-timeout\",\n    \"sourceType\":     \"default\",\n    \"tags\":           {\"exampleTag1\": 5, \"exampleTag2\": \"value\"},\n  }\n  ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fccpgames%2FaggregateD","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fccpgames%2FaggregateD","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fccpgames%2FaggregateD/lists"}