Grafana日志转换-Convert field type & Concatenate fields & Organize fields
Grafana日志转换-Convert field type & Concatenate fields & Organize fields
转换函数
根据自己的使用情况,记录使用到的转换函数,这次涉及到的转换函数如下
Convert field type
功能:转换字段的类型
Concatenate fields
功能:将所有字段合并为一个数据集合。如果长度不相同,值将附加未定义的值。
Organize fields
功能:允许用户重新排序、隐藏或重命名字段/列。当数据源不允许对可视化数据进行覆盖时非常有用。
例子
假设要显示sysbench日志中的查询总数和每秒查询数
步骤如下
-
先通过LogQL提取出关键数值
- 提取出查询总数
{filename="/var/log/job1.log", job="my-job"} |= `queries:` | pattern `<_> queries: <total> (<_>`
- 提取出每秒查询数
{filename="/var/log/job1.log", job="my-job"} |= `queries:` | pattern `<_> (<ps> <_>`
-
再通过LogQL格式化日志行为关键数值
- 格式化查询总数
{filename="/var/log/job1.log", job="my-job"} |= `queries:` | pattern `<_> queries: <total> (<_>` | line_format "{{ .total | trim }}"
- 格式化每秒查询数
{filename="/var/log/job1.log", job="my-job"} |= `queries:` | pattern `<_> (<ps> <_>` | line_format "{{ .ps | trim }}"
-
然后通过时序数据查看数据
- 转换数据为数值字段
点击 Transform
选择 Convert field type
- 然后选择
Line
转换成Number
时序数据展示就会展示显示了
-
使用Stat展示
-
合并为一个返回集
点击 Add transformation
选择 Concatenate fields
如果此时切换到table展示,则可以看到对应的字段和对应的值
-
修改属性的名字
即改变Line1和Line2为自定义的名称
点击 Add transformation
选择Organize fields
最终效果
完成了从loki源中提取日志,并从日志行提取自己需要的值,然后通过Stat进行展示,并给每个查询取了一个名字