https自签证书tls握手时错误或go系统错误处理

https自签证书tls握手时错误或go系统错误处理,第1张

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

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/994026.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存