v0.3.0
Brief:
Filter queries, search in query logs, utilization columns, performance
New features:
- Filter queries (by client_hostname/os_user/user/initial_user/client_name) (/)
- Search in query logs (/)
- View traces in speedscope (more enhanced UI)
- Support connections_credentials from clickhouse-client config.xml
- Separate column for uncompressed reads - IO
- Add CPU utilizations columns
- Handle CLICKHOUSE_USER/CLICKHOUSE_PASSWORD env variables
- Add support for EXPLAIN PLAN indexes=1
Performance improvements:
- Speedup queries for extracting logs/processors_profile_log/...
significantly (by adding proper filters for event_date/event_time) - Speedup queries for obtaining queries (slow and last) ~10x
- Fix performance of chdig in a slow networks by enabling compression ~10x
Fixes:
- Handle query errors gracefully
- Fix EXPLAIN for non qualified table names (i.e. when database was missing)
- Fix triggering actions from fuzzy search (C-p)
Commits
- c7967f8: Use gif in README (Azat Khuzhin)
- 7192dbe: Handle CLICKHOUSE_USER/CLICKHOUSE_PASSWORD env variables (Azat Khuzhin)
- e1ac3d1: Handle clickhouse client config.xml (Azat Khuzhin)
- 1bb23e4: Fix EXPLAIN for non qualified table names (i.e. when database was missing) (Azat Khuzhin)
- be175dc: Add support for EXPLAIN PLAN indexes=1 (Azat Khuzhin)
- 69e4b2a: Extract date/time from query for the query logs (Azat Khuzhin)
- aac8df4: Add missing sorting for logs (Azat Khuzhin)
- 92bafdc: Optimize logs obtaining (add a filter for event_time as well) (Azat Khuzhin)
- ce949f6: Get date for events for flamegraph from the query start time (Azat Khuzhin)
- aff7f5b: Supports opening flamegraphs via speedscope (Azat Khuzhin)
- d2ee36d: Fix running without connections_credentials in ~/.clickhouse-client/config.xml (Azat Khuzhin)
- 2ee43f0: Add ability to override host/user/... from the connection_credentials by --url (Azat Khuzhin)
- 54d5706: Better error message when connection to ClickHouse cannot be established (Azat Khuzhin)
- 4787125: Show the final disk/net/CPU utilization for slow/last queries (Azat Khuzhin)
- 72f4401: Add IO wait column (Azat Khuzhin)
- c8be747: Add CPU wait column (Azat Khuzhin)
- 13b2aa9: Add /vendor into .gitignore (Azat Khuzhin)
- a198cf6: Use my new azat-rust "namespace" (organization on github) (Azat Khuzhin)
- dc099ac: Fix time format in logger view (Azat Khuzhin)
- 4d40473: Fix log absense due to too small time frame (Azat Khuzhin)
- 379c282: Implement search in text logs (Azat Khuzhin)
- f072e19: Scroll to the searched term in the logs view (Azat Khuzhin)
- 3689cfe: Fix required_size() for LogView (take into account hostname length) (Azat Khuzhin)
- e6b545c: Search next occurrence with "n" shortcut in logs (Azat Khuzhin)
- f564cf4: Adjust some TODOs in the code (Azat Khuzhin)
- c2b2c99: Reset search phrase on empty search (Azat Khuzhin)
- 5f8c55a: Fix navigation in the logs after search (Azat Khuzhin)
- 25c4935: Merge branch 'logs-search' (Azat Khuzhin)
- b840119: Show really last queries (instead of last slowest) (Azat Khuzhin)
- 1e58c44: Detect storage_system_stack_trace_pipe_read_timeout_ms (compatibily for <23.5) (Azat Khuzhin)
- 462de98: Add a note about why forks of crates are in use (Azat Khuzhin)
- 32767b9: Use clickhouse-rs driver with query settings and remove ClickHouseCompatibility (Azat Khuzhin)
- bf2ce57: Add links to PRs (Azat Khuzhin)
- 8e44a73: Avoid crash in logs view on trying to search next result (Azat Khuzhin)
- 8ae90bb: Add reverse search in logs (Azat Khuzhin)
- ac53dc0: Cleanup LogView (move search next/prev into the LogViewBase) (Azat Khuzhin)
- d58ff79: Implement reverse search from the beginning (shortcut - ?) (Azat Khuzhin)
- f9e6b23: Fix off by one error in reverse search (Azat Khuzhin)
- c729d9d: Merge branch 'logs-reverse-search' (Azat Khuzhin)
- 0be340f: Add TODO for wrap mode in logs (Azat Khuzhin)
- 37518e9: Better error handling and less boilerplate. (Azat Khuzhin)
- d393ad1: Fix typo (Azat Khuzhin)
- b89b276: Use query start time for system.processors_profile_log/query_views_log (Azat Khuzhin)
- 5ab4a76: Add workaround for unsupported LowCardinality by the driver (Azat Khuzhin)
- fc1208e: Forbid LowCardinality in protocol via low_cardinality_allow_in_native_format=0 (Azat Khuzhin)
- dd8473d: Catch some query errors (by reworking error handling of queue messages) (Azat Khuzhin)
- a50008d: Better error handling of failed UI message passing (Azat Khuzhin)
- 449be23: Ignore non info logs from skim (too noisy) (Azat Khuzhin)
- a95963b: Fix triggering actions from fuzzy search (Azat Khuzhin)
- fec3cac: Remove some todos (Azat Khuzhin)
- f6e9798: Handle query highlight errors gracefully (Azat Khuzhin)
- baea692: Simplify add_view_action()/add_global_action() (Azat Khuzhin)
- 80ec082: Add ability to open live flamegraph in speedscope (Azat Khuzhin)
- abfddb1: Hide logs of hyper (too noisy) (Azat Khuzhin)
- 6721aa0: Add server flamegraph in speedscope (Azat Khuzhin)
- 2b69b41: Use upstream clickhouse-rs (all changes had been merged) (Azat Khuzhin)
- b562ed5: Speedup query for extracting slow queries (makes query 10x faster) (Azat Khuzhin)
- 7d15cfd: Optimize query to obtain slow queries 10x+ times (Azat Khuzhin)
- 42546fd: Fix performance of chdig in a slow networks by enabling compression (Azat Khuzhin)
- 30364e9: Update comment for adjusting query_timeout setting (Azat Khuzhin)
- 6524973: Add ability to return EventResult from the view actions (Azat Khuzhin)
- 073754f: Add ability to trigger update of the view explicitly (Azat Khuzhin)
- d0be155: Implement simple processes/queries filtering (by users and client info) (Azat Khuzhin)
- cd34460: Merge branch 'query-filtering' - simple process/queries filtering (user/client) (Azat Khuzhin)
- 27eff1e: Remove unnecessary cloning of view names (Azat Khuzhin)
- 7e046cb: Add separate column for IO (uncompressed bytes) (Azat Khuzhin)
- d82ac94: Add a note about why ReadBufferFromFileDescriptorReadBytes is used for disk_io (Azat Khuzhin)
- 9db314f: v0.3.0 release (Azat Khuzhin)
- 33416ba: Bump version to v0.3.0 (Azat Khuzhin)
- 98964c5: Update demo gif for v0.3.0 release (Azat Khuzhin)
- 2af3350: Run cargo update to fix clap (Azat Khuzhin)