搜索你的日志
您所连接的事件源和环境系统以原始日志的形式生成数据。日志搜索需要原始,收集的数据的每一个日志,并自动将它们排序到日志集中。一旦配置了基本事件源,从InsightIDR主页进入日志搜索页面,搜索您的日志,构建查询,可视化您的数据,并创建警报。
步骤1:选择一个或多个要查询的日志或日志集
从“日志搜索”页面,通过选中“所有日志集”框中选择要查看的日志或日志集。
日志的术语
日志是从事件源发送的单个日志条目事件的容器。日志设置是按事件源类型分组的日志集合。
你可以设置自定义日志以平台目前不支持的格式发送数据以通过日志搜索访问它。您也可以创建自定义解析规则以InsightIdr未知的格式解析日志。
步骤2:构建查询
建立一个查询搜索特定的日志数据或使用搜索语言运行更高级的分析查询。如果您在创建查询时遇到问题,则可以重新创建一个示例查询.
您还可以使用Groupby函数根据不同的条件对日志进行分组:
使用Groupby函数可视化日志
GroupBy是一个函数,允许您通过日志数据中的字段分组来可视化数据。例如,以下函数组通过在资产身份验证日志生成的日志数据中为Destination_user字段中找到的唯一值进行日志条目:groupby (destination_user)计算(计算)
.
中找到的所有唯一用户名的列表destination_user.
字段,其中包含找到用户名的次数。最常见的用户名将首先列出,其余的用户名将按优先级排序。
这个函数还允许您以两种方式更改结果:
统计近似
如果发现了超过10,000个独特群体,那么结果将是统计近似,而不是a文字计数.由于数据的分布,也有可能不会显示任何组。
要确切的结果,缩小搜索条件。您可以通过选择更少的日志,更短的时间框架或添加更多搜索过滤器来执行此操作。
将日志数据按多个字段分组
日志条目查询语言(LEQL) groupby函数允许您根据日志数据中的多个字段进行分组。运行单个查询以获得日志数据的总体视图,并深入该数据。要使用此特性,在a中添加最多5个字段通过...分组
询问。您可以通过在高级QueryBuilder模式下键入其他键来执行此操作,或者您可以使用简单模式中提供的按钮。
示例查询:Groupby (destination_user, result, service, source_asset_address) calculate(count)
可视化堆叠条形图中的结果
运行时,查询结果将显示在一个堆叠的条形图中,其中显示了两个组。如果您向查询添加了超过2个字段,请单击一个栏以进一步深入到下面的2个组,这些组由您所单击的栏过滤。
查看结果在表格
结果也将以表格格式显示,允许您通过单击箭头来显示在组上以显示后续字段。
修改GroupBy结果
增加Groupby限制
您可以通过添加limit关键字来增加Groupby查询返回的组数量限制(n)
在你的查询的结尾n
表示组的数量。请参阅下表,了解每组键数的最大组数。任何大于最大组数的输入值都将默认为最大值。
组键数 | 最大的群体 |
---|---|
groupby(x0) | 10,000 |
groupby(x0,x1) | 20,000 |
groupby (x0, x1, x2) | 30,000 |
groupby(x0,x1,x2,x3) | 40,000 |
groupby(x0,x1,x2,x3,x4) | 50,000 |
以下查询设置了350的限制:Groupby (source_asset_address) calculate(count) sort(desc) limit(350)
如果按多个字段分组,则可以传入附加值以限制每个组返回的行数。当按多个字段分组时,根据下表中的示例,该限制将跨组应用:
查询 | Groupby限制 |
---|---|
groupby (x, y)限制(5) | Groupby (x, y) limit(5,5) |
Groupby (x, y, z) limit(20,12) | Groupby (x, y, z) limit(20,12,12) |
groupby(x,y) | Groupby (x, y)极限(40,40) |
下面的查询为Groupby函数中的第一个字段设置了100个组的限制,为第二个字段设置了20个组。
Groupby (source_asset_address, service) calculate(count) sort(desc) limit(100,20)
默认情况下,如果在查询中不使用limit关键字,LEQL将每个组限制为40个结果。
排序
在高级模式下,您可以使用类似于以下内容的查询对升序或降序排序返回结果:where(result = SUCCESS) groupby(destination_user) calculate(count) sort(desc)
您可以使用desc
和下行
作为关键字按降序排序,或ASC.
和上升
按升序排序。可以通过使用ASC#键
或者desc#key.
如果要按多字段分组,则可以通过其他排序标准传递。
下面的查询将首先按第一组的计数升序排列结果,然后按第二组的名称降序排列结果。
Groupby (destination_user, result) calculate(count) sort(asc, desc#key)
默认情况下,如果您在查询中没有使用sort关键字,LEQL将按降序对结果进行排序。
文字数
如果数据集中唯一事件的数量小于10,000,则Groupby使用Literal Count。Literal Count获取数据集中的每个日志行,并对每次出现的惟一元素进行计数,同时还将相同的事件放在一起。
使用以下查询进行唯一元素的计数:计算(唯一:source_address)
,在那里source_address
是您计划分组的值。这将返回source_address字段的唯一值的数量,以基于时间的图表显示。
当您通过唯一标识符,端口号或IP地址进行组值时,如果增加时间窗口,唯一值的数量通常会增加。
第3步:创建仪表板和可视化(可选)
查看您的数据视觉模式和添加卡可视化您的数据。你可以创建仪表板和报告从你的询问,或者你可以导出日志数据.
第4步:创建自定义警报(可选)
创建一个警报来自特定日志指示符,例如无效登录。