指标与日志设置

本页面介绍用于控制 MinIO 指标与日志相关行为的设置。 更多信息请参见 指标与告警

这些设置用于将常规 minio server 日志和审计日志发布到 HTTP webhook。 更完整的文档请参见 将服务日志或审计日志发布到外部服务

你可以通过以下方式建立或修改设置:

  • 在启动或重启 MinIO Server 之前,在宿主机系统上定义 环境变量。 如何定义环境变量,请参考所用操作系统的文档。
  • 使用 mc admin config set 定义 配置项

如果同时定义了环境变量和对应的配置项,MinIO 使用环境变量的值。

有些设置只有环境变量或配置项中的一种,而不是两者同时存在。

Prometheus 认证

此设置控制 MinIO 如何向 Prometheus 进行认证。

MINIO_PROMETHEUS_AUTH_TYPE

envvar

此设置没有对应的配置项。

指定 Prometheus 抓取端点 的认证模式。

  • jwt - 默认 MinIO 要求抓取客户端提供 JWT token 以认证请求。

    使用 mc admin prometheus generate 生成所需的 JWT bearer token。

  • public MinIO 不要求抓取客户端对其请求进行认证。

服务器日志

以下部分介绍将 minio server 日志发布到 HTTP webhook 端点的 MinIO 配置设置。 有关这些设置的更完整文档和使用教程,请参见 将服务日志发布到 HTTP Webhook

定义多个端点

你可以通过为每组相关日志环境变量追加唯一标识符 _ID,将多个 webhook 端点指定为日志目标。 例如,以下设置定义了两个不同的服务器日志 webhook 端点:

export MINIO_LOGGER_WEBHOOK_ENABLE_PRIMARY="on"
export MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_PRIMARY="TOKEN"
export MINIO_LOGGER_WEBHOOK_ENDPOINT_PRIMARY="http://webhook-1.example.net"

export MINIO_LOGGER_WEBHOOK_ENABLE_SECONDARY="on"
export MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_SECONDARY="TOKEN"
export MINIO_LOGGER_WEBHOOK_ENDPOINT_SECONDARY="http://webhook-2.example.net"
mc admin config set logger_webhook:primary \
   endpoint="http://webhook-01.example.net" [ARGUMENTS=VALUE ...]

mc admin config set logger_webhook:secondary \
   endpoint="http://webhook-02.example.net" [ARGUMENTS=VALUE ...]

设置

Enable

MINIO_LOGGER_WEBHOOK_ENABLE

envvar

指定 "on" 以启用将 minio server 日志发布到 HTTP webhook 端点。

需要同时指定 MINIO_LOGGER_WEBHOOK_ENDPOINT

logger_webhook

mc-conf

用于配置将日志发送到 HTTP webhook 端点的顶层配置键。

端点

必填

MINIO_LOGGER_WEBHOOK_ENDPOINT

envvar

logger_webhook endpoint

mc-conf

webhook 的 HTTP 端点。

认证 Token

可选

MINIO_LOGGER_WEBHOOK_AUTH_TOKEN

envvar

端点所需类型的认证 token。 对于不需要认证的端点可省略。

为支持多种 token 类型,MinIO 会使用完全按原样指定的值构造请求认证头。 具体端点可能要求你附加额外信息。

例如:对于 Bearer token,请添加前缀 Bearer

export MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_myendpoint="Bearer 1a2b3c4f5e"

请根据端点要求调整该值。 自定义认证格式可能类似如下:

export MINIO_LOGGER_WEBHOOK_AUTH_TOKEN_xyz="ServiceXYZ 1a2b3c4f5e"

详情请参阅目标服务的文档。

该环境变量对应 logger_webhook auth_token 配置项。

logger_webhook auth_token

mc-conf

端点所需类型的认证 token。 对于不需要认证的端点可省略。

为支持多种 token 类型,MinIO 会使用完全按原样指定的值构造请求认证头。 具体端点可能要求你附加额外信息。

例如:对于 Bearer token,请添加前缀 Bearer

   mc admin config set myminio logger_webhook   \
      endpoint="https://webhook-1.example.net"  \
      auth_token="Bearer 1a2b3c4f5e"

请根据端点要求调整该值。 自定义认证格式可能类似如下:

   mc admin config set myminio logger_webhook   \
      endpoint="https://webhook-1.example.net"  \
      auth_token="ServiceXYZ 1a2b3c4f5e"

详情请参阅目标服务的文档。

批大小

可选

