全部产品
云市场

SLB实例采集不到访问日志

概述

本文主要介绍SLB实例采集不到访问日志的排查步骤。

 

详细信息

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

 

检查是否为SLB实例开通了访问日志功能

每个SLB实例都需要单独设置,开通后产生的访问日志将实时写入日志服务。

  1. 登录SLB控制台,在左侧导航栏中单击 日志管理 > 访问日志,在访问日志(7层)页面中,确认存在指定的SLB实例。
  2. 确认SLB实例对应的SLS日志存储一列中的日志保存位置正确。
    提示:SLS日志存储列显示的是日志服务Project和Logstore,请在对应的位置查看是否存在SLB日志。

 

检查RAM授权是否正确

若您使用的是子用户,在SLB实例开通访问日志功能时,系统会指引您完成RAM角色授权,成功授权后才能开通访问日志功能。如果RAM角色没有正常创建或创建后被删除,都会导致日志采集后无法投递到日志服务的Logstore。

  1. 登录RAM控制台,在RAM角色管理页面查找是否存在AliyunLogArchiveRole。
  2. 如果AliyunLogArchiveRole不存在,请使用主账号登录阿里云控制台,并单击快速授权链接,完成授权所需要的RAM角色创建。
  3. 如果AliyunLogArchiveRole存在,请单击该角色名称,再单击 权限策略名称,查看策略内容是否正确。默认的授权策略如下所示,如果您的策略与默认策略不相同,可能之前修改过授权策略,请将授权策略改为默认的授权策略。
    {
      "Version": "1",
      "Statement": [
        {
          "Action": [
            "log:PostLogStoreLogs"
          ],
          "Resource": "*",
          "Effect": "Allow"
        }
      ]
    }

 

检查是否产生日志

如果在日志服务控制台没有查看到SLB访问日志,可能是由于SLB实例没有日志产生。可能的原因如下所示。

  • 当前实例未配置七层监听:日志服务目前只支持SLB七层监听的实例开通访问日志功能,暂不支持四层实例的日志采集。常见的七层监听协议有HTTP和HTTPS,详细说明请参考监听介绍
  • 日志服务不会采集开通访问日志功能之前的历史日志:开通SLB实例的访问日志功能之后,日志功能从开通时间开始采集日志。
  • 指定实例没有访问请求:使用访问日志功能后,必须访问七层监听的SLB实例,才会产生访问日志。

 

适用于

  • 日志服务
  • 负载均衡 SLB