当前位置: 首页 > news >正文

golang支持优雅关闭和core错误记录

#经过测试,不能使用 ENTRYPOINT ["/modapi/modapi", "1>> /dev/null","2>> ./logs/stderr.log"],原因是虽然这种方案可以
#保证modapi命令为1号程序,能够接收到os的signal信号。但是如果程序core了,会直接导致1号进程core。则docker直接退出并且错误没有写入到
#stderr.log文件中。因此通过start.sh传递terminated信号,同时可以保证core时候堆栈信息可以写入到stderr.log中
CMD ["/bin/sh", "/modapi/start.sh"]
#!/bin/sh
# Define function to forward signals
term_handler() {echo "Forwarding SIGTERM to child process"kill -TERM "$child_pid"wait "$child_pid"
}# Trap signals
trap term_handler SIGTERM# Start the child process
/modapi/modapi 1>> /dev/null 2>> /modapi/logs/stderr.log &
child_pid=$!# Wait for the child process to exit
wait "$child_pid"
http://www.lryc.cn/news/61766.html

相关文章:

  • Basics of Container Isolation 容器隔离的实现原理
  • EBS R12.1 注册客户化应用的步骤
  • 算法记录 | Day38 动态规划
  • PMP项目管理-[第六章]进度管理
  • Python变量
  • 准备换工作的看过来~
  • 免费AI人工智能在线写作伪原创-百度ai自动写文章
  • 互联网摸鱼日报(2023-04-21)
  • 5.3、web服务器简介HTTP协议
  • 【观察】华为:新一代楼宇网络,使能绿建智慧化
  • 【C# .NET】chapter 13 使用多任务改进性能和可扩展性
  • CA(证书颁发机构)
  • 辛弃疾最有代表性的十首词
  • MC9S12G128开发板—实现按键发送CAN报文指示小车移动功能
  • 尚融宝22-提交借款申请
  • 机器学习在生态、环境经济学中的实践技术应用及论文写作
  • Android硬件通信之 WIFI通信
  • 面试官:“请描述一下Android系统的启动流程”
  • k8s delete node 后 重启kubelet会自己加入到集群 ?
  • REXROTH液压方向阀安装须知
  • 【数据结构实验】哈夫曼树
  • 浏览器不好用?插件来帮忙
  • Qt Quick - 容器控件综述
  • 面试题30天打卡-day06
  • Spring Boot的基础使用和< artifactId>spring-boot-maven-plugin</ artifactId>爆红的处理
  • 项目管理中的必不可少的强大工具有哪些?
  • 嵌入式学习笔记——SPI通信的应用
  • .Net下企业应用系统架构构建心得
  • 【社区图书馆】关于Mybatis原理学习的读后感
  • C++ Primer阅读笔记--表达式和运算符的使用