Skip to main content

Parameters

See plugin common configurations for configuration options available to all plugins.

  • endpoint_addrs

    array


    required


    ClickHouse endpoints.

  • database

    string


    required


    Name of the database to store the logs.

  • logtable

    string


    required


    Name of the table that stores the logs.

  • user

    string


    required


    ClickHouse username.

  • password

    string


    required


    ClickHouse password.

  • timeout

    integer


    default: 3


    vaild vaule:

    greater than 0


    Time to keep the connection alive for after sending a request.

  • ssl_verify

    boolean


    default: true


    If true, verify SSL.

  • log_format

    object


    Custom log format in key-value pairs in JSON format. Support built-in variables in values.

    You can also configure log format on a global scale using the plugin metadata, which configures the log format for all clickhouse-logger plugin instances. If the log format configured on the individual plugin instance differs from the log format configured on plugin metadata, the log format configured on the individual plugin instance takes precedence. See the example for more details.

  • include_req_body

    boolean


    default: false


    If true, include the request body in the log. Note that if the request body is too big to be kept in the memory, it can not be logged due to NGINX's limitations.

  • include_req_body_expr

    array


    An array of one or more conditions in the form of APISIX expressions. Used when the include_req_body is true. Request body would only be logged when the expressions configured here evaluate to true.

  • include_resp_body

    boolean


    default: false


    If true, include the response body in the log.

  • include_resp_body_expr

    array


    An array of one or more conditions in the form of APISIX expressions. Used when the include_resp_body is true. Response body would only be logged when the expressions configured here evaluate to true.

  • name

    string


    default: clickhouse logger


    Unique identifier of the batch processor. If you use Prometheus to monitor APISIX metrics, the name is exported in apisix_batch_process_entries.

  • batch_max_size

    integer


    default: 1000


    vaild vaule:

    greater than 0


    The number of log entries allowed in one batch. Once reached, the batch will be sent to the logging service. Setting this parameter to 1 means immediate processing.

  • inactive_timeout

    integer


    default: 5


    vaild vaule:

    greater than 0


    The maximum time in seconds to wait for new logs before sending the batch to the logging service. The value should be smaller than buffer_duration.

  • buffer_duration

    integer


    default: 60


    vaild vaule:

    greater than 0


    The maximum time in seconds from the earliest entry allowed before sending the batch to the logging service.

  • retry_delay

    integer


    default: 1


    vaild vaule:

    greater or equal to 0


    The time interval in seconds to retry sending the batch to the logging service if the batch was not successfully sent.

  • max_retry_count

    integer


    default: 60


    vaild vaule:

    greater or equal to 0


    The maximum number of unsuccessful retries allowed before dropping the log entries.


API7.ai Logo

API Management for Modern Architectures with Edge, API Gateway, Kubernetes, and Service Mesh.

Product

API7 Cloud

SOC2 Type IRed Herring

Copyright © APISEVEN Ltd. 2019 – 2024. Apache, Apache APISIX, APISIX, and associated open source project names are trademarks of the

Apache Software Foundation