跳到主要内容

参数

请参阅 插件通用配置 了解所有插件可用的配置选项。

  • endpoint_addrs

    array[string]


    required


    Elasticsearch API 端点地址。如果配置了多个端点,它们将被随机写入。

  • field

    object


    required


    Elasticsearch 字段配置。

    • index

      string


      required


      Elasticsearch _index 字段。

      如果你使用的是 API7 企业版,index 支持在大括号中配置 内置变量lua 时间格式 以包含当前日期,例如 service-$host-{%Y-%m-%d}

    • type

      string


      required


      Elasticsearch _type 字段。

  • log_format

    object


    使用 JSON 格式的键值对自定义日志格式。值可以引用 内置变量

    从 APISIX 3.15.0 开始,支持最多 5 层深度的嵌套日志格式结构。在 API7 企业版中,仅支持扁平键值结构;暂不支持嵌套结构。

    你还可以使用 插件元数据 全局配置日志格式,这将为所有 elasticsearch-logger 插件实例配置日志格式。如果单个插件实例上配置的日志格式与插件元数据上配置的日志格式不同,则以单个插件实例上配置的日志格式为准。有关更多详细信息,请参阅 示例

  • auth

    object


    Elasticsearch 用户认证配置。

    • username

      string


      Elasticsearch 认证用户名。

    • password

      string


      Elasticsearch 认证密码。密钥在存储到 etcd 之前会使用 AES 加密。

  • ssl_verify

    boolean


    default: true


    如果为 true,则执行 SSL 验证。

  • timeout

    integer


    default: 10


    Elasticsearch 发送数据超时时间(秒)。

  • include_req_body

    boolean


    default: false


    如果为 true,则在日志中包含请求体。注意,如果请求体太大无法保存在内存中,由于 NGINX 的限制,它可能无法被记录。

  • include_req_body_expr

    array[array]


    一个或多个 APISIX 表达式 条件的数组。仅当 include_req_body 为 true 时使用。只有当此处配置的表达式计算结果为 true 时,才会记录请求体。

  • include_resp_body

    boolean


    default: false


    如果为 true,则在日志中包含响应体。

  • include_resp_body_expr

    array[array]


    一个或多个 APISIX 表达式 条件的数组。仅当 include_resp_body 为 true 时使用。只有当此处配置的表达式计算结果为 true 时,才会记录响应体。

插件元数据

  • log_format

    object


    使用 JSON 格式的键值对自定义日志格式。值可以引用 内置变量

    从 APISIX 3.15.0 开始,支持最多 5 层深度的嵌套日志格式结构。在 API7 企业版中,仅支持扁平键值结构;暂不支持嵌套结构。

  • max_pending_entries

    integer


    vaild vaule:

    大于或等于 1


    批处理器中允许的最大未处理条目数。当达到此限制时,新条目将被丢弃,直到积压减少。这有助于防止在记录器缓慢或不可用时出现内存峰值。

    此参数在 API7 企业版 3.8.17 及更高版本和 APISIX 3.15.0 及更高版本中可用。