📜  Splunk-基本搜索(1)

📅  最后修改于: 2023-12-03 15:05:15.284000             🧑  作者: Mango

Splunk - 基本搜索

简介

Splunk 是一款基于日志、事件和指标的数据分析平台。通过索引化和可视化大数据,Splunk 可以帮助用户了解其 IT 基础架构、业务运营和威胁情报等方面的情况。Splunk 基于搜索引擎技术,可以实时地对数据进行搜索和分析。

在 Splunk 中,对数据进行搜索通常是用户的第一步。本文将介绍 Splunk 的基本搜索功能,包括搜索语法、字段提取、搜索命令等内容。

搜索语法

Splunk 的搜索语法类似于 Unix Shell 和 SQL。下面是一些基本的搜索语法:

  • keyword:搜索包含了关键字 "keyword" 的事件。
  • "exact phrase":搜索完全匹配 "exact phrase" 的事件。
  • field=value:搜索特定字段值为 "value" 的事件。
  • NOT keyword:搜索不包含关键字 "keyword" 的事件。
  • field!="value":搜索字段值不为 "value" 的事件。
  • field>value / field<value: 搜索字段值大于/小于 "value" 的事件。
  • field_a OR field_b:搜索字段 A 或字段 B 至少有一个为真的事件。
  • field_a AND field_b:搜索字段 A 和字段 B 都为真的事件。
  • regex:使用正则表达式搜索符合条件的事件。

搜索语法还可以通过使用括号和逻辑运算符来组织,例如:

  • (field_a="value_a" OR field_b="value_b") AND field_c>10
字段提取

在搜索数据时,如果需要一些特定字段的数据来创建可视化、报告或者其他形式的操作,就需要从原数据中提取字段。Splunk 可以通过正则表达式提取字段。

例如,你可以使用正则表达式 /src_ip=(?<src_ip>\d+\.\d+\.\d+\.\d+)/ 来提取 "src_ip" 字段:

sourcetype=access_combined_wcookie src_ip=* | rex "/src_ip=(?<src_ip>\d+\.\d+\.\d+\.\d+)/"
搜索命令

在 Splunk 中,搜索命令是用于搜索和处理数据的高级操作。搜索命令以管道符号 | 连接,可以将前一个命令的输出作为后一个命令的输入。

以下是一些常见的搜索命令:

  • table:指定要显示的字段。
  • stats:对字段值进行汇总、计数等统计操作。
  • timechart:对时间序列数据进行可视化处理,生成图表。
  • top:返回出现次数最多的结果。
  • where:过滤结果。
  • join:联结多个源的数据,然后处理结果。

例如,你可以使用以下命令将事件分组,并获取每个分组中出现频率最高的结果:

sourcetype=access_combined_wcookie src_ip=* | stats count by src_ip, status | sort - count | dedup 1 src_ip | table src_ip, status, count
总结

本文介绍了 Splunk 的基本搜索功能,包括搜索语法、字段提取和搜索命令。Splunk 具有强大的搜索和分析功能,可以大幅提高数据分析和操作的效率。