高阶查询
进入查询页面之后,默认就进入了“高阶查询”页面。
炎凰数据平台的高阶查询页面提供一系列的相关功能,可以满足用户通过输入SQL语句完成交互式查询分析。 并且可以将SQL查询结果固化为仪表板当中的图表。
功能组件
查询输入框
时间范围选择器
炎凰数据平台提供丰富的时间范围样式供用户选择,具体请看关于时间范围选择器的相关文档
查询模式
- 在查询页面中,默认的查询模式为完整查询模式。可以点击
完整查询
按钮来进行切换。- 完整模式: 完整查询结果,包含查询结果,字段详情以及时间直方图。
- 快速模式: 仅包含查询结果,适用于需要快速获得结果时使用。
查询内容
点击查询按钮之后,等待后台解析、计算后获取最终的查询内容。查询内容包括三部分,分别为查询结果、可视化、原始数据。
如果查询语句中不包含任何聚合函数,那么此时原始数据与查询结果数据将会保持一致。
查询结果
返回查询语句的最终结果。
当查询结果数量超过300条时,将会自动开启滑动条。
原始结果
返回查询语句中第一次聚合运算之前的投影结果,返回字段包含 _time 和 _message 以及聚合中涉及到的字段(注:count(*) 只返回 _time 和 _message)
查询历史
在查询页面中,点击查询语句历史左侧按钮,可以查看最近使用过的十条查询语句。点击加载查询语句按钮,即可将该查询输入到查询框中。
对于过长的查询语句,可以点击最右“更多”按钮,查看完整的语句。
对于格式化过的查询语句,也可点击最右“原格式”按钮,查看原始格式化过的语句。
- 在查询框中输入的内容如果部分匹配查询语句的历史,则会弹出提示框,在提示框中选中的查询将直接输入查询框。
时间直方图
查询返回数据集的统计结果会以直方图的方式展示,x轴为选定的时间范围,y轴为指定时间间隔内事件的条数。
直方图时间粒度以及缩放
默认情况下,直方图的时间粒度是自动计算的,可以根据需要调整为秒,分,时,日,月,年。调整完成后会重新触发查询,用新的粒度进行结果集的统计计算。
除了粒度的调整,还可以对查询范围进行调整。
- 放大查询范围
点击放大查询范围会根据当前选择的时间范围计算,依次放大到当前分钟,当前小时,当天,当月,当年,当前10年,当前20年,所有时间。
- 缩放到选择范围
点击缩放到选择范围按钮后,会激活鼠标在直方图上的选取功能,当确定选取范围后,会根据新选择的范围重新触发查询。
查询结果导出
可将查询结果集导出到本地文件,目前支持json和csv格式。
默认情况下,会将所有结果集导出到一个文件。
或者,选择部分结果集导出,输入预期导出的结果集条数以及起始位置。
导出时,还可以指定过滤掉一些字段。
查询结果表格
查询结果返回之后,系统会将结果展示在事件页面的下方。根据不同的搜索结果,系统会自动用不同的方式来进行展示
- 一般查询结果
对于大多数的查询结果,系统会以一个表格的形式进行展示,因为SQL语句的所有返回都是一个表格,如图所示:
在表格的左边,系统将结果集的所有的列显示为一个列表。列表的每一项都有2种状态:选中或未选中。用户可以自己选择是否要暂时的显示或隐藏某一列。
- 事件查询结果
对于select * from <EventSet_Name>
这种类型的查询,系统会返回符合搜索条件的所有事件,以及事件的所有字段。而对于这种搜索结果展示,会使用一种适用于事件展示的查询结果表格来展示
- 查询结果展示配置
针对不同的查询结果,用户可以自行配置查询结果的表格的展示效果,点击表格上方的“展示配置”按钮,即可进行相应配置。
默认情况下,查询结果表格每行高度是自适应的。如果觉得部分查询事件过长,可选择“自定义”并输入每行结果的最大行数。
对于超过最大行数的查询事件,省略部分会以...形式展示,如果需要查看完整事件,可将鼠标移至该事件并点击🔽按钮 同时,也可点击🔼按钮收起被展开的完整事件
- 事件上下文
针对每条事件,可以点击事件旁+号按钮展开显示该事件对应的所有字段值。
同时,针对select * from <EventSet_Name>
这种类型的查询,在展开的表单项,可以点击事件操作——查看事件上下文来查看单个事件所对应的日志上下文。
点击事件上下文按钮,可以在打开页面中看到所选事件(高亮显示)的对应上下文信息。
在表格的左边,系统将所有事件的字段分为两个列表,而当用户选择某些字段时,系统会将这些字段显示在已选字段中。
用户可以点击任意字段,查看字段的详细内容或者选择显示该字段值。同时,点击任意字段值,会将该值加入到查询过滤。
该字段列表默认情况下只会显示最多20个字段,如果用户需要查看所有字段,可以点击最下方的查看所有字段来进入字段选择界面。
对于字段选择界面,用户可以看到基于该查询结果所抽取的所有字段。 ![all_field_selector](./assets/yhp/all_field_selector.png)
用户可以点击事件左边的+来展开事件。
展开后,系统会将这条事件的所有字段以及字段的值,作为一个列表展示在该事件下方,方便用户详细的查看。
展开后,用户也可以点击字段值,将其加入到查询过滤。
- 分页展示
当结果集的数量大于一定限制时(默认为20条),系统会优先展示第一页,而右上角的页码则会告诉用户正在显示结果集中的部分结果,如图所示:
用户可以点击页码翻页,或者可以调整右边的每页显示条数,来增加或者减少每页的显示数量。
查询过滤
通过查询过滤,用户可以在不改变当前查询语句的情况下,额外添加一些过滤条件。
当查询返回结果后,可以通过展开事件,查看字段详细和查看所有字段界面来加入查询过滤,详细可参照[查询结果表格](#查询结果表格)。
当用户点击字段值添加查询过滤后,会显示在查询输入框下方。如果有不需要的查询过滤条件,可以点击X按钮来删除。 ![search_editor_with_filter](./assets/yhp/search_editor_with_filter.png)
如果用户想要查看包含查询过滤的完整语句,可以点击{:.align-left width="30px" height="30px"}按钮进入查看模式。
在该模式下,查询输入框为只读,用户不可进行编辑操作。如果需要继续编辑,则需要点击{:.align-left width="30px" height="30px"}按钮。
查询高亮
当用户输入的查询中包含CONTAINS函数,并且查询为类似select * from <EventSet_Name> where contains(<KEYWORDS>)
时,所有查询到的关键字均会在查新结果中高亮显示。
查询高亮的视频教程
文档链接
通过点击下面图列中的按钮,用户会被重定向到平台的使用手册和功能文档。
SQL查询错误参考
错误代码 | 错误类型 | 描述 |
---|---|---|
3 | 无效参数 | 创建更改数据目录/数据集/配置时参数出错,或调用数据目录或数据集时参数出错等,请根据错误提示修改查询 |
5 | 资源不存在 | 调用了不存在的数据目录或数据集等资源,请先确保资源存在 |
6 | 资源已存在 | 创建数据目录或数据集时,资源已存在,可以尝试使用CREATE OR REPLACE |
7 | 拒绝许可 | 内建的数据目录或数据集不可更改 |
8 | 内存不足,SQL运行失败 | 后端服务执行SQL的时候,没有足够多的内存完成计算。发生这个错误的时候,是因为查询的时候扫描的数据过多,或者是分配给单个查询任务的内存限制太少,或者是因为查询服务负载过大,内存不够支撑现有的查询。推荐缩小查询时间范围,重新提交查询验证。也可以修改SQL,增加字段裁剪或者字段过滤,减少内存使用。如需调整查询任务的内存上限,请咨询售后。 |
13 | SQL执行错误 | 后端服务在执行SQL的过程中失败了,通常会有明确的错误信息返回,例如标量函数使用错误,表函数使用错误等。这个错误发生的时候,表示SQL语法没有错误,是SQL运行时错误。请检查SQL语句,重新修改之后提交查询。 |
14 | 后端查询服务不可用 | 后端查询服务不可用,可能是因为后端查询服务崩溃,或者是因为后端查询服务还没有进入可用状态。请联系售后,上报问题。 |
17 | 许可证到期 | 请更新许可证license |
20 | 许可证配额已用完 | 请扩大许可证license配额 |
21 | 依赖错误 | 删除数据目录或数据集时,有其他数据目录依赖于此,需先确认依赖项是否还需要 |
302 | SQL语法错误 | 后端服务在解析SQL语句失败,SQL语句有语法错误。请修改SQL之后重新提交查询。 |
304 | 预存查询缓存结果不存在 | 在使用带缓存结果集的预存查询时,查看缓存结果不存在,可能是由于还未出发新的预存查询,已触发的预存查询已过期 |
保存查询
炎凰数据平台提供将查询直接保存的功能,您可以通过点击高阶查询页面语句输入框上方的"另存为"下拉选择框按钮,来选择将当前查询保存为告警或预存查询。
查询另存为告警
- 打开"查询"并进入"高阶查询"页面,在查询输入框中写入查询语句之后,点击 "另存为"下拉选择器,选择"告警",您可以得到"创建新告警"对话框
创建告警请参考这里
- 完成创建告警后会得到创建成功消息
- 点击消息对话框中的"查看告警"按钮,可以打开告警页面并自动聚焦您刚才保存的告警详情
查询另存为预存查询
- 打开"查询"并进入"高阶查询"页面,在查询输入框中写入查询语句之后,点击 "另存为"下拉选择器,选择"预存查询",您可以得到"创建预存查询"对话框
创建预存查询请参考这里
- 完成创建预存查询后会得到创建成功消息
- 点击消息对话框中的"查看详情"按钮,可以打开预存查询页面查看
收藏查询
炎凰数据平台提供收藏查询功能,您可以使用您自定义的收藏查询名字将查询语句配合查询时间一起添加到收藏查询面板。您可以通过展开'已收藏查询'面板选取收藏的查询, 同时平台也提供了收藏查询的导入和导出功能。
每个用户的收藏查询只会允许当前用户查看和使用,您无法查看其他用户的收藏查询同样的您收藏的查询也不被其他用户所见。
创建收藏查询
进入“高阶查询”页面,在查询输入框中写入查询语句之后,点击 "收藏查询"按钮。可以得到添加"收藏查询"对话框,输入标题然后点击'保存'按钮,即可成功创建一个属于您的'收藏查询'。
收藏查询添加后会显示在右侧的'收藏查询'面板里。
加载收藏查询
展开"收藏查询"面板,点击 按钮即可将对应的查询语句和查询时间应用在查询页面上。搜索会被自动执行并展示查询结果。
更新收藏查询
加载收藏查询后,您可以修改查询语句或查询时间范围,再次点击 "收藏查询"按钮,点击保存即可更新该收藏查询。
删除收藏查询
展开"收藏查询"面板,点击 按钮来删除一个"收藏查询"。
导入和导出收藏查询
展开"收藏查询"面板,点击"导出收藏查询"按钮可以将您已经保存的收藏查询导出到.json
文件并保存到您本地文件目录。
点击"导入收藏查询"按钮可以得到选择导入文件对话框,选择备份的收藏查询文件后即可将文件中的收藏查询导入到炎凰数据平台。