https自签证书tls握手时报错:2021/11/03 09:22:53 http: TLS handshake error from ip:port: remote error: tls: unknown certificate,
这属于go包系统级别的错误,不可捕获和忽略,只能用方法3来减少错误日志文件大小。
1.浏览器添加客户端证书和CA根证书;
2.系统级别的崩溃信息:syscall.Dup2
eg: fatal error: runtime: out of memory
代码:
f, e := os.OpenFile("./sysErr.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err == nil {
syscall.Dup2(int(f.Fd()), 1)
syscall.Dup2(int(f.Fd()), 2)
//交叉编译:arm环境无Dup2()
syscall.Dup3(int(f.Fd()), int(os.Stdout.Fd()),0)
syscall.Dup3(int(f.Fd()),int(os.Stderr.Fd()) ,0)
}
普通 os.Stderr:
if err == nil {
os.Stdout = f
os.Stderr = f
}
3.分割nohup日志:
current_date=`date -d "-1 day" "+%Y%m%d"`
split -b 65535000 -d -a 4 nohup.out ./log/log_${current_date}_
或docker容器的start.sh中:
#! /bin/bash
nohup ./main >/dev/null 2>./conf/error.log &
while [ 1 ]
do
sleep 1d
cat /dev/null > ./conf/error.log
done
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)