log_zmq_endpoint

'log_zmq_endpoint' 指令在 NGINX 中配置用于通过 ZeroMQ 发送日志消息的端点。

语法log_zmq_endpoint ;
默认值none
上下文http
参数2

说明

'log_zmq_endpoint' 指令是 NGINX 的 ZeroMQ 日志模块的一部分,允许用户指定通过 ZeroMQ 发送日志消息的端点。该指令接受两个参数:日志记录器实例的名称和端点路径。端点非常重要,因为它指出日志消息应发布的位置,从而在日志处理和收集方式上提供灵活性,无论是通过进程间通信 (IPC) 还是通过网络使用 TCP 或 ZeroMQ 支持的其他协议。通过使用此指令,系统管理员可以定义多个日志端点,每个端点可关联不同的日志配置,从而促进日志管理的更好组织和数据流。

第一个参数对应日志记录器实例,必须与相关 'log_zmq_server' 指令中指定的名称匹配。第二个参数指定日志端点,可通过多种通信方式使用,例如 IPC 或 TCP。通过使用 ZeroMQ,日志消息可以异步发送,使 NGINX 在高流量峰值时也不会因为日志操作而阻塞,从而保持性能。此功能在需要流处理或实时日志数据分析的环境中特别有用,因为日志可以高效分发而不会丢失。

配置示例

http {
    log_zmq_server main '/tmp/main.ipc' ipc 4 1000;
    log_zmq_endpoint main '/topic/';
    log_zmq_format main '{"remote_addr":"$remote_addr"}';
}

确保已定义的 <definition_name> 与相应的 'log_zmq_server' 指令中指定的项匹配。

验证端点路径是否已按照所需的通信方式 (IPC/TCP) 正确格式化。

请记住日志消息是异步发送的;确保订阅方正确处理。

← 返回所有指令