使用 Cloud Monitoring 接收提取通知

支持的平台:

本文档介绍了如何使用 Cloud Monitoring 接收提取通知。Google SecOps 使用 Cloud Monitoring 发送提取通知。借助此功能,您可以主动解决问题。您可以在现有工作流中集成电子邮件通知。当提取值达到特定的预定义级别时,系统会触发通知。在 Cloud Monitoring 文档中,通知被称为提醒

准备工作

为健康指标设置提取通知

如需设置用于监控 Google SecOps 专用提取健康指标的通知,请执行以下操作:

  1. 在 Google Cloud 控制台中,选择 Monitoring

  2. 在导航窗格中,选择 Alerting,然后点击 Create policy

  3. 选择指标页面上,点击选择指标

  4. 选择指标菜单中,点击以下任一选项:

    • 有效切换开关,用于过滤并仅显示过去 25 小时内包含数据的资源和指标。如果您不选择此选项,系统会列出所有资源和指标类型。
    • 组织/文件夹级切换开关,用于监控组织和文件夹的资源和指标,例如使用方配额用量或 BigQuery 槽分配。
  5. 选择以下任意指标:

    • 依次选择 Chronicle Collector > 提取,然后选择提取的日志总数提取的日志总大小

    • 依次选择 Chronicle Collector > Normalizer,然后选择 Total record countTotal event count

    • 依次选择 Chronicle Log Type > Outofband,然后选择 Total ingested log count (Feeds)Total ingested log size (Feeds)

  6. 点击应用

  7. 如需添加过滤条件,请在选择指标页面上点击添加过滤条件。在过滤条件对话框中,依次选择 collector_id 标签、比较运算符和过滤条件值。

    • 选择以下一个或多个过滤条件:

      • project_id:与相应资源关联的 Google Cloud 项目的标识符。

      • location:包含收集器对象的集群的实际位置。我们建议您不要使用此字段。如果您将此字段留空,Google Security Operations 可以使用其已掌握的信息自动确定数据的存储位置。

      • collector_id:收款方的 ID。

      • log_type:日志类型的名称。

      • 指标标签 > 命名空间:日志的命名空间。

      • Feed_name:Feed 的名称。

      • LogType:日志类型。

      • 指标标签 > event_type:事件类型决定了事件中包含哪些字段。事件类型包括 PROCESS_OPENFILE_CREATIONUSER_CREATIONNETWORK_DNS 等值。

      • 指标标签 > 状态:事件或日志的最终状态。状态是以下状态之一:

        • parsed。日志已成功解析。
        • validated。日志已成功验证。
        • failed_parsing。日志存在解析错误。
        • failed_validation。日志存在验证错误。
        • failed_indexing。日志存在批量编入索引错误。

      • 指标标签 > drop_reason_code:如果提取来源是 Google SecOps 转发器,系统会填充此字段,并指明在标准化过程中丢弃日志的原因。

      • 指标标签 > ingestion_source:使用 ingestion API 提取日志时,提取标签中显示的提取来源。

    • 选择一个特殊的收集器 ID。收集器 ID 还可以是转发器 ID 或特殊 ID,具体取决于提取方法。

      • aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa:表示使用 Feed Management API 或页面创建的所有 Feed。如需详细了解 Feed 管理,请参阅 Feed 管理Feed 管理 API

      • bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb:表示使用 Ingestion API unstructuredlogentries 方法的所有提取来源。如需详细了解提取 API,请参阅 Google SecOps Ingestion API

      • cccccccc-cccc-cccc-cccc-cccccccccccc:表示使用 Ingestion API udmevents 方法的所有提取来源。

      • dddddddd-dddd-dddd-dddd-dddddddddddd:表示 Google Cloud 日志提取。

      • eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee:表示用于 CreateEntities 的收集器 ID。

      • aaaa1111-aaaa-1111-aaaa-1111aaaa1111:表示代收代付代理。

  8. 转换数据部分中,执行以下操作:

    1. 时间序列聚合字段设置为求和
    2. 时间序列分组依据字段设置为 project_id
  9. 可选:设置包含多个条件的提醒政策。如需在提醒政策中创建包含多个条件的提取通知,请参阅具有多个条件的政策

Google SecOps 转发器指标和关联的过滤条件

下表介绍了可用的 Google SecOps 转发器指标和关联的过滤条件。

Google SecOps 转发器指标 过滤
容器内存用量 log_typecollector_id
容器磁盘已用空间 log_typecollector_id
容器 cpu_used log_typecollector_id
日志 drop_count log_typecollector_idinput_typereason
buffer_used log_typecollector_idbuffer_typeinput_type
last_heartbeat log_typecollector_idinput_type

