插件 〉ClickHouse
ClickHouse
Grafana 官方 ClickHouse 数据源
ClickHouse 数据源插件允许您在 Grafana 中查询和可视化 ClickHouse 数据。
版本兼容性
使用 Grafana v9.x
及更高版本的用户可以使用 v4
。建议使用 Grafana v8.x
的用户继续使用插件的 v2.2.0
。
* *自 2.0 版本起,此插件仅在使用 ClickHouse 22.7+ 时支持临时过滤器*
安装
有关如何在 Grafana Cloud 或本地安装插件的详细说明,请查看插件安装文档。
配置
数据源使用的 ClickHouse 用户
设置一个具有只读权限以及访问您想要查询的数据库和表的 ClickHouse 用户账户。请注意,Grafana 不会验证查询是否安全。查询可以包含任何 SQL 语句。例如,ALTER TABLE system.users DELETE WHERE name='sadUser'
和 DROP TABLE sadTable;
等语句将会被执行。
要配置只读用户,请按照以下步骤操作
- 根据在 ClickHouse 中创建用户和角色指南创建
readonly
用户配置文件。 - 确保
readonly
用户有足够的权限修改底层clickhouse-go 客户端所需的max_execution_time
设置。 - 如果您使用公共 ClickHouse 实例,不建议在
readonly
配置文件中设置readonly=2
。建议保持readonly=1
,并将max_execution_time
的约束类型设置为changeable_in_readonly,以允许修改此设置。
ClickHouse 协议支持
该插件支持 Native
(默认)和 HTTP
传输协议。可以在配置中通过 protocol
配置参数启用此功能。这两种协议都使用优化的原生格式与 ClickHouse 交换数据。
请注意,HTTP/S
和 Native
的默认端口不同
- HTTP - 8123
- HTTPS - 8443
- Native - 9000
- Native with TLS - 9440
通过 UI 手动配置
在您的 Grafana 实例上安装插件后,按照这些说明添加新的 ClickHouse 数据源,并输入配置选项。
使用配置文件
可以使用 Grafana 的 Provisioning 系统通过配置文件配置数据源。要了解其工作原理,请参阅Provisioning Grafana 数据源。
以下是使用基本身份验证配置此数据源的一些 Provisioning 示例
apiVersion: 1
datasources:
- name: ClickHouse
type: grafana-clickhouse-datasource
jsonData:
defaultDatabase: database
port: 9000
host: localhost
username: username
tlsSkipVerify: false
# tlsAuth: <bool>
# tlsAuthWithCACert: <bool>
# secure: <bool>
# dialTimeout: <seconds>
# queryTimeout: <seconds>
# protocol: <native|http>
# defaultTable: <string>
# httpHeaders:
# - name: X-Example-Header
# secure: false
# value: <string>
# - name: Authorization
# secure: true
# logs:
# defaultDatabase: <string>
# defaultTable: <string>
# otelEnabled: <bool>
# otelVersion: <string>
# timeColumn: <string>
# ...Column: <string>
# traces:
# defaultDatabase: <string>
# defaultTable: <string>
# otelEnabled: <bool>
# otelVersion: <string>
# durationUnit: <seconds|milliseconds|microseconds|nanoseconds>
# traceIdColumn: <string>
# ...Column: <string>
secureJsonData:
password: password
# tlsCACert: <string>
# tlsClientCert: <string>
# tlsClientKey: <string>
# secureHttpHeaders.Authorization: <string>
构建查询
可以使用原始 SQL 编辑器或查询构建器构建查询。查询可以包含宏,这些宏简化了语法并允许动态生成 SQL。
时间序列
添加一个 datetime
字段类型到您的查询后,可以选择时间序列可视化选项。此字段将用作时间戳。您可以使用可视化选项选择时间序列可视化。Grafana 将没有明确时区的时间戳行解释为 UTC。除了 time
之外的任何列都将被视为值列。
多线时间序列
要创建多线时间序列,查询必须按以下顺序返回至少 3 个字段
- 字段 1:
datetime
字段,别名为time
- 字段 2:用于分组的值
- 字段 3+:指标值
例如
SELECT log_time AS time, machine_group, avg(disk_free) AS avg_disk_free
FROM mgbench.logs1
GROUP BY machine_group, log_time
ORDER BY log_time
表格
表格可视化始终可用于任何有效的 ClickHouse 查询。
使用日志面板可视化日志
要使用日志面板,您的查询必须返回时间戳和字符串值。要在 Explore 模式下默认使用日志可视化,请将时间戳别名设置为 *log_time*。
例如
SELECT log_time AS log_time, machine_group, toString(avg(disk_free)) AS avg_disk_free
FROM logs1
GROUP BY machine_group, log_time
ORDER BY log_time
在没有 log_time
列的情况下,要强制以日志形式渲染,请将 Format 设置为 Logs
(2.2.0 起可用)。
使用追踪面板可视化追踪数据
确保您的数据满足追踪面板的要求。这在使用可视化或 Explore 视图时均适用。
构建查询时将 Format 设置为 Trace
(2.2.0 起可用)。
如果使用Open Telemetry Collector 和 ClickHouse 导出器,以下查询会生成所需的列名(这些列名区分大小写)
SELECT
TraceId AS traceID,
SpanId AS spanID,
SpanName AS operationName,
ParentSpanId AS parentSpanID,
ServiceName AS serviceName,
Duration / 1000000 AS duration,
Timestamp AS startTime,
arrayMap(key -> map('key', key, 'value', SpanAttributes[key]), mapKeys(SpanAttributes)) AS tags,
arrayMap(key -> map('key', key, 'value', ResourceAttributes[key]), mapKeys(ResourceAttributes)) AS serviceTags,
if(StatusCode IN ('Error', 'STATUS_CODE_ERROR'), 2, 0) AS statusCode
FROM otel.otel_traces
WHERE TraceId = '61d489320c01243966700e172ab37081'
ORDER BY startTime ASC
宏
为了简化语法并允许动态部分(例如日期范围过滤器),查询可以包含宏。
以下是一个包含宏的查询示例,该宏将使用 Grafana 的时间过滤器
SELECT date_time, data_stuff
FROM test_data
WHERE $__timeFilter(date_time)
宏 | 描述 | 输出示例 |
---|---|---|
$__dateFilter(columnName) | 由一个条件替换,该条件根据面板的日期范围过滤数据(使用提供的列) | date >= toDate('2022-10-21') AND date <= toDate('2022-10-23') |
$__timeFilter(columnName) | 由一个条件替换,该条件根据面板的时间范围(秒)过滤数据(使用提供的列) | time >= toDateTime(1415792726) AND time <= toDateTime(1447328726) |
$__timeFilter_ms(columnName) | 由一个条件替换,该条件根据面板的时间范围(毫秒)过滤数据(使用提供的列) | time >= fromUnixTimestamp64Milli(1415792726123) AND time <= fromUnixTimestamp64Milli(1447328726456) |
$__dateTimeFilter(dateColumn, timeColumn) | 结合 $__dateFilter() 和 $__timeFilter() 的简写,使用单独的 Date 和 DateTime 列。 | $__dateFilter(dateColumn) AND $__timeFilter(timeColumn) |
$__fromTime | 由面板时间范围的起始时间替换,转换为 DateTime | toDateTime(1415792726) |
$__toTime | 由面板时间范围的结束时间替换,转换为 DateTime | toDateTime(1447328726) |
$__fromTime_ms | 由面板时间范围的起始时间替换,转换为 DateTime64(3) | fromUnixTimestamp64Milli(1415792726123) |
$__toTime_ms | 由面板时间范围的结束时间替换,转换为 DateTime64(3) | fromUnixTimestamp64Milli(1447328726456) |
$__interval_s | 由以秒为单位的时间间隔替换 | 20 |
$__timeInterval(columnName) | 由一个函数替换,该函数根据窗口大小(秒)计算时间间隔,在分组时很有用 | toStartOfInterval(toDateTime(column), INTERVAL 20 second) |
$__timeInterval_ms(columnName) | 由一个函数替换,该函数根据窗口大小(毫秒)计算时间间隔,在分组时很有用 | toStartOfInterval(toDateTime64(column, 3), INTERVAL 20 millisecond) |
$__conditionalAll(condition, $templateVar) | 当第二个参数中的模板变量未选择所有值时,由第一个参数替换。当模板变量选择所有值时,由 1=1 替换。 | condition 或 1=1 |
该插件还支持使用花括号 {} 的表示法。在参数内部需要查询时使用此表示法。
模板和变量
要添加新的 ClickHouse 查询变量,请参阅添加查询变量。
创建变量后,您可以通过使用变量语法在 ClickHouse 查询中使用它。有关变量的更多信息,请参阅模板和变量。
导入 ClickHouse 仪表盘
按照这些说明导入仪表盘。
您还可以通过导航到数据源配置页面,选择 ClickHouse 数据源并点击 Dashboards 选项卡来查找可用的预制仪表盘。
我们随插件分发以下仪表盘。这些旨在协助对 ClickHouse 集群进行支持分析,并且不依赖于外部数据集。查询用户需要访问 system
数据库。
- 集群分析 - 配置的集群、合并、突变和数据复制概览。
- 数据分析 - 当前数据库和表的概览,包括它们各自的大小、分区和部分。
- 查询分析 - 按类型、性能和资源消耗进行的查询分析。
临时过滤器
临时过滤器仅支持 ClickHouse 22.7+ 版本。
临时过滤器允许您添加键/值过滤器,这些过滤器会自动添加到使用指定数据源的所有指标查询中,而无需在查询中明确使用。
默认情况下,临时过滤器将填充所有表和列。如果在数据源设置中定义了默认数据库,将使用该数据库的所有表来填充过滤器。由于这可能很慢/昂贵,您可以引入第二个变量来限制临时过滤器。它应该是一个 constant
类型的变量,命名为 clickhouse_adhoc_query
,并且可以包含:数据库的逗号分隔列表、单个数据库,或数据库.表组合,以仅显示单个表的列。
有关临时过滤器的更多信息,请查看Grafana 文档
使用查询进行临时过滤
第二个 clickhouse_adhoc_query
也允许任何有效的 ClickHouse 查询。查询结果将用于填充您的临时过滤器的可选过滤器。您可以选择将其从视图中隐藏,因为它没有其他作用。
例如,如果 clickhouse_adhoc_query
设置为 SELECT DISTINCT machine_name FROM mgbench.logs1
,您将能够选择在仪表盘中过滤哪些机器名称。
了解更多
在 Grafana Cloud 上安装 ClickHouse
在 Grafana Cloud 实例上安装插件是一键安装的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能在您的 Grafana 中显示。
在 Grafana Cloud 实例上安装插件是一键安装的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能在您的 Grafana 中显示。
在 Grafana Cloud 实例上安装插件是一键安装的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能在您的 Grafana 中显示。
在 Grafana Cloud 实例上安装插件是一键安装的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能在您的 Grafana 中显示。
在 Grafana Cloud 实例上安装插件是一键安装的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能在您的 Grafana 中显示。
在 Grafana Cloud 实例上安装插件是一键安装的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能在您的 Grafana 中显示。
在 Grafana Cloud 实例上安装插件是一键安装的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能在您的 Grafana 中显示。
更多信息,请访问插件安装文档。
在本地 Grafana 上安装
对于本地实例,插件通过简单的 CLI 命令安装和更新。插件不会自动更新,但当有可用更新时,您会在您的 Grafana 内收到通知。
1. 安装数据源
使用 grafana-cli 工具从命令行安装 ClickHouse
grafana-cli plugins install
插件将安装到您的 Grafana 插件目录;默认目录是 /var/lib/grafana/plugins。关于 CLI 工具的更多信息。
2. 配置数据源
从 Grafana 主菜单访问,新安装的数据源可以直接在 Data Sources 部分添加。
接下来,点击右上角的 Add data source 按钮。数据源将在 **类型** 选择框中可用。
要查看已安装的数据源列表,请点击主菜单中的 **插件** 项目。核心数据源和已安装的数据源都会显示。
更新日志
4.8.2
修复
- 依赖项更新
4.8.1
修复
- 依赖项更新
4.8.0
功能
- 启用 CtrlCmd + Enter 键盘快捷键运行查询 (#1158)
修复
- 重构
MutateResponse
函数和 PDC 拨号器创建 (#1155) - 重构
clickhouse.Connect
以改进上下文取消处理 (#1154) - 防止使用失败的连接并改进连接管理 (#1156)。请注意,此更改后将设置以下限制。虽然我们认为这些限制是合理的,但如果需要,您可以在数据源设置中调整它们
MaxOpenConns
设置为 50。MaxIdleConns
设置为 25。ConnMaxLifetime
设置为 5 分钟。
- 依赖项更新
4.7.0
功能
- 在查询构建器中为 JSON 列子路径添加到列选择
- 在追踪详细视图中添加事件支持。(https://github.com/grafana/clickhouse-datasource/pull/1128)
4.6.0
功能
- 添加对新的 Variant、Dynamic 和 JSON 类型的支持 (https://github.com/grafana/clickhouse-datasource/pull/1108)
修复
- 使用 ClickHouse
multiSearchAny
优化了日志卷处理的性能。
4.5.1
修复
- 依赖项更新
4.5.0
功能
- 实现了日志查询的日志上下文
- 添加了日志上下文列的配置选项
- 从 SQL 编辑器解析的查询现在将尝试将列重新映射到其在日志和追踪查询中的正确字段。
- 在临时过滤器中添加了对 IN 运算符的支持
修复
- 修复并增强了将查询解析回查询构建器的逻辑。
4.4.0
功能
- 在日志查询构建器中添加了“Labels”列选择器
- 数据源 OTel 配置现在将为日志和追踪设置默认表名。
修复
- 添加了关于
uid
在 Provisioned 数据源中缺失的警告。 - 查询构建器中的 Map 过滤器现在正确显示键而不是列名
- 更新并修复了缺失的
system.dashboards
仪表盘列表中的仪表盘 - 更新了示例追踪仪表盘中的持续时间值以提供有用的信息
- 修复了在追踪查询中显示 Span 状态码的问题 (#950)
4.3.2
修复
- 优化了依赖于 JSON 转换器的类型的性能
- 依赖项更新
4.3.1
功能
- 从
system.dashboards
表添加了预设仪表盘
修复
- 修复了追踪 ID 模式下的追踪开始时间 (#900)
- 修复了 OTel 仪表盘导入失败的问题 (#908)
4.3.0
功能
- 添加了 OpenTelemetry 仪表盘 (#884)
修复
- 修复了对 LowCardinality 字符串的支持 (#857)
- 更新了追踪查询以更好地处理时间字段 (#890)
- 依赖项版本提升
4.2.0
功能
- 添加了
$__dateTimeFilter()
宏,用于方便地过滤由 Date 和 DateTime 列组成的主键。
4.1.0
功能
- 添加了在配置中定义列别名表的功能,这简化了已知模式表的查询语法。
4.0.8
修复
- 修复了
IN
运算符转义整个字符串(特别是在使用Nullable(String)
时),还添加了FixedString(N)
(#830) - 修复了告警规则页面上的查询构建器过滤器编辑器 (#828)
4.0.7
- 升级依赖项
4.0.6
修复
- 添加了从上下文而不是环境变量配置代理选项的支持(通过更新
sqlds
) (#799)
4.0.5
修复
- 修复了
Nullable(IP)
和Nullable(String)
的转换器正则表达式。它不再匹配Array(Nullable(IP))
或Array(Nullable(String))
。 (#783) - 更新了
grafana-plugin-sdk-go
以修复 PDC 问题。更多细节请参阅此处 (#790)
4.0.4
修复
- 将追踪时间戳表从常量
otel_traces_trace_id_ts
更改为应用于当前表名的后缀_trace_id_ts
。
4.0.3
功能
- 添加了
$__fromTime_ms
宏,它使用DateTime64(3)
表示仪表盘的“起始”时间(毫秒) - 添加了
$__toTime_ms
宏,它使用DateTime64(3)
表示仪表盘的“结束”时间(毫秒) - 添加了
$__timeFilter_ms
宏,它使用DateTime64(3)
进行毫秒精度的时间过滤 - 在仪表盘视图中重新添加了查询类型选择器。这仅在 Explore 视图中可见,但不知何故它影响了仪表盘视图,因此已重新添加。 (#730)
- 启用 OTel 时,追踪 ID 查询现在使用跳跃索引来优化大型追踪数据集上的精确 ID 查找 (#724)
修复
- 修复了由
$__timeFilter
使用DateTime64(3)
而非DateTime
引起 的性能问题 (#699) - 修复了追踪查询将小于 1ms 的 Span 持续时间四舍五入为
0
的问题 (#720) - 修复了在 SQL 中包含 Grafana 宏/变量时出现的 AST 错误 (#714)
- 修复了从 SQL 编辑器切换回查询编辑器时构建器选项为空的问题
- 修复了当未定义数据库时,SQL 生成器在
FROM
中包含“undefined”的问题 - 允许在多重过滤器(例如
WHERE .. IN
)中添加空格 - 修复了向追踪 ID 查询添加过滤器时缺失的
AND
关键字的问题
4.0.2
修复
- 修复了打开现有 v3 配置时迁移脚本不运行的问题
4.0.1
修复
- 将
protocol
设置为native
在配置视图中默认开启。修复了“默认端口”描述。
4.0.0
功能
4.0.0 版本对查询构建器和数据源配置设置进行了重大修订。
查询构建器
- 完全重新构建了查询构建器,为表格、日志、时间序列和追踪提供了专门的编辑器。
- 完全重新构建了 SQL 生成器,以支持更复杂和动态的查询。
- 更新了查询构建器选项结构,使其更清晰并支持更复杂的查询。
- 更新了数据库/表选择器,使其位于更方便的位置。初次加载时会自动选择数据库和表选项。
- 升级了查询构建器状态管理,以便在保存/编辑/共享查询时保持查询一致。
- 分离了表格和时间序列查询构建器。表格视图作为不适合其他查询类型的查询的包罗万象的视图。
- 为了简单起见,将“格式”合并到查询类型切换器中。现在在 Explore 页面上,查询选项卡会更改构建器视图和显示格式。这包括原始 SQL 编辑器。
- 为日志和追踪视图添加了 OTel 开关。这将使使用 OTel 导出器 for ClickHouse 的用户更快地构建查询。
- 更新了时间序列查询构建器,增加了专用时间列。加载时会添加默认过滤器。
- 添加了一个
IS ANYTHING
过滤器,它作为占位符,方便以后编辑(对于 Explore 页面上的查询模板/书签很有用)。 - 改进了在 Filter 编辑器上对 Map 类型的支持。
- 现在可以将 LIMIT 编辑器设置为 0,以便从查询中排除。
- 表格和时间序列视图现在具有简单/聚合模式,具体取决于查询复杂性。
- 更新了日志直方图查询,使用新的查询构建器选项和列提示。
- 添加了日志查询构建器,增加了专用时间、级别和消息列。包括 OTel 开关,用于自动加载 OTel 模式列。加载时会添加默认过滤器。
- 添加了追踪查询构建器,增加了专用追踪列。包括 OTel 开关,用于自动加载 OTel 模式列。加载时会添加默认过滤器。
- 更新了数据面板过滤功能,可附加带有列提示的过滤器。按特定级别过滤时在日志视图中可见。它将使用其提示而非按名称引用列。
- Order By 现在按其全名 + 别名列出聚合。
- Order By 列允许输入自定义值。
- 聚合列名允许输入自定义值。
- 过滤器编辑器允许输入自定义列名。
- 增加了过滤器值文本输入的宽度。
- 类型为
Map*
的列现在末尾显示一个[]
,表示它们是复杂类型。例如,SpanAttributes[]
。 - 过滤器编辑器现在有一个专用的 Map 键字段。您现在可以单独选择 Map 列及其键。例如,
SpanAttributes['key']
。 - 编辑 Map 的
key
时,Map 类型现在会加载选项样本。这不包括所有唯一值,但对于大多数数据集来说,这应该很方便。 - 添加了列提示,这在使用列和过滤器时提供了更好的查询组件之间的链接。例如,可以为
时间
列添加过滤器,即使尚不知道时间列的名称是什么。这使得 SQL 生成器更好地“知道”列的预期用途。
插件后端
- 添加了将
v3
配置迁移到v4+
的迁移逻辑。在构建数据库连接时加载配置时应用此逻辑。 $__timeFilter
、$__fromTime
和$__toTime
宏现在转换为DateTime64(3)
,以获得更好的服务器端类型转换。还启用了毫秒精度的时间范围过滤。
数据源配置
- 添加了将
v3.x
配置迁移到v4+
的迁移脚本。这会在打开/保存数据源配置时自动运行。 - 将配置值
server
重命名为host
。 - 将配置值
timeout
重命名为更具体的dial_timeout
。 - 更新了端口选择的标签。默认端口现在将根据 native/http 和 secure/unsecure 设置而改变。
- 重新排列了字段和部分,以便更好地进行新数据源的初始设置。
- 将插件版本添加到配置数据中,以便将来更轻松地进行配置版本迁移。
- 添加了用于设置数据库/表默认值的字段。
- 添加了用于设置默认日志数据库/表/列的部分。包括 OTel。在使用日志查询构建器时使用这些设置。
- 添加了用于设置默认追踪数据库/表/列的部分。包括 OTel。在使用追踪查询构建器时使用这些设置。
- 添加了用于日志/追踪的 OTel 开关,以便更快地构建查询。OTel 默认为最新版本,如果保持此设置将自动更新。
- 增加了通常较长值(服务器 URL、路径等)的输入宽度。
- 允许添加自定义 HTTP 头部,可以使用纯文本或安全凭据。 #633
- 添加
path
设置,用于在使用 HTTP 协议时指定额外的 URL 路径。#512
修复
升级
- 将所有依赖项更新到最新的兼容版本(包括 Dependabot PR)
3.3.0
功能
- 支持 Point 地理数据类型。
修复
- 修复 timeInterval_ms 宏。
- 修复了数据分析仪表盘中的 Table summary 和 Parts over time 面板。
升级
3.2.0
功能
- 添加
timeInterval_ms
宏,允许在 DateTime64 列上进行更高精度的查询。#462。
修复
- 确保数据库、表和列正确转义。#460。
- 修复 conditionAll 处理。#459。
- 修复了对临时正则表达式过滤器的支持:
=~
、!~
#414。 - 不创建格式错误的临时过滤器#451。无效值将被忽略。
- 通过正确恢复到表格来修复自动格式化问题。#469。
- 修复了
yaml
文件中的数字配置值解析问题。#456。
3.1.0
- v3.0.4-beta 的稳定版本
3.0.4-beta
- 将 Grafana 依赖项更新到 >=v9.0.0
- **功能** - 添加对安全 socks 代理的支持
3.0.3-beta
- 将 ClickHouse 驱动程序更新到 v2.9.2
3.0.2-beta
- 自定义 ClickHouse 设置可以在数据源设置中设置。允许在数据源中传递自定义 ClickHouse 设置
- 直方图 UI 修复 直方图 UI 修复
- 支持过滤/排除日志视图操作
- 修复默认情况下未定义数据库名的问题
- 在更改表/数据库时正确重置级别和时间字段
- 可以清除级别字段(这样直方图将无需按级别分组即可渲染)
- 修复在 UI 中卡住的过滤器值
- 追踪仪表盘已添加到默认仪表盘。追踪仪表盘
3.0.1-beta
- 建议使用 Grafana v8.x 的用户继续使用插件的 v2.2.0。
- Grafana v9.x 的用户可以使用 v3,但它处于测试阶段,可能包含 bug。
3.0.0
- **功能** - 日志量直方图支持
- **杂项** - 将 clickhouse-go 更新到 v2.8.1
2.2.1
- **杂项** - 后端二进制文件使用最新的 go 1.20.4 版本编译
- 自定义 ClickHouse 设置可以在数据源设置中设置。允许在数据源中传递自定义 ClickHouse 设置
- 支持标准的 Golang HTTP 代理环境变量(
HTTP_PROXY
/HTTPS_PROXY
/NO_PROXY
)。请参阅FromEnvironment了解更多信息。如果 Grafana 实例使用其中一个环境变量启动,驱动程序现在将自动加载它们。
2.2.0
- **功能** - 支持格式下拉菜单并支持渲染追踪数据
2.1.1
- **修复** - 使用用户时区进行 Date 和 Date32 类型规范化
2.1.0
- **修复** - 通过 @slvrtrn 在 https://github.com/grafana/clickhouse-datasource/pull/298 中引用带点的表名
- 如果至少有一个 DateTime* 列,由 @slvrtrn 在 https://github.com/grafana/clickhouse-datasource/pull/304 中添加一个预定义的时间范围过滤器
2.0.7
- **修复** - 与 conditionalAll 宏一起使用的空模板变量与选择 All 的效果相同。允许 $__conditionalAll 的空输入
- **修复** - 间隔限制为 1 秒。将 $__interval_s 限制为至少 1 秒
- **杂项** - 将 ClickHouse go API 版本提升至 v2.5.1 将 github.com/ClickHouse/clickhouse-go/v2 从 2.4.3 版本提升至 2.5.1 版本
2.0.6
- **杂项** - 后端二进制文件使用最新的 go 1.19.4 版本编译
- **杂项** - 后端 Grafana 依赖项已更新至最新版本
- **杂项** - ClickHouse-go 客户端更新至v2.4.3
2.0.5
- **杂项** - 将 sqlds 更新至 2.3.17 版本,该版本修复了复杂的宏查询
- **杂项** - 后端 Grafana 依赖项已更新
- **修复** - 允许在设置中保存时使用默认协议开关值
2.0.4
- **修复** - 查询构建器:允许为具有
Map
类型的字段使用自定义过滤器值
2.0.3
- **杂项** - 后端二进制文件使用最新的 go 1.19.3 版本编译
- **杂项** - 后端 Grafana 依赖项已更新
2.0.2
- **功能** - 将 sqlds 更新至 2.3.13 版本,该版本修复了一些宏查询
2.0.1
- **Bug** - 现在支持 Safari。Safari 不支持正则表达式先行断言
2.0.0
- **功能** - 升级驱动程序以支持 HTTP
- **功能** - 临时过滤器的工作方式发生变化,支持 CH 22.7 中提供的设置选项
- **功能** - 现在通过条件 all 函数处理条件 all。该函数检查第二个参数是否为设置为 all 的模板变量,如果是,则将函数替换为 1=1,如果不是,则将函数设置为第一个参数。
- **Bug** - 可视化查询构建器可以对时间字段使用任何日期类型
- **修复** - 'any' 现在是可视化查询构建器中的聚合类型
- **修复** - 时间过滤器宏可以在临时查询中使用
- **Bug** - 时间间隔宏不能有 0 的间隔
- **修复** - 将驱动程序更新到 v2.1.0
- **Bug** - 展开查询按钮支持 Grafana 8.0+
- **修复** - 添加了临时列宏
1.1.2
- **Bug** - 向 metricFindQuery 添加时间范围
1.1.1
- **Bug** - 添加超时
1.1.0
- **功能** - 添加在 Explore 中显示日志面板的约定
1.0.0
- 正式发布
0.12.7
- **修复** - 验证 SQL 时忽略模板变量
0.12.6
- **修复** - 时间序列构建器 - 分组/排序时使用时间别名
0.12.5
- **杂项** - 仪表盘
0.12.4
- **修复** - 时间序列 where 子句。将默认数据库设为可视化编辑器中的默认设置
0.12.3
- **修复** - 移除条件 all 时,检查作用域变量(支持重复面板)
0.12.2
- **修复** - 移除条件 all 时,仅移除包含变量的行
0.12.1
- **修复** - 正确处理大十进制数
0.12.0
- **功能** - 时间序列构建器:在时间字段上使用 $__timeInterval 宏,以便可以从查询选项调整桶。
0.11.0
- **功能** - 时间序列:隐藏字段,在 select 中使用 group by,在 group by 中使用时间字段
0.10.0
- **功能** - 临时来源为数据库或表
0.9.13
- **修复** - 更新 sdk 以显示流错误
0.9.12
- **修复** - ast 更改后的格式检查
0.9.11
- **功能** - $__timeInterval(column) 和 $__interval_s 宏
0.9.10
- **修复** - 使用新的 Run Query 按钮时设置格式。
0.9.9
- **功能** - 查询构建器。
0.9.8
- **修复** - 检测多线时间序列。处理包含函数的情况。
0.9.7
- **功能** - 多线时间序列。
0.9.6
- Bug - 更改时间模板变量名称。
0.9.5
- Bug - 修复全局模板变量。
0.9.4
- Bug - 修复查询类型变量。
0.9.3
- Bug - 支持数组数据类型。
0.9.2
- Bug - 修复 TLS 模型。
0.9.1
- 功能 - 在配置编辑器中添加安全开关。
0.9.0
- 首次 Beta 版本发布。