日志审计精细化采集策略

本文涉及的产品
对象存储 OSS,20GB 3个月
云备份 Cloud Backup,100GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
简介: 日志审计精细化采集策略

一、日志审计服务简介

阿里云日志服务作为行业领先的日志大数据解决方案,一站式提供数据收集、清洗、分析、可视化和告警功能。日志审计服务功能了提供多账户下跨多云产品审计相关日志进行实时自动化中心化采集,并提供审计需要的存储、查询、信息汇总支持。覆盖Actiontrail、OSS、SLB、RDS、DRDS、API网关等基础产品并支持自由对接到其他生态产品或自有SOC中心。
image.png

日志审计服务具有如下共功能和优势:

  • 实时中心化采集

    • 多云产品支持: 支持阿里云SLB、OSS、RDS等多个主流产品。
    • 一键式采集:一次性配置采集策略后,即可完成跨账号自动实时发现新资源并实时采集日志。
    • 跨账号:支持将多个主账号下的日志采集到一个主账号下的Project中。
    • 中心化存储:将采集到的日志存储到某个地域的中心化Project中,方便后续查询分析、可视化与告警、二次开发等。
  • 支持丰富的审计功能

    • 继承日志服务现有的所有功能,包括查询分析、加工、报表、告警、导出等功能,支持审计场景下中心化的审计等需求。
    • 生态开放对接:与开源软件、阿里云大数据产品、第三方SOC软件无缝对接,充分发挥数据价值。

二、日志审计一键采集功能介绍

一键进行云产品日志采集是日志审计服务的一大特色,而其中的一个重点功能就是资源的实时自动发现。使用者只需要在日志审计控制台上,针对具体的云产品开通日志审计功能即可,不需要逐个对云资源进行日志采集的开关控制。下面我们以阿里云关系型数据库RDS为例举例说明,如何便捷的进行日志采集。

1、传统的日志采集功能

需要使用者按照RDS SQL执行日志采集指南,逐个对要采集的RDS实例开启日志采集功能。如果有RDS实例扩缩容的场景,也需要使用者手动操作。
缺点:

  • 不支持跨账号、跨地域。
  • 不支持实例发现。
  • 不支持中心化。

如下图,某客户有账号1、账号2,如果需要采集所有RDS日志,需要分别建立多个logstore,且需要手动逐个建立RDS实例与logstore的采集关系,维护成本较大。
image.png

2、日志审计一键采集功能

有了日志审计功能之后,传统采集的问题就不需要在发愁了。如下图,只需要在中心账号1下面,开通RDS日志审计功能,剩下的事情就放心交给审计服务去做好了,您可以轻松地在logstore-center中查看到您所拥有的所有账号下的、所有支持采集地域下的RDS实例日志。
有了日志审计一键采集功能,可以享受到的便捷服务:

  • 实例自动发现,免去了相关运维的工作。
  • 跨账号采集、中心化存储,为数据分析提供了更多的想象空间。

image.png

之前日志审计存在了一点小的缺陷,就是用户开通某个云产品的日志审计之后,会自动实现所有实例的采集,但是这也造成了会造成把用户不需要关心的实例日志也一起采集到了中心logstore。于是,我们推出了日志审计采集策略功能,可对账号、地域或实例等因素进行限制,达到精细化的日志采集目的。

三、日志审计采集策略

1、采集策略应用场景

image.png

某客户因业务需求,线上的RDS实例都部署在北京或上海机房,其他地域的RDS实例主要是用来进行开发测试。另外,上海、北京也会有一些打有level=low标签的实例,用于存储一些非线上的业务数据。
因此,该客户从线上业务出发,只需要采集位于上海、北京,且没有打level=low标签的RDS实例。而日志审计的采集策略功能,正好满足了客户这方面的需求。

## 采集语法
keep region == ("cn-shanghai" or "cn-hangzhou")               # 只采集北京、上海的实例
drop tag.level == "low"               # 如果实例被打了level=low标签,则丢弃。
accept "*"                            # 接受所有符合当前条件的实例

2. 采集策略语法简介

采集策略语法一般情况下由如下部分组成,并以keep region == ("cn-shanghai" or "cn-beijing")加以说明:

参数 说明 举例
动作 通过您配置的采集策略,执行相应的动作,详情请参见策略语法 keep
属性 选择采集对象的属性,不同采集对象对应的属性不同,详情请参见产品支持 region
操作符 选择操作符,例如选择完全匹配,则对应的操作符为==,详情请参见策略语法 ==
属性取值 输入属性的值,支持配置多个值。 ("cn-shanghai" or "cn-beijing")

动作

  • 保持(keep):当采集对象满足采集策略时继续执行下一条策略,由后续策略判断是否采集日志。不满足则拒绝采集日志,不再做后续策略判断。
  • 拒绝(drop):当采集对象满足采集策略时拒绝采集日志,不再执行下一条策略。不满足则继续执行下一条策略,由后续策略判断是否采集。
  • 接受(accept):当采集对象满足采集策略时采集日志,不再执行下一条策略。不满足则继续执行下一条策略,由后续策略判断是否采集。

采集对象的属性及取值

目前支持RDS、DRDS、SLB三种阿里云产品。

