跳到主要内容

参数

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

  • endpoint_addrs

    array


    required


    ClickHouse 端点地址。

  • database

    string


    required


    存储日志的数据库名称。

  • logtable

    string


    required


    存储日志的表名称。

  • user

    string


    required


    ClickHouse 用户名。

  • password

    string


    required


    ClickHouse 密码。

  • timeout

    integer


    default: 3


    vaild vaule:

    大于 0


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

  • ssl_verify

    boolean


    default: true


    如果设置为 true,验证 SSL。

  • log_format

    object


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

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

    你也可以通过配置 Plugin Metadata 来全局配置日志格式,这将对所有 clickhouse-logger 插件实例生效。如果单个插件实例配置的日志格式与插件元数据中配置的日志格式不同,则单个插件实例的配置优先级更高。有关更多详细信息,请参阅示例

  • 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 时,才会记录响应体。

  • name

    string


    default: clickhouse logger


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

  • batch_max_size

    integer


    default: 1000


    vaild vaule:

    大于 0


    每一批次允许的最大日志条目数。一旦达到该数值,批次将被发送到日志服务。将此参数设置为 1 意味着立即处理。

  • inactive_timeout

    integer


    default: 5


    vaild vaule:

    大于 0


    在将批次发送到日志服务之前,等待新日志的最长时间(以秒为单位)。该值应小于 buffer_duration

  • buffer_duration

    integer


    default: 60


    vaild vaule:

    大于 0


    批次中最旧条目在发送到日志服务之前允许保留的最长时间(以秒为单位)。

  • retry_delay

    integer


    default: 1


    vaild vaule:

    大于或等于 0


    如果批次发送失败,重试发送到日志服务的时间间隔(以秒为单位)。

  • max_retry_count

    integer


    default: 60


    vaild vaule:

    大于或等于 0


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

Plugin Metadata

  • 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 及以上中可用。