Skip to main content

Parameters

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

  • endpoint_addrs

    array[string]


    required


    Loki API base URLs, such as http://127.0.0.1:3100. If multiple endpoints are configured, the log will be pushed to a randomly determined endpoint from the list.

  • endpoint_uri

    string


    default: /loki/api/v1/push


    URI path to the Loki ingest endpoint.

  • tenant_id

    string


    default: fake


    Loki tenant ID. According to Loki's multi-tenancy documentation, the default value is set to fake under single-tenancy.

  • log_labels

    object


    default: {job = "apisix"}


    Loki log label. Support built-in variables and constant strings in values. Variables should be prefixed with a $ sign. For example, the label can be {"origin" = "apisix"} or {"origin" = "$remote_addr"}.

  • ssl_verify

    boolean


    default: false


    If true, verify Loki's SSL certificates.

  • timeout

    integer


    default: 3000


    vaild vaule:

    between 1 and 60000 inclusive


    Timeout for the Loki service HTTP call in milliseconds.

  • keepalive

    boolean


    default: true


    If true, keep the connection alive for multiple requests.

  • keepalive_timeout

    integer


    default: 60000


    vaild vaule:

    greater than or equal to 1000


    Keepalive timeout in milliseconds.

  • keepalive_pool

    integer


    default: 5


    vaild vaule:

    greater than or equal to 1


    Maximum number of connections in the connection pool.

  • 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 loki-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 this example for more details.

  • name

    string


    default: loki-logger


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

  • 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[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[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.

  • 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 IIISO 27001HIPAAGDPRRed Herring

Copyright © APISEVEN PTE. LTD 2019 – 2025. Apache, Apache APISIX, APISIX, and associated open source project names are trademarks of the

Apache Software Foundation