更新时间:2024-12-02 GMT+08:00

访问日志

背景信息

流量控制提供两种方式查看访问日志。

  • 一种是提供单独的API开启和查看访问日志,API参数配置记录访问日志时间和大小,访问日志内容通过Rest接口返回。
  • 一种是通过日志打印的方式记录访问日志,开启后用户的访问日志会以文件的方式打印到后端日志中,用户通过查看日志文件查看访问日志。

开启访问日志会影响集群性能。

在开启或关闭访问日志时,执行命令涉及的配置参数如下:

表1 访问日志的配置参数说明

配置名

类型

说明

duration_limit

String

访问日志记录时间。

取值范围:10~120

单位:s

默认值:30

capacity_limit

String

访问日志记录大小。统计开启访问日志后记录的请求大小,当统计的大小大于该配置值,访问日志记录终止。

取值范围:1~5

单位:MB

默认值:1

duration_limit和capacity_limit只要有一个参数达到阈值,访问日志记录就会停止。

操作步骤

  1. 登录云搜索服务管理控制台。
  2. “集群管理”页面选择目标集群,单击操作列“Kibana”,登录Kibana界面。
  3. 单击左侧导航栏的“Dev Tools”,执行命令开启访问日志。
    • 开启集群所有节点的访问日志
      PUT /_access_log?duration_limit=30s&capacity_limit=1mb
    • 开启集群中某一节点的访问日志
      PUT /_access_log/{nodeId}?duration_limit=30s&capacity_limit=1mb

      {nodeId}为需要开启访问日志的节点ID。

  4. 执行命令查看访问日志API。
    • 查看集群所有节点的访问日志API
      GET /_access_log
    • 查看集群中某一节点的访问日志API
      GET /_access_log/{nodeId}

      {nodeId}为需要开启访问日志的节点ID。

    响应示例:
    {
      "_nodes" : {
        "total" : 1,
        "successful" : 1,
        "failed" : 0
      },
      "cluster_name" : "css-flowcontroller",
      "nodes" : {
        "8x-ZHu-wTemBQwpcGivFKg" : {
          "name" : "css-flowcontroller-ess-esn-1-1",
          "host" : "10.0.0.98",
          "count" : 2,
          "access" : [
            {
              "time" : "2021-02-23 02:09:50",
              "remote_address" : "/10.0.0.98:28191",
              "url" : "/_access/security/log?pretty",
              "method" : "GET",
              "content" : ""
            },
            {
              "time" : "2021-02-23 02:09:52",
              "remote_address" : "/10.0.0.98:28193",
              "url" : "/_access/security/log?pretty",
              "method" : "GET",
              "content" : ""
            }
          ]
        }
      }
    }
    表2 响应参数说明

    参数名

    说明

    name

    节点名称。

    host

    节点对应的IP地址。

    count

    统计周期内,访问节点的请求数量。

    access

    统计周期内,访问节点的请求详情。参数说明请参见表3

    表3 access

    参数名

    说明

    time

    记录请求时间。

    remote_address

    请求对应的源IP地址和端口。

    url

    请求的原始URL

    method

    对应请求Path的方法。

    content

    对应请求的内容。

  5. 执行命令开启或关闭访问日志文件记录。

    访问日志功能提供配置开关可以记录用户的所有访问日志。日志默认会记录到后台的acces_log.log日志文件中。日志文件单个文件最大支持250M,最多保存5个文件。访问日志文件可以通过日志备份到OBS中查看。

    • 开启访问日志文件记录
      PUT /_cluster/settings
      {
        "persistent": {
          "flowcontrol.accesslog.enabled": true  
         }
      }
    • 关闭访问日志文件记录
      PUT /_cluster/settings
      {
        "persistent": {
          "flowcontrol.accesslog.enabled": false
         }
      }