云产品 采集对象 属性 说明
RDS RDS实例 账号:account.id RDS实例所属的阿里云账号ID。
地域:region RDS实例所属的地域,例如:cn-shanghai。
实例ID:instance.id RDS实例ID。
实例名:instance.name RDS实例名。
DB类型:instance.db_type DB类型,可取值为mysql、pgsql、mssql。
DB版本号:instance.db_version DB版本号,例如:8.0。
标签:tag.* 用户自定义的标签名。将tag.中的星号()替换为您自定义的标签名。
DRDS DRDS实例 账号:account.id DRDS实例所属的阿里云账号ID。
地域:region DRDS实例所属的地域,例如:cn-shanghai。
实例ID:instance.id DRDS实例ID。
实例名:instance.name DRDS实例名。
SLB SLB实例 账号:account.id SLB实例所属的阿里云账号ID。
地域:region SLB实例所属的地域,例如:cn-shanghai。
实例ID:instance.id SLB实例ID。
实例名:instance.name SLB实例名。
网络类型:instance.network_type SLB网络类型,可取值为classic、vpc。
VPC ID:instance.vpc_id SLB的VPC ID。
标签:tag.* 用户自定义的标签名。将tag.中的星号()替换为您自定义的标签名。

匹配模式

image.png
image.png
image.png

3. 采集策略处理流程

image.png

4. 操作流程说明

日志服务支持通过简易编辑模式或高级编辑模式配置采集策略。简易编辑模式配置简单,当简易编辑模式无法满足需求时,可开启高级编辑模式,灵活配置复杂的采集策略。

4.1 简易编辑模式

  • 待添加策略区域,配置如下参数,并单击添加策略
    image.png
  • 已添加策略区域,确认策略配置结果。您也可以修改已添加的采集策略以及调整采集策略的顺序。

    • 单击目标采集策略右侧的编辑,修改已添加的采集策略。
    • 单击目标采集策略右侧的上下箭头,调整采集策略的顺序。
      image.png

4.2 高级编辑模式

开启高级编辑模式。在规则文本框中,配置采集策略,并单击确定。
image.png

5. 常见案例

  • 采集特定区域的实例日志例如:只采集中国区域的实例日志,采集策略如下所示。
# only scan cn region
keep region == "cn-*"
# accept by default
accept "*"
  • 采集特定标签的实例日志例如:只采集所有标签打上type值是production(大小写不敏感)的实例日志,采集策略如下所示。
# only scan "production" instances
keep tag.type ~= "(?i)^production$"
# accept by default
accept "*"
  • 复杂场景例如:只采集RDS MySQL实例日志,但是如果标签打上level: high的实例,无论数据库类型是MySQL、SQL Server或PostgreSQL,都采集,采集策略如下所示。
# accept all high level instances
accept tag.level == "high"
# only scan mysql
keep instance.db_type == "mysql"
# accept by default
accept "*"

image.png

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
1月前
|
存储 数据采集 分布式计算
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
44 1
|
2月前
|
Kubernetes API Docker
跟着iLogtail学习容器运行时与K8s下日志采集方案
iLogtail 作为开源可观测数据采集器,对 Kubernetes 环境下日志采集有着非常好的支持,本文跟随 iLogtail 的脚步,了解容器运行时与 K8s 下日志数据采集原理。
|
3月前
|
数据库 Java 监控
Struts 2 日志管理化身神秘魔法师,洞察应用运行乾坤,演绎奇幻篇章!
【8月更文挑战第31天】在软件开发中,了解应用运行状况至关重要。日志管理作为 Struts 2 应用的关键组件,记录着每个动作和决策,如同监控摄像头,帮助我们迅速定位问题、分析性能和使用情况,为优化提供依据。Struts 2 支持多种日志框架(如 Log4j、Logback),便于配置日志级别、格式和输出位置。通过在 Action 类中添加日志记录,我们能在开发过程中获取详细信息,及时发现并解决问题。合理配置日志不仅有助于调试,还能分析用户行为,提升应用性能和稳定性。
57 0
|
3月前
|
SQL 安全 测试技术
【数据守护者必备】SQL数据备份与恢复策略全解析:从全量到日志备份,手把手教你确保企业信息万无一失的实战技巧!
【8月更文挑战第31天】数据库是企业核心业务数据的基石,为防止硬件故障、软件错误或人为失误导致的数据丢失,制定可靠的备份与恢复策略至关重要。本文通过一个在线购物平台的案例,详细介绍了使用 SQL Server 进行全量备份、差异备份及事务日志备份的方法,并演示了如何利用 SQL Server Agent 实现自动化备份任务。此外,还提供了数据恢复的具体步骤和测试建议,确保数据安全与业务连续性。
149 0
|
3月前
|
消息中间件 API C#
【Azure API 管理】APIM添加Log-to-eventhub的策略后,一些相关APIM与Event Hub的问题
【Azure API 管理】APIM添加Log-to-eventhub的策略后,一些相关APIM与Event Hub的问题
|
3月前
|
存储 API C#
【Azure API 管理】在APIM 中添加 log-to-eventhub 策略,把 Request Body 信息全部记录在Event Hub中
【Azure API 管理】在APIM 中添加 log-to-eventhub 策略,把 Request Body 信息全部记录在Event Hub中
|
3月前
|
存储 Kubernetes Java
在k8S中,容器内日志是怎么采集的?
在k8S中,容器内日志是怎么采集的?
|
3月前
|
数据采集 监控 Kubernetes
Job类日志采集问题之iLogtail以减小容器发现和开始采集的延时如何优化
Job类日志采集问题之iLogtail以减小容器发现和开始采集的延时如何优化
|
3月前
|
数据采集 Kubernetes Java
Job类日志采集问题之在日志中添加容器的元信息标签,如何操作
Job类日志采集问题之在日志中添加容器的元信息标签,如何操作
|
3月前
|
存储 容器
Job类日志采集问题之DaemonSet采集方式的参数以减小采集延时如何调整
Job类日志采集问题之DaemonSet采集方式的参数以减小采集延时如何调整

相关产品

  • 日志服务
  • 下一篇
    无影云桌面