upstart日志标准输出和stderr文件无法按预期工作

在bash中,我可以运行:

java -jar server.jar &>> log.txt 

它将stdout和stderr合并到log.txt 。 但是,当我在Upstart .conf文件中有这条线时,它不会这样做:

 exec java -jar server.jar &>> log.txt 

我也试着分离日志为:

 exec java -jar server.jar >> log.txt 2>> err.txt 

而这也是行不通的。 它工作,如果我把它覆盖,而不是追加,例如

 exec java -jar server.jar > log.txt 2> err.txt 

但这是不可接受的。 这是Upstart中的一个错误还是我有误解? 我运行的是Ubuntu 14.04.2 LTS,Upstart版本是1.12.1,对于这两者我都是比较新的。

不要自己创build文件。 让新贵pipe理这个,所以它会loggingstdout和stderr到/var/log/upstart/<service>.log

 console log exec java -jar server.jar 

如果您需要更改目录path,可以使用--logdir <directory>