Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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
Logging JBoss7日志问题_Logging_Jboss_Jboss7.x - Fatal编程技术网

Logging JBoss7日志问题

Logging JBoss7日志问题,logging,jboss,jboss7.x,Logging,Jboss,Jboss7.x,我已经根据安装了Jboss 7.1.1.Final作为窗口服务 除了原木外,一切正常。似乎所有内容都记录了两次!首先在名为server.log的文件中,然后在名为standalone.log的文件中 server.log文件每天都会被整齐地重命名,因此我每天都会得到一个小日志文件(server.log.2014-06-12、server.log.2014-06-13等等),每个文件的大小不超过20MB 另一方面,standalone.log却越来越大,所以当它达到3GB时,应用程序就会崩溃,我不

我已经根据安装了Jboss 7.1.1.Final作为窗口服务

除了原木外,一切正常。似乎所有内容都记录了两次!首先在名为
server.log
的文件中,然后在名为
standalone.log
的文件中

server.log
文件每天都会被整齐地重命名,因此我每天都会得到一个小日志文件(server.log.2014-06-12、server.log.2014-06-13等等),每个文件的大小不超过20MB

另一方面,
standalone.log
却越来越大,所以当它达到3GB时,应用程序就会崩溃,我不得不手动重新启动它

如何防止Jboss登录到此
独立.log

我在
服务.bat中找到了一些对此文件的引用,我曾经注册过Windows服务,因此我将此文件的完整内容发布到下面:

@echo off
REM JBoss, the OpenSource webOS
REM
REM Distributable under LGPL license.
REM See terms of license at gnu.org.
REM
REM -------------------------------------------------------------------------
REM JBoss Service Script for Windows
REM -------------------------------------------------------------------------


@if not "%ECHO%" == "" echo %ECHO%
@if "%OS%" == "Windows_NT" setlocal
set DIRNAME=%CD%

REM
REM VERSION, VERSION_MAJOR and VERSION_MINOR are populated
REM during the build with ant filter.
REM
set SVCNAME=JBAS50SVC
set SVCDISP=JBoss 7
set SVCDESC=JBoss 7.1.1
set NOPAUSE=Y

REM Suppress killing service on logoff event
REM set JAVA_OPTS=-Xrs

REM Figure out the running mode

if /I "%1" == "install"   goto cmdInstall
if /I "%1" == "uninstall" goto cmdUninstall
if /I "%1" == "start"     goto cmdStart
if /I "%1" == "stop"      goto cmdStop
if /I "%1" == "restart"   goto cmdRestart
if /I "%1" == "signal"    goto cmdSignal
echo Usage: service install^|uninstall^|start^|stop^|restart^|signal
goto cmdEnd

REM jbosssvc retun values
REM ERR_RET_USAGE           1
REM ERR_RET_VERSION         2
REM ERR_RET_INSTALL         3
REM ERR_RET_REMOVE          4
REM ERR_RET_PARAMS          5
REM ERR_RET_MODE            6

:errExplain
if errorlevel 1 echo Invalid command line parameters
if errorlevel 2 echo Failed installing %SVCDISP%
if errorlevel 4 echo Failed removing %SVCDISP%
if errorlevel 6 echo Unknown service mode for %SVCDISP%
goto cmdEnd

:cmdInstall
jbosssvc.exe -imwdc %SVCNAME% "%DIRNAME%" "%SVCDISP%" "%SVCDESC%" service.bat
if not errorlevel 0 goto errExplain
echo Service %SVCDISP% installed
goto cmdEnd

:cmdUninstall
jbosssvc.exe -u %SVCNAME%
if not errorlevel 0 goto errExplain
echo Service %SVCDISP% removed
goto cmdEnd

:cmdStart
REM Executed on service start
del .r.lock 2>&1 | findstr /C:"being used" > nul
if not errorlevel 1 (
  echo Could not continue. Locking file already in use.
  goto cmdEnd
)
echo Y > .r.lock
jbosssvc.exe -p 1 "Starting %SVCDISP%" > C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log
call standalone.bat --server-config=standalone.xml < .r.lock >> C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log 2>&1
jbosssvc.exe -p 1 "Shutdown %SVCDISP% service" >> C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log
del .r.lock
goto cmdEnd

:cmdStop
REM Executed on service stop
echo Y > .s.lock
jbosssvc.exe -p 1 "Shutting down %SVCDISP%" > C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log
call jboss-cli.bat --connect command=:shutdown >> C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log 2>&1
jbosssvc.exe -p 1 "Shutdown %SVCDISP% service" >> C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log
del .s.lock
goto cmdEnd

:cmdRestart
REM Executed manually from command line
REM Note: We can only stop and start
echo Y > .s.lock
jbosssvc.exe -p 1 "Shutting down %SVCDISP%" >> C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log
call jboss-cli.bat --connect command=:shutdown >> C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log 2>&1
del .s.lock
:waitRun
REM Delete lock file
del .r.lock > nul 2>&1
REM Wait one second if lock file exist
jbosssvc.exe -s 1
if exist ".r.lock" goto waitRun
echo Y > .r.lock
jbosssvc.exe -p 1 "Restarting %SVCDISP%" >> C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log
call standalone.bat --server-config=standalone.xml < .r.lock >> C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log 2>&1
jbosssvc.exe -p 1 "Shutdown %SVCDISP% service" >> C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log
del .r.lock
goto cmdEnd

