更新时间:2024-12-16 GMT+08:00
分享

进入搜索LTS日志页面

云日志服务支持管道符特性在一个语句中同时进行搜索和分析。其语法结构主要由三部分构成:针对非结构化数据和半结构化数据的搜索语句、“|”和针对结构化数据的查询的分析语句。语法示例结构:* and msg:"hello world" | SELECT avg(value)

管道符搜索方式的功能在邀测中,暂不支持申请开通。

目前支持两种查询方式(以kibana上的查询语句为例):

  • 情景1:仅包含sql查询
    POST _opendistro/_sql/
    {
    "query": "select current_date() from employee"
    }
  • 情景2:包含lpl查询和sql查询
    POST _opendistro/_sql/
    {
    "query": "age >22 | select name, count(name) from employee group by name"
    }

用户如果仅需要使用lpl语句来查询,可以在管道符“|”的右侧补上select * from table.

数据组织形式

管道符特性针对特定的数据组织形式,对于云日志服务而言,管道符特性的数据主要由两部分构成,一部分是结构化数据,一部分是原始日志。示例如下:

{"id": 1, "name": "Bob", "job": "java", "age": 21, "sal": 8000, "gender": "female", "_log": "name: Bob, job: java, age: 21, sal: 8000, gender: female"}

其中:“id”,“name”,“job”,“age”,“sal”和“gender”是结构化数据的字段,“_log”是原始日志字段。

