{"id":13449093,"url":"https://github.com/vmarchaud/consul-topology-visualizer","last_synced_at":"2025-07-10T18:41:23.553Z","repository":{"id":100262630,"uuid":"162631932","full_name":"vmarchaud/consul-topology-visualizer","owner":"vmarchaud","description":"Visualize latency between your Consul nodes","archived":false,"fork":false,"pushed_at":"2019-12-12T10:41:14.000Z","size":36,"stargazers_count":21,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-08T00:16:00.513Z","etag":null,"topics":["consul","latency","monitoring","vizualisation"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/vmarchaud.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2018-12-20T21:13:27.000Z","updated_at":"2024-10-25T13:03:45.000Z","dependencies_parsed_at":"2023-05-13T06:30:12.191Z","dependency_job_id":null,"html_url":"https://github.com/vmarchaud/consul-topology-visualizer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmarchaud%2Fconsul-topology-visualizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmarchaud%2Fconsul-topology-visualizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmarchaud%2Fconsul-topology-visualizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmarchaud%2Fconsul-topology-visualizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vmarchaud","download_url":"https://codeload.github.com/vmarchaud/consul-topology-visualizer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252276955,"owners_count":21722447,"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":["consul","latency","monitoring","vizualisation"],"created_at":"2024-07-31T06:00:30.870Z","updated_at":"2025-05-04T01:30:29.129Z","avatar_url":"https://github.com/vmarchaud.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","Projects"],"sub_categories":["Other"],"readme":"# Consul Topology\n\nThis tool is made to vizualise latency between consul nodes based on the [Coordinate API](https://www.consul.io/docs/internals/coordinates.html) to compute the data.\n\n\n![](https://i.imgur.com/j6v0iep.png)\n\n\n## Inspiration\n\nSome people might recognize the similarity with [Goldpinger](https://github.com/bloomberg/goldpinger) which is indeed the tool that i used to kickstart my version, so big thanks you to them for open sourcing this tool in the first place.\n\nThe first difference is that i only wanted to vizualise things and didn't want to actually get alerted nor get metrics from this tools. But it's pretty trivial so someone need it, just ask and i might add it.\n\nThe second difference is that we don't actually need to deploy anything in your infrastructure since Consul compute pretty much all the data for us.\n\n## Configuration\n\nAs said earlier, you don't need to deploy anything along side your infrastructure, but there are still some configuration :\n\n- `CONSUL_HTTP_ADDR`: The address of the consul endpoint (can be either a master or client)\n- `CONSUL_CACERT`: The **path** (on the FS) to the Consul CA cert\n- `CONSUL_CLIENT_CERT`: The **path** (on the FS) to the client cert\n- `CONSUL_CLIENT_KEY`: The **path** (on the FS) to the client private key\n\nOf course if you can access Consul in HTTP, you don't need to configure the certificate.\n\nNote: It's the same environment variables as the CLI so it avoid you re-configured them on your laptop if you already have the CLI :)\n\n## Notes\n\nI hacked this quickly during the holiday so it might not be the state of the art UX or code. Feel free to make a PR to implement the things that you want.\nI've built an image for deployment it into my production environment so if you want to re-use it: https://cloud.docker.com/repository/docker/vmarchaud/consul-topology\n\n## More screenshots\n- https://i.imgur.com/j6v0iep.png\n- https://i.imgur.com/pML1dIH.png\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvmarchaud%2Fconsul-topology-visualizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvmarchaud%2Fconsul-topology-visualizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvmarchaud%2Fconsul-topology-visualizer/lists"}