所以我正在尝试使用带有 fluentd 的 unix sockets 进行日志记录任务并随机发现,偶尔会出现错误
拨号:{socket_name} 资源暂时不可用
关于为什么会发生这种情况的任何想法?
我尝试添加“重试”逻辑以减少错误,但有时仍会发生。
另外,对于fluntd,我们使用unix sockets通信的默认配置
func connect() {
var connection net.Conn
var err error
for i := 0; i < retry_count; i++ {
connection, err = net.Dial("unix", path_to_socket)
if err == nil {
break
}
time.Sleep(time.Duration(math.Exp2(float64(retry_count))) * time.Millisecond)
}
if err != nil {
fmt.Println(err)
} else {
connection.Write(data_to_send_socket)
}
defer connection.Close()
}
心有法竹
相关分类