使用Springboot的Scheduled
註解框架執行定時任務,發現線上忽然不打任何日誌了,咱們要找到它不打日誌的緣由java
jps 或 top找到執行java程序的pid
jstack -l pid > out.dump
複製代碼
而後退出容器後,使用docker cp 容器id:out.dump out.dump
拿到本機目錄,後用ftp拿到該文件docker
out.dump
上傳上去分析想要找到對應線程,首先你日誌得把對應的線程信息打印出來,根據以前打印日誌的線程信息,能夠知道該找哪一個線程bash
而後找到對應線程打開多線程
找到了阻塞的緣由,因爲多線程中countdown
以前代碼運行報錯,致使不能執行countdown
,使得await
阻塞了,我把countdown
放到finally
中就能夠解決該問題了框架