使用限制

  • SQL函数不支持显式转为double、float类型,例如* | select cast(1 as double)
  • SQL函数查询字段别名不支持包含.,比如* | select compare(`c.c`,1) as diff from (select count(status) as `c.c`) as t
  • 索引字段名称中含有特殊字符的语句,需要使用半角符号“`”将字段名称包含起来。

日志搜索分析

  1. 在云日志服务管理控制台,单击“日志管理”。
  2. 在日志组列表中,单击日志组名称前对应的按钮。
  3. 在日志流列表中,单击日志流名称,进入日志详情页面。
  4. 在“统计图表”页签,在右上角选择时间范围,可以查看原始日志和统计图表。在搜索框由搜索语句和SQL分析语句组成,两者通过管道符|联动,详细请参考SQL函数

    日志高亮的实现原理是当查询条件命中日志后,再将日志与查询条件进行字符串匹配,相同日志部分增加高亮标签,该部分会在界面高亮展示。因此当查询条件比较复杂,尤其是存在或关系时,在界面高亮显示的内容可能会比实际查询结果显示的多。

    时间范围有三种方式,分别是相对时间、整点时间和自定义。您可以根据自己的实际需求,选择时间范围。

    • 相对时间:表示查询距离当前时间1分钟、5分钟、15分钟等时间区间的日志数据。例如当前时间为19:20:31,设置相对时间1小时,表示查询18:20:31~19:20:31的日志数据。
    • 整点时间:表示查询最近整点1分钟、15分钟等时间区间的日志数据。例如当前时间为19:20:31,设置整点时间1小时,表示查询18:00:00~19:00:00的日志数据。
    • 自定义:表示查询指定时间范围的日志数据。

交互模式

使用交互模式之前,请确保日志正常上报,且已经完成结构化分析和索引配置,详细请参考设置云端结构化解析日志设置LTS日志索引配置

交互式搜索分析适用于生成简单的分析语句,操作简单,通过在界面上设置搜索条件和指定日志查询时的过滤规则,从而筛选日志中满足条件的记录。如果您需要使用更多的函数或者嵌套查询,请手动输入SQL语句。详细请参考SQL函数

  1. 单击搜索框前面的“交互模式”,进入交互式搜索分析页面,支持日志搜索和日志分析。

  2. 在“日志搜索”下方的下拉框选择日志搜索的字段和条件,搜索框则会展示对应字段的值。根据业务需要,用户可以自定义设置搜索方式,添加关联关系或添加组进行搜索。

    • 下拉框显示的字段为索引配置字段、结构化字段、内置保留字段
    • 且(AND)表示在多个条件中需要同时满足所有条件才能成立。
    • 或(OR)表示在多个条件中只需满足其中一个条件即可。

    例如在界面上选择content、hostId、pathFile字段,设置不同的条件,随时可以预览搜索语句,如有问题,可以修改搜索条件,操作简单。

    (截图仅供参考,请以实际搜索结果为准)

    (content:"{\"string_withindex\":\"11/10/2024:17:40:13\",\"string_noindex\":\"11/10/2024:17:40:13\",\"rizhineirongbaohanshuangyinhao\":\"\\"error\\"\",\"rizhineirongbaohanyufaguanjianci\":\"and\",\"long_withindex\":1829169,\"long_noindex\":1829169,\"float_withindex\":1829169.5678,\"float_noindex\":1829169.5678,\"json\":{\"string_withindex\":\"11/10/2024:17:40:13\",\"string_noindex\":\"11/10/2024:17:40:13\",\"long_withindex\":1829169,\"long_noindex\":1829169,\"float_withindex\":1829169.5678,\"float_noindex\":1829169.5678}}" AND hostId:82de1569-0423-42b3-ab72-2ed8e54df664) OR pathFile:/root/221/testq.log

  3. 设置完成后,单击“确定”,LTS根据搜索语句进行日志搜索,在日志搜索下方即可查看搜索结果。(截图仅供参考,请以实际搜索结果为准)

  4. 单击搜索框前面的“交互模式”,进入交互式搜索分析页面,在日志分析下方,设置分析规则。(截图仅供参考,请以实际搜索结果为准)

    1. 添加指标,选择统计函数作用于选定的字段,计算出用户想要的指标。
    2. 分组排序(添加分组和添加排序),先基于用户选择的字段分组(group by),然后分组执行指标统计,最后对结果进行排序(order by)。
    3. 设置完成后,单击“确定”,在“统计图表”页面,即可查看分析结果。更多信息请参考使用统计图表将日志可视化

日志搜索的常用操作

日志搜索的常用操作有分享日志、刷新等操作,具体参考表1

表1 常用操作

操作

说明

创建快速查询

单击按钮,创建快速查询。

查看仪表盘

单击按钮,在弹出来的仪表盘页面中,可查看已创建的仪表盘。

添加告警

单击按钮,在弹出的页面中,支持新建告警规则

分享日志

单击复制当前日志搜索页面的链接,用于分享搜索日志。

刷新日志

单击对日志进行刷新,有两种方式刷新方式:手动刷新和自动刷新。

  • 手动刷新:单击“手动刷新”,可直接对日志进行刷新。
  • 自动刷新:选择自动刷新的间隔时间,将对日志进行自动刷新。间隔时间范围为15秒、30秒、1分钟和5分钟。

复制

单击复制日志内容。

查看上下文

单击查看日志上下文。

说明:

支持选择简洁模式查看日志上下文。支持下载上下文内容。

更多操作

单击进入该时间段的日志详情页,查看更多日志信息。

  • 在“扩展字段”页签,查看字段名称、字段值,在对应字段操作列,支持对该字段进行添加到查询、从查询中排除、字段存在、字段不存在、隐藏的方式搜索日志。
  • 在“json格式”页签,查看日志的json格式。
  • 在“上下文日志”页签,支持设置查询行数、过滤字段、下载日志、简洁模式等操作。

换行/取消换行

单击按钮,搜索的日志内容将换行显示。若不需要换行,单击按钮,取消换行。
说明:

默认开启换行按钮。

下载日志

该功能仅支持白名单用户使用,如有需要,请提交工单申请开通。

鼠标悬浮在按钮上,单击“下载日志”,在弹出的下载日志页面中支持“本地下载”和“前往创建转储”。开通一次性转储后才能看到“前往创建转储”功能。

  • 本地下载:将日志文件直接下载到本地,白名单用户单次下载支持最大2000万条日志。非白名单用户单次下载支持最大5,000条日志。

    在下拉框中选择“.csv”或“.txt”,单击“开始下载日志”,可将日志导出至本地。

  • 前往创建转储(白名单功能):通过OBS转储任务下载日志文件,单次下载支持最大2,000万条日志。单击“前往创建转储”,跳转至配置转储页面,详细请参考日志转储至OBS
  • 鼠标悬浮在按钮上,单击“日志下载历史”,在日志下载历史页面,支持查看、下载、删除日志下载记录。

全部折叠/全部展开

单击设置日志内容展示的行数。若不需要展示日志内容,再单击一次按钮即可关闭展示的日志内容。

说明:

默认不折叠。折叠后,默认显示2行,最多支持展示6行。

JSON设置

鼠标悬浮在按钮上,单击“JSON设置”,在弹出的JSON设置页面中,设置格式化显示。

说明:

默认开启格式化,JSON默认展开层级为2层。若日志包含多个反斜杠,当日志展示为json格式时,会丢失一个反斜杠,因为json解析会将第一个反斜杠作为转义符处理。

  • 开启格式化按钮:设置JSON默认展开层级,最大设置为10层。
  • 关闭格式化按钮:对于JSON格式的日志,将不会格式化层级显示。

日志折叠设置

鼠标悬浮在按钮上,单击“日志折叠设置”,在弹出的日志折叠设置页面中,设置长日志字符个数。

日志超过设置的长日志字符个数时,超出字符将被隐藏,单击“展开”按钮可查看全部内容。

说明:

默认开启自动折叠长日志,字符个数默认为400个。

日志时间展示

鼠标悬浮在按钮上,单击“日志时间展示”,在弹出的日志折叠设置页面中,设置是否展示毫秒、是否展示时区。

说明:

默认开启展示毫秒。

虚拟滚动设置

鼠标悬浮在按钮上,单击“虚拟滚动设置”,在弹出的虚拟滚动设置页面中,设置是否开启虚拟滚动、填写缓冲区大小。

说明:
  • 虚拟滚动可以避免或减少滚动时卡顿的情况,提升操作体验,防止页面卡死。
  • 滚动时数据会重新渲染,一定程度上影响数据流畅性。
  • 缓冲区决定同时加载的数据量大小,缓冲区越大,同时加载的数据越多,但滚动性能会越差。

不可见字段列表

该列表展示版面设置中配置的不可见性字段。

  • 当日志流未配置版面设置时,将不显示按钮。
  • 当日志内容为“CONFIG_FILE”且未配置版面设置时,不可见字段默认有appName、clusterId、clusterName、containerName、hostIPv6、NameSpace、podName和serviceID。

相关文档