跳到主要内容

参数

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

  • uri

    string


    必填


    HTTP(S) 服务器的 URI。

  • auth_header

    string


    HTTP(S) 服务器所需的授权头(如果需要)。该值在存储到 etcd 前会使用 AES 加密。

  • timeout

    integer


    默认值:3


    有效值:

    大于 0


    发送请求后保持连接活动的时间。

  • log_format

    object


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

    在 APISIX 3.15.0 及更高版本中,日志格式嵌套结构支持最多五层深度。在 API7 企业版中,仅支持扁平键值结构;尚不支持嵌套结构。

    你还可以使用插件元数据在全局范围内配置日志格式,这将为所有 http-logger 插件实例配置日志格式。如果单个插件实例上配置的日志格式与插件元数据上配置的日志格式不同,则以单个插件实例上配置的日志格式为准。请参阅示例了解更多详情。

  • log_format_extra

    object


    在默认日志条目之上叠加的额外日志字段,使用 JSON 格式的键值对。取值可引用内置变量。与会替换整个默认日志条目的 log_format 不同,log_format_extra 会保留默认条目并在其上添加所配置的字段。当设置了 log_format 时,log_format_extra 会被忽略。自 API7 企业版 3.9.15 版本起可用。

  • include_req_body

    boolean


    默认值:false


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

  • include_req_body_expr

    array[array]


    一个或多个 APISIX 表达式 形式的条件数组。当 include_req_body 为 true 时使用。仅当此处配置的表达式评估为 true 时,才会记录请求体。

  • include_resp_body

    boolean


    默认值:false


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

  • include_resp_body_expr

    array[array]


    一个或多个 APISIX 表达式 形式的条件数组。当 include_resp_body 为 true 时使用。仅当此处配置的表达式评估为 true 时,才会记录响应体。

  • max_req_body_bytes

    integer


    默认值:524288


    有效值:

    大于或等于 1


    日志中包含的请求体大小上限(字节)。如果请求体超过此值,将被截断。自 APISIX 3.16.0 起可用。

  • max_resp_body_bytes

    integer


    默认值:524288


    有效值:

    大于或等于 1


    日志中包含的响应体大小上限(字节)。如果响应体超过此值,将被截断。自 APISIX 3.16.0 起可用。

  • concat_method

    string


    默认值:json


    有效值:

    jsonnew_line


    连接日志的方法。设置为 json 时,对所有挂起的日志使用 json.encode。设置为 new_line 时,也使用 json.encode,但使用换行符 连接行。

  • ssl_verify

    boolean


    默认值:false


    如果为 true,则验证服务器的 SSL 证书。

  • name

    string


    默认值:http logger


    批处理器中的插件唯一标识符。如果使用 Prometheus 监控 APISIX 指标,该名称会导出到 apisix_batch_process_entries 中。

  • batch_max_size

    integer


    默认值:1000


    有效值:

    大于 0


    一个批次允许的日志条目数。达到该数量后,批次会发送到日志服务。将此参数设置为 1 可启用立即处理。

  • inactive_timeout

    integer


    默认值:5


    有效值:

    大于 0


    发送批次前等待新日志的最长时间,单位为秒。该值应小于 buffer_duration

  • buffer_duration

    integer


    默认值:60


    有效值:

    大于 0


    从最早条目起计,发送批次前允许等待的最长时间,单位为秒。

  • retry_delay

    integer


    默认值:1


    有效值:

    大于或等于 0


    批次失败后重试前的等待时间,单位为秒。

  • max_retry_count

    integer


    默认值:0


    有效值:

    大于或等于 0


    丢弃日志条目前允许的最大失败重试次数。

插件元数据

  • log_format

    object


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

    在 APISIX 3.15.0 及更高版本中,日志格式嵌套结构支持最多五层深度。在 API7 企业版中,仅支持扁平键值结构;尚不支持嵌套结构。

  • log_format_extra

    object


    在默认日志条目之上叠加的额外日志字段,使用 JSON 格式的键值对。取值可引用内置变量。与会替换整个默认日志条目的 log_format 不同,log_format_extra 会保留默认条目并在其上添加所配置的字段。当设置了 log_format 时,log_format_extra 会被忽略。自 API7 企业版 3.9.15 版本起可用。

  • max_pending_entries

    integer


    有效值:

    大于或等于 1


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

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