Rsyslog仅转发UDP日志场景:单队列是否满足需求?
Docker日志转发队列配置疑问解答
关于单队列是否够用的问题
就你这个仅做UDP接收日志、TLS转发至中央日志服务器的场景,单队列完全能满足需求。多队列的核心作用是分流不同类型日志、同时处理多类IO密集型任务(比如一边写本地文件一边发远端),你这里只有日志转发这一项操作,配置多队列只会增加不必要的调度开销,纯粹浪费资源。
直接队列模式下的日志重试问题
如果把“发送至收集器”设为直接队列模式(无队列),发送操作是同步执行的:当中央服务器宕机或网络中断时,当前日志的发送会直接失败,不会自动重新进入主消息队列。这种模式只适合能接受日志丢失的场景,要是你需要保证日志不丢,必须给发送操作配置独立队列,让失败的日志暂存队列中,等网络或服务器恢复后自动重试。
移除写文件操作后Action Q的作用
如果原场景中的Action Q是专门为写入/var/log/messages这个操作设置的,那移除写文件操作后,这个队列就完全没用了,继续保留只会多一层队列调度环节,降低转发效率。直接将转发操作挂载到主队列之后即可,无需经过额外的Action Q,这样能提升整体转发速度。
内容的提问来源于stack exchange,提问作者Ashlanfox
相关产品推荐
相关产品推荐