MINIO_LOGGER_WEBHOOK_BATCH_SIZE

envvar

logger_webhook batch_size

mc-conf

按批次收集并发送指定数量的事件到 webhook。 如果未设置,MinIO 每个请求发送一个事件。

客户端证书

可选

还需要同时设置 Client Key

MINIO_LOGGER_WEBHOOK_CLIENT_CERT

envvar

logger_webhook client_cert

mc-conf

用于向 webhook logger 认证的 mTLS 证书路径。

客户端密钥

可选

如果定义了 Client Certificate,则为必填。

MINIO_LOGGER_WEBHOOK_CLIENT_KEY

envvar

logger_webhook client_key

mc-conf

用于向 webhook logger 服务认证的 mTLS 证书密钥路径。

代理

可选

MINIO_LOGGER_WEBHOOK_PROXY

envvar

logger_webhook proxy

mc-conf

定义在 MinIO 与外部 webhook 通信时供 webhook logger 使用的代理。

队列目录

可选

MINIO_LOGGER_WEBHOOK_QUEUE_DIR

envvar

logger_webhook queue_dir

mc-conf

指定目录路径(例如 /opt/minio/events)以启用 MinIO 对未投递消息的持久事件存储。 MinIO 进程必须对指定目录具有读取、写入和列举权限。

当 webhook 服务离线时,MinIO 会将未投递事件存储到指定存储中,并在连接恢复后回放这些事件。

队列大小

可选

MINIO_LOGGER_WEBHOOK_QUEUE_SIZE

envvar

logger_webhook queue_size

mc-conf

用于 logger webhook 目标队列大小的整数值。

Webhook 审计日志

以下部分介绍用于将审计日志发布到 HTTP webhook 端点的 MinIO 环境变量。 有关这些环境变量的更完整文档和使用教程,请参见 将审计日志发布到 HTTP Webhook

多个目标

你可以通过为每组相关日志设置追加唯一标识符 _ID,将多个 webhook 端点指定为审计日志目标。

例如,以下命令设置了两个不同的审计日志 webhook 端点:

export MINIO_AUDIT_WEBHOOK_ENABLE_PRIMARY="on"
export MINIO_AUDIT_WEBHOOK_AUTH_TOKEN_PRIMARY="TOKEN"
export MINIO_AUDIT_WEBHOOK_ENDPOINT_PRIMARY="http://webhook-1.example.net"
export MINIO_AUDIT_WEBHOOK_CLIENT_CERT_SECONDARY="/tmp/cert.pem"
export MINIO_AUDIT_WEBHOOK_CLIENT_KEY_SECONDARY="/tmp/key.pem"

export MINIO_AUDIT_WEBHOOK_ENABLE_SECONDARY="on"
export MINIO_AUDIT_WEBHOOK_AUTH_TOKEN_SECONDARY="TOKEN"
export MINIO_AUDIT_WEBHOOK_ENDPOINT_SECONDARY="http://webhook-1.example.net"
export MINIO_AUDIT_WEBHOOK_CLIENT_CERT_SECONDARY="/tmp/cert.pem"
export MINIO_AUDIT_WEBHOOK_CLIENT_KEY_SECONDARY="/tmp/key.pem"
audit_webhook

mc-conf

用于定义 HTTP webhook 目标并发布 MinIO audit logs 的顶层配置键。

使用 mc admin config set 设置或更新 HTTP webhook 目标。 以空格(" ")分隔列表的形式指定其他可选参数。

mc admin config set audit_webhook \
   endpoint="http://webhook.example.net" [ARGUMENTS=VALUE ...]

你可以通过在顶层键后追加 [:name] 来指定多个 HTTP webhook 目标。 例如,以下命令分别将两个不同的 HTTP webhook 目标设置为 primarysecondary

mc admin config set audit_webhook:primary \
   endpoint="http://webhook-01.example.net" [ARGUMENTS=VALUE ...]


mc admin config set audit_webhook:secondary \
   endpoint="http://webhook-02.example.net" [ARGUMENTS=VALUE ...]

设置

Enable

MINIO_AUDIT_WEBHOOK_ENABLE

envvar

指定 "on" 以启用向 HTTP webhook 端点发布审计日志。

需要同时指定 MINIO_AUDIT_WEBHOOK_ENDPOINT

配置一个 audit webhook 即表示启用该目标。 不存在单独的 enable 配置项。

端点

必填

MINIO_AUDIT_WEBHOOK_ENDPOINT

envvar

audit_webhook endpoint

mc-conf

