无法将 psadmin 输出发送到日志
Not able to send psadmin output to logs
我正在制作一个脚本来重新启动一个实例,它可以在没有任何日志文件的情况下工作,但是当我尝试记录 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}
我也尝试单独重定向每个调用的输出,但看到了同样的错误。
我也对这个问题的任何反馈感兴趣。我尝试编写一个 cross 平台 java 程序来反弹多个应用程序和 Web 服务器,似乎 psadmin.jar 程序在 psadmin 程序期间专门保留到 stdout。
我想评估 psadmin/psadmin.jar 的输出,看看是否存在需要在 os 级别终止进程的可捕获错误。
希望有办法共享标准输出,但我还没有找到办法...
这为我解决了这个问题。 nohup script -q -c "psadmin -w start -d 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}
我也尝试单独重定向每个调用的输出,但看到了同样的错误。
我也对这个问题的任何反馈感兴趣。我尝试编写一个 cross 平台 java 程序来反弹多个应用程序和 Web 服务器,似乎 psadmin.jar 程序在 psadmin 程序期间专门保留到 stdout。
我想评估 psadmin/psadmin.jar 的输出,看看是否存在需要在 os 级别终止进程的可捕获错误。
希望有办法共享标准输出,但我还没有找到办法...
这为我解决了这个问题。 nohup script -q -c "psadmin -w start -d peoplesoft"