最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot日志沒(méi)有記錄異常問(wèn)題及解決

 更新時(shí)間:2025年02月19日 09:30:07   作者:FlowingRiver  
在Spring Boot項(xiàng)目中,定時(shí)任務(wù)在服務(wù)器上運(yùn)行時(shí)報(bào)錯(cuò)但未記錄日志,本地運(yùn)行時(shí)控制臺(tái)能打印報(bào)錯(cuò)信息,但日志中無(wú)記錄,問(wèn)題出在報(bào)錯(cuò)發(fā)生在線程池中,通過(guò)繼承ThreadPoolExecutor并重寫afterExecute方法,可以將異常信息記錄到日志中

springboot 日志沒(méi)有記錄異常

背景

springboot項(xiàng)目,放到服務(wù)器上跑,定時(shí)任務(wù)運(yùn)行過(guò)程中中斷,查看日志卻發(fā)現(xiàn)沒(méi)有報(bào)錯(cuò)。

在本地跑,發(fā)現(xiàn)控制臺(tái)能打印報(bào)錯(cuò)信息,而日志也沒(méi)有記錄報(bào)錯(cuò)。

經(jīng)排查,發(fā)現(xiàn)是因?yàn)閳?bào)錯(cuò)出現(xiàn)在線程池中,沒(méi)有在日志中記錄。

原先使用線程池:

ExecutorService executorService = Executors.newFixedThreadPool(15);

解決

新建類繼承ThreadPoolExecutor,重寫afterExecute方法。

@Slf4j
public class TaskExecutor extends ThreadPoolExecutor {
    public TaskExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue) {
        super(corePoolSize, maximumPoolSize, keepAliveTime, unit, workQueue);
    }

    @Override
    protected void afterExecute(Runnable r, Throwable t) {
        super.afterExecute(r, t);
        if (t != null) {
            log.error(t.getMessage(), t);
        }
    }
}

使用:

   ExecutorService executorService = new TaskExecutor(10, 15,
            0L, TimeUnit.SECONDS,
            new LinkedBlockingQueue<>());

日志中就有異常信息了。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Javadoc標(biāo)簽和Javadoc注釋規(guī)范說(shuō)明

    Javadoc標(biāo)簽和Javadoc注釋規(guī)范說(shuō)明

    這篇文章主要介紹了Javadoc標(biāo)簽和Javadoc注釋規(guī)范說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-02-02
  • springboot 動(dòng)態(tài)數(shù)據(jù)源的實(shí)現(xiàn)方法(Mybatis+Druid)

    springboot 動(dòng)態(tài)數(shù)據(jù)源的實(shí)現(xiàn)方法(Mybatis+Druid)

    這篇文章主要介紹了springboot 動(dòng)態(tài)數(shù)據(jù)源的實(shí)現(xiàn)方法(Mybatis+Druid),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • SpringBoot啟動(dòng)時(shí)執(zhí)行某些操作的8種方式

    SpringBoot啟動(dòng)時(shí)執(zhí)行某些操作的8種方式

    在真實(shí)項(xiàng)目開發(fā)過(guò)程中,我們經(jīng)常會(huì)需要在程序啟動(dòng)時(shí)執(zhí)行一些特定的業(yè)務(wù)操作,比如系統(tǒng)預(yù)熱、系統(tǒng)初始化等,小編為大家介紹 8 種實(shí)現(xiàn)方式,需要的朋友可以參考下
    2025-10-10
  • Java中快速排序優(yōu)化技巧之隨機(jī)取樣、三數(shù)取中和插入排序

    Java中快速排序優(yōu)化技巧之隨機(jī)取樣、三數(shù)取中和插入排序

    快速排序是一種常用的基于比較的排序算法,下面這篇文章主要給大家介紹了關(guān)于Java中快速排序優(yōu)化技巧之隨機(jī)取樣、三數(shù)取中和插入排序的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • java對(duì)ArrayList排序代碼示例

    java對(duì)ArrayList排序代碼示例

    本文通過(guò)代碼示例給大家介紹java對(duì)arraylist排序,代碼簡(jiǎn)潔易懂,感興趣的朋友一起學(xué)習(xí)吧
    2015-11-11
  • 實(shí)例解析觀察者模式及其在Java設(shè)計(jì)模式開發(fā)中的運(yùn)用

    實(shí)例解析觀察者模式及其在Java設(shè)計(jì)模式開發(fā)中的運(yùn)用

    觀察者模式定義了一種一對(duì)多的依賴關(guān)系,讓多個(gè)觀察者對(duì)象同時(shí)監(jiān)聽某一個(gè)主題對(duì)象,這個(gè)主題對(duì)象在狀態(tài)上發(fā)生變化時(shí),會(huì)通知所有觀察者對(duì)象,使它們能夠自動(dòng)更新自己.下面就以實(shí)例解析觀察者模式及其在Java設(shè)計(jì)模式開發(fā)中的運(yùn)用
    2016-05-05
  • 詳解JAVA 函數(shù)式編程

    詳解JAVA 函數(shù)式編程

    這篇文章主要介紹了JAVA 函數(shù)式編程的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • 使用Java 8 Lambda表達(dá)式將實(shí)體映射到DTO的操作

    使用Java 8 Lambda表達(dá)式將實(shí)體映射到DTO的操作

    這篇文章主要介紹了使用Java 8 Lambda表達(dá)式將實(shí)體映射到DTO的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08
  • SpringMVC事件監(jiān)聽ApplicationListener實(shí)例解析

    SpringMVC事件監(jiān)聽ApplicationListener實(shí)例解析

    這篇文章主要介紹了SpringMVC事件監(jiān)聽ApplicationListener實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 關(guān)于maven項(xiàng)目中使用BCrypt加密方式

    關(guān)于maven項(xiàng)目中使用BCrypt加密方式

    BCrypt是一種基于Blowfish加密算法的密碼散列函數(shù),用于安全存儲(chǔ)和驗(yàn)證用戶密碼,它通過(guò)引入鹽和工作因子增加計(jì)算復(fù)雜度,有效防止彩虹表攻擊和破解,BCrypt具備適應(yīng)性工作因子、成本參數(shù)調(diào)整、迭代哈希和密鑰擴(kuò)展等特點(diǎn),被廣泛應(yīng)用于Web應(yīng)用程序的安全性設(shè)計(jì)中
    2024-10-10

最新評(píng)論

新泰市| 姜堰市| 绥棱县| 油尖旺区| 定州市| 兴和县| 六枝特区| 瑞金市| 石楼县| 柯坪县| 临安市| 独山县| 岢岚县| 柘荣县| 吴旗县| 专栏| 临清市| 荥经县| 喀喇沁旗| 沈丘县| 四川省| 河池市| 南丰县| 石狮市| 洛阳市| 新兴县| 即墨市| 峡江县| 泗水县| 巢湖市| 盖州市| 康乐县| 宝兴县| 通州市| 车致| 同仁县| 辽中县| 潞西市| 德清县| 五家渠市| 鹤山市|