webhook 的 HTTP 端点。

认证 Token

可选

MINIO_AUDIT_WEBHOOK_AUTH_TOKEN

envvar

audit_webhook auth_token

mc-conf

端点所需类型的认证 token。 对于不需要认证的端点可省略。

为支持多种 token 类型,MinIO 会使用完全按原样指定的值构造请求认证头。 具体端点可能要求你附加额外信息。

例如,对于 Bearer token,请添加前缀 Bearer

export MINIO_AUDIT_WEBHOOK_AUTH_TOKEN_myendpoint="Bearer 1a2b3c4f5e"

请根据端点要求调整该值。

自定义认证格式可能类似如下:

export MINIO_AUDIT_WEBHOOK_AUTH_TOKEN_xyz="ServiceXYZ 1a2b3c4f5e"
mc admin config set myminio audit_webhook       \
         endpoint="http://webhook.example.net"  \
         auth_token="Bearer 1a2b3c4f5e"

请根据端点要求调整该值。

自定义认证格式的命令可能类似如下:

mc admin config set myminio audit_webhook       \
         endpoint="http://webhook.example.net"  \
         auth_token="ServiceXYZ 1a2b3c4f5e"

详情请参阅目标服务的文档。

批大小

可选

MINIO_AUDIT_WEBHOOK_BATCH_SIZE

envvar

audit_webhook batch_size

mc-conf

按批次收集并发送指定数量的事件到 webhook。 如果未设置,MinIO 每个请求发送一个事件。

客户端证书

可选

MINIO_AUDIT_WEBHOOK_CLIENT_CERT

envvar

还需要同时指定 MINIO_AUDIT_WEBHOOK_CLIENT_KEY

audit_webhook client_cert

mc-conf

还需要同时指定 client_key

提交给 HTTP webhook 的 x.509 客户端证书。 对于不要求客户端提供已知 TLS 证书的 webhook 可省略。

客户端密钥

可选

MINIO_AUDIT_WEBHOOK_CLIENT_KEY

envvar

还需要同时指定 MINIO_AUDIT_WEBHOOK_CLIENT_CERT

audit_webhook client_key

mc-conf

需要指定 client_cert

提交给 HTTP webhook 的 x.509 私钥。 对于不要求客户端提供已知 TLS 证书的 webhook 可省略。

队列目录

可选

MINIO_AUDIT_WEBHOOK_QUEUE_DIR

envvar

audit_webhook queue_dir

mc-conf

指定目录路径(例如 /opt/minio/events)以启用 MinIO 对未投递消息的持久事件存储。 MinIO 进程必须对指定目录具有读取、写入和列举权限。

当 webhook 服务离线时,MinIO 会将未投递事件存储到指定存储中,并在连接恢复后回放这些事件。

队列大小

可选

MINIO_AUDIT_WEBHOOK_QUEUE_SIZE

envvar

audit_webhook queue_size

mc-conf

用于 audit webhook 目标队列大小的整数值。 默认值为 100000 个事件。

Kafka 审计日志

以下部分介绍用于将审计日志发布到 Kafka broker 的 MinIO 环境变量。

audit_kafka

mc-conf

用于定义 Kafka broker 目标并发布 MinIO audit logs 的顶层配置键。

使用 mc admin config set 设置或更新 Kafka 审计目标。 以空格(" ")分隔列表的形式指定其他可选参数。

mc admin config set audit_kafka \
   brokers="https://kafka-endpoint.example.net:9092" [ARGUMENTS=VALUE ...]

设置

Enable

必填

MINIO_AUDIT_KAFKA_ENABLE

envvar

设置为 "on" 以启用该目标。

设置为 "off" 以禁用该目标。

该值没有对应的配置项。 使用环境变量可禁用已配置的 audit webhook 目标。

Brokers

必填

MINIO_AUDIT_KAFKA_BROKERS

envvar

audit_kafka brokers

mc-conf

Kafka broker 地址的逗号分隔列表:

brokers="https://kafka-1.example.net:9092,https://kafka-2.example.net:9092"

至少必须有一个 broker 在线且 MinIO server 可达,才能初始化并发送审计日志事件。 MinIO 会按指定顺序检查每个 broker。

Topic

必填

MINIO_AUDIT_KAFKA_TOPIC

envvar

audit_kafka topic

mc-conf

与 MinIO 审计日志事件关联的 Kafka topic 名称。

TLS

可选

MINIO_AUDIT_KAFKA_TLS

envvar

audit_kafka tls

