Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash>;如何将Bash脚本高效地记录到预定的日志文件中_Bash_Logging - Fatal编程技术网

Bash>;如何将Bash脚本高效地记录到预定的日志文件中

Bash>;如何将Bash脚本高效地记录到预定的日志文件中,bash,logging,Bash,Logging,我在Bash脚本上有很长时间的日志记录问题。目前在我的项目中,为了将标准日志数据记录到预定义的文本文件中,我们的团队使用Java的log4j和slf4j来进行日志记录,比如每次记录信息时都调用实现的Java类来进行日志记录。但这不是有点笨拙吗?调用Java对系统来说是非常繁重的。恐怕运行Bash脚本的大部分时间都是通过调用Java日志来完成的。我也希望有人能对这个解决方案发表评论:) 我还了解了Linux的内在系统日志。它看起来很酷,但是系统日志的重定向很难控制 我有更好的解决方案吗?应该记录什

我在Bash脚本上有很长时间的日志记录问题。目前在我的项目中,为了将标准日志数据记录到预定义的文本文件中,我们的团队使用Java的log4j和slf4j来进行日志记录,比如每次记录信息时都调用实现的Java类来进行日志记录。但这不是有点笨拙吗?调用Java对系统来说是非常繁重的。恐怕运行Bash脚本的大部分时间都是通过调用Java日志来完成的。我也希望有人能对这个解决方案发表评论:)

我还了解了Linux的内在系统日志。它看起来很酷,但是系统日志的重定向很难控制


我有更好的解决方案吗?

应该记录什么样的数据

通常,您可以使用“echo”命令记录各种事情。我的意思是,这几乎在任何地方都可以完成,并且是不使用java的正常标准技术之一,只要您不使用“logger”来写入系统日志

或者使用“logger”(然后您必须整理消息):

在/var/log/messages中: 2016-04-12T10:58:11.785979+02:00 as501755科里班:测试mit记录器

还是我误解了你


关于

如果每次需要编写一段日志时都要启动一个新的JVM,那么是的,您花费了太多时间来记录事情。如果您只启动JVM一次,然后将日志回显到其stdin,那么您可能就没事了。谢谢您的回答。我尝试使用syslog的记录器,但这只会转到/var/log/messages,而不是预先确定的文件。我还想得到关于使用JavaLog4j和slf4j的评论
#!/bin/bash
logger "test mit logger!"