:cmdSignal
REM Send signal to the service.
REM Requires jbosssch.dll to be loaded in JVM
@if not ""%2"" == """" goto execSignal
echo Missing signal parameter.
echo Usage: service signal [0...9]
goto cmdEnd
:execSignal
jbosssvc.exe -k%2 %SVCNAME%
goto cmdEnd

:cmdEnd
@echo关闭
REM JBoss,开源webOS
雷姆
REM可根据LGPL许可分配。
REM见gnu.org上的许可条款。
雷姆
雷姆-------------------------------------------------------------------------
适用于Windows的REM JBoss服务脚本
雷姆-------------------------------------------------------------------------
@如果不是“%ECHO%”==“ECHO%ECHO%
@如果“%OS%”==“Windows\u NT”设置本地
设置目录名=%CD%
雷姆
填充REM版本、主要版本和次要版本
在使用ant筛选器的构建过程中REM。
雷姆
设置SVCNAME=JBAS50SVC
设置SVCDISP=jboss7
设置SVCDESC=JBoss 7.1.1
设置NOPAUSE=Y
REM禁止注销事件时终止服务
REM集合JAVA_OPTS=-Xrs
请找出运行模式
如果/I“%1”==“安装”转到cmdInstall
如果/I“%1”=“卸载”转到CMDUNSTALL
如果/I“%1”==“开始”转到cmdStart
如果/I“%1”==“停止”转到cmdStop
如果/I“%1”==“重新启动”转到cmdRestart
如果/I“%1”=“信号”转到cmdSignal
回显用法:服务安装^卸载^启动^停止^重启^信号
转到cmdEnd
REM jbosssvc重新计算值
REM ERR_RET_用法1
REM ERR_RET_版本2
REM ERR_RET_安装3
REM ERR_RET_移除4
REM ERR_RET_参数5
REM ERR_RET_模式6
:errExplain
如果errorlevel 1回显无效的命令行参数
如果errorlevel 2 echo安装%SVCDISP%失败
如果错误级别4回显无法删除%SVCDISP%
如果错误级别6回显%SVCDISP%的未知服务模式
转到cmdEnd
:cmdInstall
jbosssvc.exe-imwdc%SVCNAME%%DIRNAME%“”%SVCDISP%“”%SVCDESC%“service.bat
如果不是错误级别0,则转到错误解释
已安装回显服务%SVCDISP%
转到cmdEnd
:cmdUninstall
jbosssvc.exe-u%SVCNAME%
如果不是错误级别0,则转到错误解释
已删除回显服务%SVCDISP%
转到cmdEnd
:cmdStart
服务启动时执行REM
del.r.lock 2>&1 | findstr/C:“正在使用”>nul
如果不是错误级别1(
echo无法继续。锁定文件已在使用中。
转到cmdEnd
)
echo Y>.r.lock
jbosssvc.exe-p 1“启动%SVCDISP%”C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log
调用standalone.bat--server config=standalone.xml<.r.lock>>C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log 2>&1
jbosssvc.exe-p 1“关机%SVCDISP%service”>>C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log
右锁
转到cmdEnd
:cmdStop
在服务停止时执行REM
echo Y>.s.lock
jbosssvc.exe-p 1“正在关闭%SVCDISP%”C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log
调用jboss-cli.bat--connect命令=:shutdown>>C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log 2>&1
jbosssvc.exe-p 1“Shutdown%SVCDISP%service”>>C:\Web\jboss-as-7.1.1.Final\standalone\log\Shutdown.log
德尔斯洛克
转到cmdEnd
:cmdRestart
从命令行手动执行REM
REM注意:我们只能停止和开始
echo Y>.s.lock
jbosssvc.exe-p 1“正在关闭%SVCDISP%”>>C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log
调用jboss-cli.bat--connect命令=:shutdown>>C:\Web\jboss-as-7.1.1.Final\standalone\log\shutdown.log 2>&1
德尔斯洛克
:waitRun
REM删除锁定文件
del.r.lock>num2>&1
如果存在锁文件,请等待一秒钟
jbosssvc.exe-s 1
如果存在“.r.lock”转到waitRun
echo Y>.r.lock
jbosssvc.exe-p 1“重新启动%SVCDISP%”>>C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log
调用standalone.bat--server config=standalone.xml<.r.lock>>C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log 2>&1
jbosssvc.exe-p 1“关机%SVCDISP%service”>>C:\Web\jboss-as-7.1.1.Final\standalone\log\standalone.log
右锁
转到cmdEnd
:cmdSignal
REM向服务发送信号。
REM要求在JVM中加载jbosssch.dll
@如果不是“%2”==“转到执行信号”
回波信号参数缺失。
回波用途:服务信号[0…9]
转到cmdEnd
:execSignal
jbosssvc.exe-k%2%SVCNAME%
转到cmdEnd
:cmdEnd
如果查看脚本(standalone.bat),您将看到stdout被重定向到
standalone.log
文件。您可以禁用控制台处理程序,该处理程序将阻止任何内容被记录到文件中

从根记录器中删除默认的
控制台处理程序

/subsystem=logging/root-logger=ROOT:root-logger-unassign-handler(name=CONSOLE)

通过编辑standalone.xml配置文件,我能够实现我想要的

本部分:

    <root-logger>
        <level name="INFO"/>
        <handlers>
            <handler name="CONSOLE"/>
            <handler name="FILE"/>
        </handlers>
    </root-logger>

更改为:

    <root-logger>
        <level name="INFO"/>
        <handlers>
            <handler name="FILE"/>
        </handlers>
    </root-logger>


谢谢,詹姆斯。抱歉,我没有经验,但是我应该在哪个文件上查找根记录器?它们是相同的。如果执行
/subsystem=logging/root logger=root:read resource
,您将看到控制台和文件处理程序都已分配。实际上,您的控制台只是被重定向到一个文件。