
本文字数:3385;估计阅读时间:9分钟
作者:Alex Fedotyev

编者按: 本文译自 ClickHouse 原博客。 原文围绕「提升 ClickHouse 在 Grafana 环境下的可观测性体验」展开。本次更新标志着插件从纯 SQL 驱动向低门槛交互的转型。通过预设场景优化,大幅降低了非技术人员进行数据探索的难度。
今年春天,我曾发文介绍过 ClickHouse Grafana 插件的发展蓝图。如今,其中的大部分规划已变为现实。通过与 Grafana Labs 的紧密合作,我们优化了日志检索、服务筛选及部署检测等高频场景,用户无需编写 SQL 即可快速操作,同时也支持一键切换至完整 SQL 模式以满足高级需求。
贡献者
感谢所有开源贡献者与用户,是你们的持续反馈让这款插件日臻完善。
aangelisc, adamyeats, akkikumar72, alyssajoyner, bossinc, fabrizio-grafana, fleon, hkrutzer, itsgareth, itsmylife, iwysiu, karl-power, katebrenner, lwandz13, MattiasMTS, mattvella07, Orenico10, SaiPrasanna9, stackempty, Tarasusrus
在优化体验时,我们聚焦于最典型的工作流:利用 OpenTelemetry Collector 的 ClickHouse exporter 将日志、链路追踪(及指标数据)汇聚至 ClickHouse,并最终在 Grafana 中完成排障。
查询构建器(Query Builder)自 v1 版本起便已内置,但早期的设计局限使得新手或追求效率的用户往往觉得手写 SQL 更快。此次更新大幅简化了日志查找、服务筛选及部署监控的操作流程,实现了免 SQL 的快捷体验,并保留了随时切换至 SQL 模式的灵活性。下文列出了相关功能的 Pull Request 链接,供感兴趣的读者查阅。
搜索优先,SQL 一键即达
如果表中仅包含日志,配置数据源理应更加简单。单表模式(#1832)正是为此而生:只需将数据源指向目标表并确认列信息,编辑器便会隐藏冗余配置,呈现更清爽、专注的界面。

单表配置模式
启用单表模式后,紧凑查询模式(#1841)将取代复杂的构建器。用户只需输入日志关键词,插件便会自动生成查询;配合类型感知过滤器、查询历史及实时 SQL 预览,你可以快速迭代查询逻辑。生成的 SQL 亦可随时复制或手动微调。
尽管紧凑编辑器目前仅支持单表,但这非常契合 Grafana 的典型用法------即为特定日志或追踪流创建专用数据源(如"Logs - Prod"或"Logs - Staging")。这种隔离方式能显著提升操作专注度。欢迎在 Explore 模式下为特定表创建数据源进行试用,并分享你的反馈。

Explore 中的紧凑查询模式,包含搜索框、类型感知过滤器、查询历史及实时 SQL 预览功能
注:根据早期反馈,用户希望紧凑模式能显示自定义字段或列(无论基于 OpenTelemetry 还是自定义 Schema)。PR #2108 已解决该需求,相关更新将在下一版本中发布。
点击替代输入,完成问题排查
故障排查通常是一个不断迭代的过程:搜索、查看结果、增删过滤条件。现在,优化后的插件支持全点击式操作,无需手动编辑 SQL 即可完成上述流程。
展开日志行后,OpenTelemetry 属性将按资源(Resource)、作用域(Scope)和日志(Log)区块分类显示,并支持折叠(#1829)。你可以直接点击属性值来包含或排除特定项;已生效的过滤器会高亮显示,再次点击即可移除(#1824)。此外,还支持通过选中日志文本中的子串进行快速过滤(#1738)。

根据高亮文本进行过滤
此外,仪表板中的即席过滤器(Ad hoc filters)现已支持识别 ClickHouse Map 列中的键值,并可跨多表应用(#1793, #1757)。无论是通过点击还是构建器添加条件,别名与 OpenTelemetry Map 键的解析逻辑均已统一。

开箱即用的仪表板 ------ 连接即可使用
OpenTelemetry 已成为日志与链路追踪的行业标准,而 ClickHouse 也针对此类大规模数据进行了专项优化。为了让数据价值即刻呈现,插件现内置了三款开箱即用的 OpenTelemetry 仪表板(#1869):日志浏览器、链路追踪浏览器,以及实现两者关联分析的单服务深度洞察面板。
这些面板集成了丰富的交互功能,包括过滤器、注释及服务日志抽样。同时,链路追踪与服务仪表板还提供了关键 KPI 指标及高频错误的概览。

搭建仪表板只需更少 SQL
构建功能完备的仪表板通常离不开变量和注释,但以往这些配置往往需要手写 SQL,增加了实现仪表板过滤或标记部署事件等常规任务的门槛。
全新的注释编辑器(#1922)引入了向导模式:只需选择监控列(如 service.version),插件便会自动生成用于检测变更的 SQL,从而在图表上直观标记部署或回滚事件。向导式变量编辑器(#1868)逻辑一致,选择列(或 Map 键)即可自动生成去重查询 SQL。在这两类编辑器中,自动生成的 SQL 保持透明且支持手动修改,并以用户修改为准。

注释编辑器的变更检测预设功能与向导式变量编辑器
动手实践
请确保 ClickHouse 数据源已升级至 4.20 或更高版本,随后将数据源连接至你的 OpenTelemetry 数据表即可开始体验。
此次改进延续了我们春季设定的原则:高频任务免 SQL 化,同时确保 SQL 随时可用。如果你是 Grafana 与 ClickHouse 的重度用户,欢迎向我们反馈使用中的痛点。目前紧凑查询模式仅支持单表,我们计划在积累更多实战经验后再行扩展。
附录:其他更新项
除了上述重大更新,许多细节改进也让插件变得更快速、稳定且易用。
-
更智能的构建器 :支持自动检测常规日志列( #1791 );工具提示直连相关文档( #1790 );构建器、变量及注释编辑器共用 Schema 选择器( #1828 )。为优化主键利用率,时间列已合并为单个 ORDER BY 条件( #1695 )。Explore 现可在指标图下方显示原始日志样本( #1744 ),属性列亦支持 JSON 和 Map 类型( #1866 )。
-
性能提升 :Schema 内省(Introspection)支持按数据源缓存( #1787 ),Trace-ID 快速查找不再强制依赖 OpenTelemetry 模式( #1786 )。
-
适配 Grafana 13 :完成兼容性调整,确保在 Grafana 13 及旧版本(11.6/12.x)中表现一致( #1861 , #1863 )。
-
可靠性增强 :Span 链接现可正确跳转至关联 Trace( #1890 ),SQL 验证引入了 ClickHouse 原生词法分析器的移植版( #1778 )。
-
自观测能力 :插件后端已接入 OpenTelemetry 插桩,并为 Span 提供了机器可读的契约( #1734 , #1735 )。
-
身份识别与归属 :启用 Header 转发后,查询可携带 Grafana 用户身份至 ClickHouse,便于行级权限控制、配额管理及查询审计( #1797 )。此外,还增加了对 Grafana SQL 抽象的基础支持( #1756 )。
关于我们
ClickHouse(clickhouse.com) 是面向 AI 时代打造的高性能实时分析数据库,能够以极致性能处理海量数据分析任务。凭借高并发、低延迟和云原生架构,ClickHouse 广泛应用于可观测性、数据仓库、实时分析及 AI 数据基础设施等场景。我们致力于帮助企业在公有云平台上构建安全、弹性且高性价比的实时分析与 AI 数据平台,加速释放数据价值,推动智能化创新与数字化转型。目前,Trip.com、DiDi、Meta、Sony、Netflix、Deutsche Bank、Sierra、Cloudflare 等全球领先企业均在使用 ClickHouse 支撑其关键业务和数据分析平台。