mc-conf

设置为 "on" 以启用到指定 Kafka brokers 的 TLS 连接。

默认值为 "off"

TLS Skip Verify

可选

MINIO_AUDIT_KAFKA_TLS_SKIP_VERIFY

envvar

audit_kafka tls_skip_verify

mc-conf

设置为 "on" 以指示 MinIO 跳过对 Kafka broker TLS 证书的校验。

你可以使用该选项连接使用未知签发方 TLS 证书的 Kafka brokers,例如自签名证书或企业内部 CA(Certificate Authorities)签发的证书。

默认情况下,MinIO 会同时使用系统信任库以及 MinIO CA directory 中的内容来校验远端客户端 TLS 证书。

默认值为 "off",即严格校验 TLS 证书。

SASL

可选

MINIO_AUDIT_KAFKA_SASL

envvar

需要指定 MINIO_AUDIT_KAFKA_SASL_USERNAMEMINIO_AUDIT_KAFKA_SASL_PASSWORD

audit_kafka sasl

mc-conf

需要指定 sasl_usernamesasl_password

设置为 "on" 以指示 MinIO 使用 SASL 对 Kafka brokers 进行认证。

SASL Username

可选

MINIO_AUDIT_KAFKA_SASL_USERNAME

envvar

需要指定 MINIO_AUDIT_KAFKA_SASLMINIO_AUDIT_KAFKA_SASL_PASSWORD

audit_kafka sasl_username

mc-conf

需要指定 saslsasl_password

MinIO 用于对 Kafka brokers 进行认证的 SASL 用户名。

SASL Password

可选

MINIO_AUDIT_KAFKA_SASL_PASSWORD

envvar

需要指定 MINIO_AUDIT_KAFKA_SASLMINIO_AUDIT_KAFKA_SASL_USERNAME

audit_kafka sasl_password

mc-conf

需要指定 saslsasl_username

MinIO 用于对 Kafka brokers 进行认证的 SASL 密码。

SASL Mechanism

可选

MINIO_AUDIT_KAFKA_SASL_MECHANISM

envvar

audit_kafka sasl_mechanism

mc-conf

MinIO 用于对 Kafka brokers 进行认证的 SASL 机制。

默认值为 plain

TLS Client Auth

可选

MINIO_AUDIT_KAFKA_TLS_CLIENT_AUTH

envvar

需要指定 MINIO_AUDIT_KAFKA_CLIENT_TLS_CERTMINIO_AUDIT_KAFKA_CLIENT_TLS_KEY

audit_kafka tls_client_auth

mc-conf

需要指定 client_tls_certclient_tls_key

设置为 "on" 以指示 MinIO 使用 mTLS 对 Kafka brokers 进行认证。

Client TLS Certificate

可选

MINIO_AUDIT_KAFKA_CLIENT_TLS_CERT

envvar

audit_kafka client_tls_cert

mc-conf

用于 mTLS 认证的 TLS 客户端证书路径。

Client TLS Key

可选

MINIO_AUDIT_KAFKA_CLIENT_TLS_KEY

envvar

audit_kafka client_tls_key

mc-conf

用于 mTLS 认证的 TLS 客户端私钥路径。

Version

可选

MINIO_AUDIT_KAFKA_VERSION

envvar

audit_kafka version

mc-conf

MinIO 在指定端点期望的 Kafka broker 版本。

如果 Kafka broker 版本与此设置指定的不匹配,MinIO 会返回错误。

Comment

可选

MINIO_AUDIT_KAFKA_COMMENT

envvar

audit_kafka comment

mc-conf

与该配置关联的注释。

队列目录

可选

MINIO_AUDIT_KAFKA_QUEUE_DIR

envvar

audit_kafka queue_dir

mc-conf

指定目录路径(例如 /opt/minio/events)以启用 MinIO 对未投递消息的持久事件存储。

当 Kafka 服务离线时,MinIO 会将未投递事件存储到指定存储中,并在连接恢复后回放这些事件。

队列大小

可选

MINIO_AUDIT_KAFKA_QUEUE_SIZE

envvar

audit_kafka queue_size

mc-conf

指定未投递消息的最大上限。 默认值为 100000

最后修改 August 2, 2026: init commit (8338d5b)

本页部分内容改编自 MinIO 对象存储文档,© 2020–至今 MinIO, Inc.,依据 CC BY 4.0 授权,由 Silo 项目转换与维护。归属与署名

本页为非官方中文翻译。如与英文原文有出入,以英文原文为准。