Metadata-Version: 2.5
Name: clickhouse-tool
Version: 0.1.1
Summary: ClickHouse query and administration CLI tool for the OTel logs/metrics pilot
Author-email: Vlad Korolev <vlad@v-lad.org>
License-File: LICENSE
Requires-Python: >=3.11
Requires-Dist: boto3>=1.34.0
Requires-Dist: pydantic>=2.5.0
Requires-Dist: rich>=13.0.0
Requires-Dist: sentry-sdk>=1.40.0
Requires-Dist: structlog>=24.0
Requires-Dist: typer>=0.12.0
Provides-Extra: all
Requires-Dist: clickhouse-connect>=0.7.0; extra == 'all'
Requires-Dist: clickhouse-driver>=0.2.9; extra == 'all'
Provides-Extra: dev
Requires-Dist: mypy>=1.13; extra == 'dev'
Requires-Dist: pre-commit>=4.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.8; extra == 'dev'
Provides-Extra: http
Requires-Dist: clickhouse-connect>=0.7.0; extra == 'http'
Provides-Extra: native
Requires-Dist: clickhouse-driver>=0.2.9; extra == 'native'
Description-Content-Type: text/markdown

# clickhouse-tool

A command-line client for querying and inspecting ClickHouse, over both
the native protocol (port 9000) and HTTP (port 8123).

`clickhouse-tool` provides porcelain commands (`logs`, `hosts`, `services`)
for browsing OTel-shaped log data, plus low-level verbs (`query`, `list`,
`lift`, `config`) for direct inspection of any table. Output renders as a
table, JSON, NDJSON, or the compact TOON format, with pinned typed exit
codes for scripting.

## Install

```
pip install clickhouse-tool[native]   # native protocol (port 9000)
pip install clickhouse-tool[http]     # HTTP protocol (port 8123)
pip install clickhouse-tool[all]      # both
```

## Configuration

Copy `config.example.toml` to `./clickhouse-tool.toml` or
`~/.config/clickhouse-tool/config.toml` and fill in a profile for your
cluster. See that file for the full set of options.
