如何使用查看器筛选、搜索功能进行数据定位?

前言

我们曾探讨过观测云如何通过将内置视图与查看器相联结,实现更全面的数据关联分析。(参见《内置视图联动查看器,实现数据关联分析》)这里提到的查看器,实际是一个功能全面且强大的数据查看分析工具。其提供多种搜索和筛选方式,并支持以组合的方式搭配使用获取最终数据结果。

本文我们将从实际场景出发,为您讲述如何通过查看器的搜索与筛选功能,帮助您快速、精准地检索数据,定位故障问题。

观测云的查看器可以在基础设施、事件、日志、应用性能监测、用户访问监测、CI 可视化、可用性监测、安全巡检等功能模块内使用。此处,我们以【日志查看器】为场景:

搜索

当我们面对系统采集上来的杂乱的海量数据,在页面上方的搜索栏直接进行搜索是定位到目标数据最快捷迅速的方式之一。在观测云,【搜索】一般由术语(可以是单词或短语)和运算符两部分组成。当我们输入单词或者短语时,叠加通配运算符(? 表示匹配任意字符, * 匹配 0 或多个字符),回车即可实现搜索的动作。

具体的示例说明如下:

# 单词
guance  // 精准搜索
guanc[e   // 存在特殊字符写法示例(无需添加\转义)  # 单词通配符搜索(出于性能考虑,观测云暂不支持前缀 * 写法,若存在通配搜索以下写法均支持)
guance*
gua?ce*  
gua*ce# 短语(双引号括起来的内容我们统称为短语,此写法下双引号的内容会作为一个整体发起匹配搜索)
"guance test"  // 查询全文索引字段中,存在 "guance test" 内容的匹配结果
"guance 127.0.0.1" // 存在特殊字符时写法示例

实际效果如下:

除了我们以上谈到的搜索方式,观测云还支持您在日志查看器使用 JSON 搜索。这种搜索方式默认对日志查看器内 message 的内容进行精确检索,同时要求 message 是 JSON 格式,其他格式的日志内容不支持该检索方式。比如我们可以在搜索栏以 @key:value 的格式输入搜索内容。若为多层级 JSON 可用 “.” 承接,即 @key1.key2:value

需要注意的是,这种搜索方式目前仅支持日志查看器,且仅支持 中国区 1(杭州)中国区 3(张家口)以及 中国区 4(广州) 这三个站点,并且工作空间需要在 2022年6月23日 后创建。

具体的示例说明如下:

message 信息如下:
{__namespace:tracing,cluster_name_k8s:k8s-demo,meta:{    service:ruoyi-mysql-k8s,name:mysql.query,resource:select dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark from sys_dict_data}
}# 查询 cluster_name_k8s = k8s-demo
@cluster_name_k8s:k8s-demo     // 精准匹配
@cluster_name_k8s:k?s*        // 模糊匹配# 查询 meta 下 service = ruoyi-mysql-k8s
@meta.service:ruoyi-mysql-k8s   // 精准匹配
@meta.service:ruoyi?mysql*   // 模糊匹配

筛选

除了上文提到的搜索,在搜索栏输入筛选条件也是一个快捷的查询方式。我们可以针对 标签/属性 的格式进行筛选,按照 字段 运算符 值 顺序拼接可得。

字段

字段是筛选条件成立的前提。当我们根据实际需求添加字段时,您可以选择观测云默认会列出当前时间范围内的字段的列表,如未找到您可以自定义添加字段。

参见 字段管理 - 观测云文档

运算符

运算符用于连接字段与值的关系。我们可以针对【字符串】或者【数值】类型字段做筛选过滤。

  • 字符串字段运算符:=  wildcard not wildcard exist not exist
  • 数值字段运算符:=  > >= < <= [xx TO xx] exist not exist

不同运算符的说明如下:

运算符描述
=等于,示例:key:value ,= ≠ 可以叠加下面其他运算符组合使用。
不等于,示例:-key:value,= ≠ 可以叠加下面其他运算符组合使用。
wildcard模糊匹配,示例:key:value*,反向筛选则通过叠加 ≠ 实现。
exist存在,筛选过滤所有存在当前 key 的数据结果返回,示例:key:*。反向筛选则通过叠加 ≠ 实现。
>大于,示例:key:>value。反向筛选则通过叠加 ≠ 实现。
>=大于等于,示例:key:>=value。反向筛选则通过叠加 ≠ 实现。
<小于,示例:key:<value。反向筛选则通过叠加 ≠ 实现。
<=小于等于,示例:key:<=value。反向筛选则通过叠加 ≠ 实现。
[xx - xx]区间,示例:key:[1 - 100]。反向筛选则通过叠加 ≠ 实现。

值是筛选条件内期望达成的目标值。我们可以将其与 【AND】 或 【OR】 运算符组合查询。

具体的示例说明如下:

精确值
key:(value1 AND value2 OR value3)# 包含模糊匹配    
key:(value1 OR test* OR value3)# 包含 * 存在      
key:(value1 OR * OR value3)          // 等同于 key:* 
key:(value1 AND *)                  // 等同于 key:value1
key:(value1 AND * OR value3)        // 等同于 key:(value1 OR value3)

我们在此处用到的 AND/OR/NOT 这一形式在专业术语上称之为布尔运算符。我们可以将这类运算符与上文所提到的搜索与筛选条件进一步组合关联搜索与筛选

不同运算符的说明如下:

逻辑关系描述备注
a AND b取前后查询结果交集搜索、筛选条件间默认使用 AND 做连接。其中 AND 可以用 空格,即 a AND b = a b
a OR b取前后查询结果并集返回结果需包含 a 或者 b 的任意一个关键字。示例:a OR b:value
NOT c排除当前查询结果NOT 多用于搜索写法,筛选处排除逻辑使用  代替。

实际效果如下:

快捷筛选

除了在搜索栏输入筛选条件,我们还可以直接使用观测云 > 快捷筛选这一功能。在这里,我们可以基于一系列字段进行正选&反选、字段值搜索、添加显示列、查询值 TOP 5 等操作,从而定位至我们需要的目标数据。

有关更多相关操作说明,参见 查看器的强大之处 - 观测云文档

结论

数据的杂乱和海量性是业务数据管理面临的巨大挑战。当面对我们的系统采集并保存的大量数据,若是能借助精准有效的搜索或筛选方式进行数据的过滤查询,将使我们的数据处理效率事半功倍。未来,观测云也会探索更多查看器相关的查询分析功能,敬请期待!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/156651.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Liunx应用市场】yum

【Liunx应用市场】yum 1. Linux 软件包管理器 yum2. yum源3. yum的使用3.1 yum查找3.2 yum安装3.3 yum删除 所属专栏&#xff1a;Linux学习❤️ &#x1f680; >博主首页&#xff1a;初阳785❤️ &#x1f680; >代码托管&#xff1a;chuyang785❤️ &#x1f680; >感…

【k8s】pod集群调度

调度约束 Kubernetes 是通过 List-Watch **** 的机制进行每个组件的协作&#xff0c;保持数据同步的&#xff0c;每个组件之间的设计实现了解耦。 用户是通过 kubectl 根据配置文件&#xff0c;向 APIServer 发送命令&#xff0c;在 Node 节点上面建立 Pod 和 Container。…

界面控件DevExpress WPF Gauge组件 - 轻松实现个性化商业仪表盘

DevExpress WPF Gauge&#xff08;仪表&#xff09;控件包含了多种圆形仪表类型、水平和垂直线性仪表、分段和矩阵数字仪表以及状态指示器&#xff0c;同时还具有最终用户交互性的集成支持。 P.S&#xff1a;DevExpress WPF拥有120个控件和库&#xff0c;将帮助您交付满足甚至…

Swagger + DOCWAY 一步导出为优雅完整的Markdown、Pdf接口文档

只要开发&#xff0c;只要写接口应该没人不知道Swagger&#xff0c;但DOCWAY可能知道的人不多&#xff0c;但知道用过后就离不开了&#xff0c;不管是作为多方联调的接口文档&#xff0c;还是交接给客户的文档&#xff0c;都是可以的&#xff0c;具体如何使用&#xff0c;详细步…

【k8s】pod详解

一、Pod介绍 1、Pod的基础概念 Pod是kubernetes中最小的资源管理组件&#xff0c;Pod也是最小化运行容器化应用的资源对象&#xff0c;一个pod代表着集群中运行的一个进程。kubernetes中其它大多数组件都是围绕着pod来进行支持和扩展pod功能的。 例如&#xff0c;用于管理po…

Spring系统之IOC与AOP

前言 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。 IOC 1.IOC的概念 控制反转(IoCInversion of Control)IoC&#xff0c;用白话来讲&#xff0c;就是由容器控制程序之间的&#xff08;依赖&#xff09;关系&#xff0c;而非传统实现中&#xff0c;由程序代码…

git教程(2)---远程仓库操作

git教程---远程仓库 远程操作创建远程仓库克隆远程仓库HTTPSSSH 向远程仓库推送拉取远程仓库.gitignore文件给git指令起别名IssuesPull Requests 标签管理操作标签推送标签 多人协作场景一场景二 开发模型Git分支设计规范使用Gitee的DevOps平台体验项目开发流程 远程操作 创建…

【算法专题】双指针—盛最多水的容器

一、题目解析 分析这个题目不难得出一个容积公式 二、算法原理 解法一&#xff1a;暴力枚举&#xff08;超时&#xff09; 套用上述的容积公式&#xff0c;使用两个for循环来枚举出所有可能的情况&#xff0c;再挑出最大值即可&#xff0c;但是这种写法会超时&#xff0c;导致…

基于springboot实现学生考勤管理系统【项目源码+论文说明】

基于springboot实现学生考勤管理系统演示 摘要 随着信息技术和网络技术的飞速发展&#xff0c;人类已进入全新信息化时代&#xff0c;传统管理技术已无法高效&#xff0c;便捷地管理信息。为了迎合时代需求&#xff0c;优化管理效率&#xff0c;各种各样的管理系统应运而生&am…

【Tricks】PC端微信输入时,文本出现右对齐情况怎么恢复

应该是摁到某个快捷键&#xff0c;于是光标就变成如下图所示的样子&#xff1a; 如果再输入字符&#xff0c;则字符就会变成下图所示的样子&#xff08;对齐输入框右侧&#xff09;&#xff1a; 解决办法&#xff1a;ctrl J 解决办法&#xff1a;ctrl J 解决办法&#xff1…

【c++|opencv】一、基础操作---3.访问图像元素

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 访问图像元素 1. 访问图像像素 1.1 访问某像素 //灰度图像&#xff1a; image.at<uchar>(j, i) //j为行数&#xff0c;i为列数 //BGR彩色图像 i…

高等数学啃书汇总重难点(十一)曲线积分与曲面积分

依旧是公式极其复杂恶心的一章&#xff0c;建议是&#xff1a;掌握两种线面积分的计算套路即可&#xff0c;和第8章一样属于同济版教材中最不重要的章节&#xff0c;不会对底层理解做过多考察~ 1.弧长曲线积分的几何意义 2.弧长曲线积分的定义和性质 3.弧长曲线积分的计算方式 …