批处理中日志打印注意事项

背景

在批处理程序中,都需要打印日志来追踪分析代码的执行逻辑和耗时等情况,但是如何更合理地打印日志才能避免日志对程序执行效率的影响呢?

具体

分析如下代码:
累计时间

    public static void  main(String[] args){
        Random random = new Random();
        long t1 = System.currentTimeMillis();
        for (int  i = 0;i<1000;i++){
            int j = random.nextInt(1000);
            long t2 = System.currentTimeMillis();
            logger.error("单个任务耗时:cost=" + (t2-t1));
        }
    }

不累计时间

    public static void  main(String[] args){
        Random random = new Random();

        for (int  i = 0;i<1000;i++){
            long t1 = System.currentTimeMillis();
            int j = random.nextInt(1000);
            long t2 = System.currentTimeMillis();
            logger.error("单个任务耗时:cost=" + (t2-t1));
        }
    }

从上面的代码可以发现,一行代码,执行一次和执行上万次,它耗时是不同的,因此,在批处理中,日志不能全部都打印出来,要根据随机算法打印很小一部分,能用于分析即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值