设置示例政策以检测静默的 Google SecOps 转发器

以下示例政策会检测所有 Google SecOps 转发器,如果 Google SecOps 转发器在 60 分钟内未发送日志,则会发送提醒。这可能不适用于您要监控的所有 Google SecOps 转发器。例如,您可以使用不同的阈值监控一个或多个 Google SecOps 转发器中的单个日志源,也可以根据报告频率排除 Google SecOps 转发器。

  1. 在 Google Cloud 控制台中,选择 Monitoring
    前往 Cloud Monitoring

  2. 点击创建政策

  3. 选择指标页面上,依次选择 Chronicle Collector > 提取 > 提取的日志总数

  4. 点击应用

  5. 转换数据部分中,执行以下操作:

    1. 滚动窗口设置为 1 小时。
    2. 滚动窗口函数设置为平均值
    3. 时间序列聚合设置为平均值
    4. 时间序列分组依据设置为 collector_id。如果未将其设置为按 collector_id 分组,则系统会针对每个日志源触发提醒。
  6. 点击下一步

  7. 选择 Metric absence(指标缺失),然后执行以下操作:

    1. 提醒触发器设置为任何时序违反
    2. 触发器缺失时间设置为 1 小时。
    3. 输入条件的名称,然后点击下一步
  8. 通知和名称部分中,执行以下操作:

    1. 使用通知渠道框中选择一个通知渠道。为实现冗余,我们建议您配置多个通知渠道。
    2. 配置突发事件关闭通知。
    3. 将政策用户标签设置为适当的级别。用于设置政策的提醒严重级。
    4. 输入您希望随提醒一起发送的任何文档。
    5. 为提醒政策输入名称。

向万能政策添加排除对象

您可能需要从万能网关政策中排除某些 Google SecOps 转发器,因为它们可能只是流量较少,或者需要更自定义的提醒政策。

  1. 在 Google Cloud 控制台中,选择 Monitoring

  2. 在导航页面中,选择 Alerting,然后在 Policies 部分中选择要修改的政策。

  3. 政策详情页面上,点击修改

  4. 修改提醒政策页面上的添加过滤条件部分下,选择添加过滤条件,然后执行以下操作:

    1. 选择 collector_id 标签以及要从政策中排除的收集器。
    2. 将比较运算符设置为 !=,将值设置为要排除的 collector_id,然后点击完成
    3. 对需要排除的每个收集器重复此操作。如果您想使用以下格式,还可以使用正则表达式仅通过一个过滤条件排除多个收集器:

    (?:aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa|bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb|cccccccc-cccc-cccc-cccc-cccccccccccc)

  5. 点击保存政策

设置示例政策以检测静默的 Google SecOps 收集代理

以下示例政策会检测所有 Google SecOps 收集代理,如果 Google SecOps 收集代理在 60 分钟内未发送日志,则会发送提醒。此示例可能不适用于您要监控的所有 Google SecOps 收集代理。例如,您可以使用不同的阈值监控一个或多个 Google SecOps 收集代理中的单个日志源,也可以根据报告频率排除 Google SecOps 收集代理。

  1. 在 Google Cloud 控制台中,选择 Monitoring
    前往 Cloud Monitoring

  2. 点击创建政策

  3. 选择指标页面上,依次选择 Chronicle Collector > Agent > Exporter Accepted Spans Count

  4. 点击应用

  5. 转换数据部分中,执行以下操作:

    1. 滚动窗口设置为 1 小时。
    2. 滚动窗口函数设置为平均值
    3. 时间序列聚合设置为平均值
    4. 时间序列分组依据设置为 collector_id。如果未将其设置为按 collector_id 分组,则系统会针对每个日志源触发提醒。
  6. 点击下一步

  7. 选择 Metric absence(指标缺失),然后执行以下操作:

    1. 提醒触发器设置为任何时序违反
    2. 触发器缺失时间设置为 1 小时。
    3. 输入条件的名称,然后点击下一步
  8. 通知和名称部分中,执行以下操作:

    1. 使用通知渠道框中选择一个通知渠道。为实现冗余,我们建议您配置多个通知渠道。
    2. 配置突发事件关闭通知。
    3. 将政策用户标签设置为适当的级别。用于设置政策的提醒严重级。
    4. 输入您希望随提醒一起发送的任何文档。
    5. 为提醒政策输入名称。