内核:2.6.39-400.278.2.el6uek.i686
操作系统:Oracle Linux Server release 6.8
在shell中启动kettle的服务器软件
[root@mldap01 kettle6]# ./carte.sh pwd/carte-config-master-8080.xml
可以看到日志正常输出到console中,但是当使用重定向将日志重定向到文件后,文件中的日志并不是实时更新的
[root@mldap01 kettle6]#nohup ./carte.sh pwd/carte-config-master-8080.xml >> kettle.log &
[root@mldap01 kettle6]# tail -f kettle.log
最新的日志并不会立刻写入到日志文件中。当正常停止服务时,日志会全部刷新到日志文件中。
在网上查了好久,可以肯定是因为linux的缓冲区在捣鬼,但是网上都是说怎么样在写代码时不使用缓冲区,而没人告知当不能改动程序时,怎么解决日志实时显示的问题。
已经试过contos7.2仍然有这个问题,请问该怎么操作才能使日志实时的刷新到文件中?
已经使用sync命令了,完全不起作用。因为不能将日志刷新到文件中,所以也不敢修改/proc/sys/vm/drop_caches来清除缓存,求大神帮忙!