{"id":18246635,"url":"https://github.com/douban/graphite-kenshin","last_synced_at":"2025-04-04T14:31:20.109Z","repository":{"id":70974967,"uuid":"76819931","full_name":"douban/graphite-kenshin","owner":"douban","description":"A plugin for using graphite-web with the kenshin-based storage backend.","archived":false,"fork":false,"pushed_at":"2018-06-14T03:56:23.000Z","size":90,"stargazers_count":16,"open_issues_count":3,"forks_count":4,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-03-20T14:40:43.320Z","etag":null,"topics":["graphite-api","metrics"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/douban.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-12-19T02:08:25.000Z","updated_at":"2024-01-20T11:50:34.000Z","dependencies_parsed_at":"2023-03-20T19:51:48.985Z","dependency_job_id":null,"html_url":"https://github.com/douban/graphite-kenshin","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fgraphite-kenshin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fgraphite-kenshin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fgraphite-kenshin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/douban%2Fgraphite-kenshin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/douban","download_url":"https://codeload.github.com/douban/graphite-kenshin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247194000,"owners_count":20899409,"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":["graphite-api","metrics"],"created_at":"2024-11-05T09:27:05.587Z","updated_at":"2025-04-04T14:31:20.102Z","avatar_url":"https://github.com/douban.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Graphite-Kenshin\n==================\n\nGraphite-Kenshin is a plugin for using graphtie-api with [Kenshin](https://github.com/douban/Kenshin) storage backend.\n\nGraphite Cluster\n===================\n\nOverview\n-----------\n\nOur graphite consists of three major components:\n\n- [Graphite-API](https://graphite-api.readthedocs.io/en/latest/), Graphite-API is an alternative to Graphite-web, without any built-in dashboard. Its role is solely to fetch metrics from a time-series database (whisper, cyanite, etc.) and rendering graphs or JSON data out of these time series. It is meant to be consumed by any of the numerous Graphite dashboard applications.\n- [Kenshin](https://github.com/douban/Kenshin.git), A time-series database alternative to Graphite Whisper with 40x improvement in IOPS.\n    - Rurouni-cache, Metric processing daemon.\n    - Kenshin, Time-series database library.\n- [carbon-c-realy](https://github.com/douban/carbon-c-relay.git), Enhanced C implementation of Carbon relay, aggregator and rewriter.\n\n\u003cimg src=\"/img/cluster.png\" width=\"800\"/\u003e\n\nInstall a demo cluster\n===================\n\nKenshin\n------------\n\nRefer [here](https://github.com/douban/Kenshin#quick-start) to install kenshin and start two `Rurouni-cache` instances.\n\nGraphite-Kenshin \u0026 Graphite-API\n------------------\n\nInstall\n\n    $ git clone https://github.com/douban/graphite-kenshin.git\n    $ cd graphite-kenshin\n    $ GraphiteKenshinVenv=\u003cvenv_of_kenshin\u003e make install\n\nStart Graphite-API\n\n    $ export GRAPHITE_API_CONFIG=\u003cpath/to/graphite-kenshin\u003e/conf/graphite-api.yaml\n    $ # update graphite-api.yaml\n    $ gunicorn -w2 graphite_api.app:app -b 127.0.0.1:8888\n\ncarbon-c-relay\n-----------------\n\nBuild carbon-c-relay:\n\n    $ git clone https://github.com/douban/carbon-c-relay.git\n    $ cd carbon-c-relay\n    $ make\n\nStart carbon-c-realy:\n\n    $ cd graphite-kenshin\n    $ /path/to/relay -p 2001 -f ./conf/relay.conf -S 1 -H relay_0\n\n\nSend \u0026 Query metrics\n======================\n\nSend metrics to carbon-c-relay\n\n    $ cd \u003cdirectory_of_kenshin\u003e\n    $ python examples/metric_stresser.py -a 127.0.0.1:2001 -f line -p 10 -m 100 -i 10\n\nQuery metrics through Graphite-API\n\n    http://127.0.0.1:8888/render?target=metric_stresser.process_*.metric_id.0\u0026width=1200\u0026height=600\u0026from=-10min\n\n\nContributors\n===================\n\n- [@zzl0](https://github.com/zzl0)\n- [@camper42](https://github.com/camper42)\n- [@windreamer](https://github.com/windreamer)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdouban%2Fgraphite-kenshin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdouban%2Fgraphite-kenshin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdouban%2Fgraphite-kenshin/lists"}