zoukankan      html  css  js  c++  java
  • jar包启动的日志管理问题

    直接使用java命令运行jar,快速轻便,但是日志管理是个难题,因为服务不能中断,那么日积月累,必然导致日志文件占满磁盘空间。

    需求:只保留一周的日志文件。

    思路:对日志文件使用追加覆盖、删除日志文件内容,经过试验测试发现以下异常:

    问题一:

    使用命令启动java的一个jar包:

    root@test:/test# nohup java -jar portal-1.0-SNAPSHOT.jar &>>t.txt &

    在t.txt文件中追加一行数据,出现数据自动消失的问题,是否为脏数据,导致误读:

    root@test:/test# echo "31777777777777777" >> t.txt 

    问题二:

    使用命令启动java的一个jar包:

    root@test:/test# nohup java -jar portal-1.0-SNAPSHOT.jar &>>t.txt &

    直接删除掉t.txt文件:

    java的jar还处于运行状态,日志则会追加到什么地方??并且日志文件不会再被创建

     

    问题三:

    运行jar包后,当日志体积达到几十M后,直接使用覆盖的方法追加内容(echo "111"  >t.txt)。隔几秒钟日志文件又变大了,不知道是不是运行java项目的那个进程一直在打开日志文件:

    可以查看到插入覆盖的内容,原本的日志信息变成全部变成空白(好像也不是空行):

     

  • 相关阅读:
    Python Scrapy 爬虫入门
    Python Requests 高级用法
    Python Requests库快速入门
    linux 高并发事件触发处理 — epoll
    初识Python爬妹子图片
    android 使用gradle实现资源自动拷贝
    Android Studio Cmake使用 (附带demo)
    JNI 学习笔记
    Cmake 常见命令说明
    mybatis逆向工程生成代码
  • 原文地址:https://www.cnblogs.com/liyuanshu/p/12836764.html
Copyright © 2011-2022 走看看