{"id":14529889,"url":"https://github.com/chhetripradeep/chtop","last_synced_at":"2025-08-16T18:33:19.363Z","repository":{"id":84916800,"uuid":"582706245","full_name":"chhetripradeep/chtop","owner":"chhetripradeep","description":"💻  ClickHouse Top","archived":false,"fork":false,"pushed_at":"2024-05-24T12:55:49.000Z","size":106,"stargazers_count":34,"open_issues_count":2,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-12T21:22:54.780Z","etag":null,"topics":["clickhouse","golang","monitoring","tui"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chhetripradeep.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":"2022-12-27T16:30:12.000Z","updated_at":"2024-10-26T16:32:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"0889df39-a09f-44fe-b31d-675850fd71b9","html_url":"https://github.com/chhetripradeep/chtop","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chhetripradeep%2Fchtop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chhetripradeep%2Fchtop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chhetripradeep%2Fchtop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chhetripradeep%2Fchtop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chhetripradeep","download_url":"https://codeload.github.com/chhetripradeep/chtop/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230050379,"owners_count":18165062,"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":["clickhouse","golang","monitoring","tui"],"created_at":"2024-09-05T00:01:03.273Z","updated_at":"2024-12-17T01:49:13.154Z","avatar_url":"https://github.com/chhetripradeep.png","language":"Go","readme":"# ClickHouse Top\n\nShow live statistics for monitoring your ClickHouse node.\n\n## Build\n\n```\n❯ make build\n```\n\n## Usage\n\nIt can populate graphs either by pulling metrics from the prometheus exporter \nendpoint of ClickHouse or by running sql queries on ClickHouse native protocol endpoint.\n\nTo enable prometheus exporter endpoint for ClickHouse, you will need to add following\nClickHouse server configuration:\n\n```\n\u003cclickhouse\u003e\n    \u003cprometheus\u003e\n        \u003cendpoint\u003e/metrics\u003c/endpoint\u003e\n        \u003cport\u003e9363\u003c/port\u003e\n        \u003cmetrics\u003etrue\u003c/metrics\u003e\n        \u003cevents\u003etrue\u003c/events\u003e\n        \u003casynchronous_metrics\u003etrue\u003c/asynchronous_metrics\u003e\n        \u003cstatus_info\u003etrue\u003c/status_info\u003e\n    \u003c/prometheus\u003e\n\u003c/clickhouse\u003e\n```\n\n```\n❯ chtop --help\nMonitor your ClickHouse clusters without ever leaving your terminal\n\nUsage:\n  chtop [flags]\n\nFlags:\n  -c, --config string             path of the config file (default: $HOME/.chtop.yaml)\n  -h, --help                      help for chtop\n  -m, --metrics-url string        clickhouse url for pulling metrics in prometheus exposition format\n  -d, --queries-database string   clickhouse database for connecting from clickhouse client (default \"system\")\n  -p, --queries-password string   clickhouse password of the provided clickhouse user for running clickhouse queries\n  -q, --queries-url string        clickhouse endpoint for running clickhouse queries via native protocol\n  -u, --queries-username string   clickhouse username for running clickhouse queries (default \"default\")\n```\n\nRun chtop pointing to prometheus stats endpoint \u0026 http endpoint of ClickHouse.\n\nSample Run:\n```\n❯ chtop --metrics-url http://localhost:9363/metrics --queries-url localhost:9000 --config chtop.yaml\n```\n\n## Themes\n\nYou can configure the theme (default path: $HOME/.chtop.yaml) \n\n```\ntheme:\n  graph:\n    color: red\n    height: 10\n    precision: 1\n```\n## Metrics\n\nYou can configure the metrics to plot (default path: $HOME/.chtop.yaml)\n\n```\nclickhousemetrics:\n  metrics:\n    - alias: Total Queries\n      name: ClickHouseProfileEvents_Query\n    - alias: Total Select Queries\n      name: ClickHouseProfileEvents_SelectQuery\n    - alias: Total Insert Queries\n      name: ClickHouseProfileEvents_InsertQuery\n    - alias: Number of Active Parts\n      name: ClickHouseMetrics_PartsActive\n    - alias: Number of TCP Connections\n      name: ClickHouseMetrics_TCPConnection\n    - alias: Number of Open File Descriptors\n      name: ClickHouseProfileEvents_FileOpen\n```\n\nYou can configure to run sql queries to populate metrics to plot (default path: $HOME/.chtop.yaml)\n```\nclickhousequeries:\n  queries:\n    - name: Number of Running Queries\n      sql: \"select count(*) from system.processes\"\n    - name: Number of Databases\n      sql: \"select count(*) from system.databases\"\n    - name: Number of Tables\n      sql: \"select count(*) from system.tables\"\n    - name: Number of Parts\n      sql: \"select count(*) from system.parts\"\n```\n\n## Sample Output\n\n\u003cimg width=\"1529\" alt=\"demo\" src=\"https://user-images.githubusercontent.com/30620077/214207781-577d75a0-e593-4b01-80cb-8228c2ee4c40.png\"\u003e\n\n## Thank you\n\nThis tool is built using [BubbleTea](https://github.com/charmbracelet/bubbletea), a very neat TUI Framework.\n\n## Todos\n\n- Introduce more panel types.\n- Allow to monitor CH clusters.\n","funding_links":[],"categories":["Applications"],"sub_categories":["Database Tools"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchhetripradeep%2Fchtop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchhetripradeep%2Fchtop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchhetripradeep%2Fchtop/lists"}