无法将psadmin输出发送到日志

时间:2017-02-01 08:41:20

标签: oracle bash shell peoplesoft

我正在创建一个脚本来重新启动一个实例,它可以在没有任何日志文件的情况下运行但是当我尝试记录psadmin的输出时它会出现以下错误:

java.lang.NullPointerException 
        at com.peoplesoft.pt.psadmin.ui.Progress.<init>(Progress.java:135) 
        at com.peoplesoft.pt.psadmin.ui.Progress.getInstance(Progress.java:123) 
        at com.peoplesoft.pt.psadmin.pia.DomainBootHandler.BootWlsServer(DomainBootHandler.java:84) 
        at com.peoplesoft.pt.psadmin.pia.DomainBootHandler.run(DomainBootHandler.java:62) 
        at com.peoplesoft.pt.psadmin.pia.PIAAdminCmdLine.startDomain(PIAAdminCmdLine.java:270) 
        at com.peoplesoft.pt.psadmin.pia.PIAAdminCmdLine.run(PIAAdminCmdLine.java:481) 
        at com.peoplesoft.pt.psadmin.PSAdmin.runSwitched(PSAdmin.java:170) 
        at com.peoplesoft.pt.psadmin.PSAdmin.main(PSAdmin.java:232)

以下作品(没有日志):

export ORAENV_ASK=NO
export ORACLE_SID=PSCNV
.oraenv
export TUXDIR=/m001/Oracle/Middleware/tuxedo12.1.1.0
. /m001/pt854/psconfig.sh
. $TUXDIR/tux.env
export PS_CFG_HOME=$PS_HOME

$PS_HOME/appserv/psadmin -w shutdown -d PSCNV
$PS_HOME/appserv/psadmin -w start -d PSCNV
$PS_HOME/appserv/psadmin -w status -d PSCNV

更改psadmin这样的调用会导致错误:

LOGFILE=/home/psoft/scripts/pscnv_webserv_stopNstart.log
test() {
   $PS_HOME/appserv/psadmin -w shutdown -d PSCNV
   $PS_HOME/appserv/psadmin -w start -d PSCNV
   $PS_HOME/appserv/psadmin -w status -d PSCNV
}
test >> ${LOGFILE}

我还尝试单独重定向每个调用的输出并看到相同的错误。

2 个答案:

答案 0 :(得分:0)

我也对这个问题的任何反馈感兴趣。我尝试编写一个跨平台的java程序来反弹多个应用程序和Web服务器,似乎psadmin.jar程序在psadmin程序期间专门保存到stdout。

我想评估psadmin / psadmin.jar的输出,看看是否存在需要在os级别杀死进程的可捕获错误。

希望有一种方法可以分享stdout,但我还没找到方法......

答案 1 :(得分:0)

这为我解决了这个问题。 Observable.bindCallback