我让 activemq 在 UI 中为某些端点返回 503。但是,控制台中没有显示任何码头日志。
我正在使用 java 服务包装器来运行 activemq。它似乎完全忽略了 log4j 配置,但我不确定为什么。
我的包装器配置是:
set.default.ACTIVEMQ_HOME=../..
set.default.ACTIVEMQ_BASE=../..
set.default.ACTIVEMQ_CONF=%ACTIVEMQ_BASE%/conf
set.default.ACTIVEMQ_DATA=%ACTIVEMQ_BASE%/data
wrapper.working.dir=.
# Java Application
wrapper.java.command=java
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
# Java Classpath (include wrapper.jar) Add class path elements as
# needed starting from 1
wrapper.java.classpath.1=%ACTIVEMQ_HOME%/bin/wrapper.jar
wrapper.java.classpath.2=%ACTIVEMQ_HOME%/bin/activemq.jar
# Java Library Path (location of Wrapper.DLL or libwrapper.so)
wrapper.java.library.path.1=%ACTIVEMQ_HOME%/bin/win64
# Java Additional Parameters
# note that n is the parameter number starting from 1.
wrapper.java.additional.1=-Dactivemq.home="%ACTIVEMQ_HOME%"
wrapper.java.additional.2=-Dactivemq.base="%ACTIVEMQ_BASE%"
wrapper.java.additional.3=-Djavax.net.ssl.keyStorePassword=<redacted>
wrapper.java.additional.4=-Djavax.net.ssl.trustStorePassword=<redacted>
wrapper.java.additional.5=-Djavax.net.ssl.keyStore="%ACTIVEMQ_CONF%/<keystore>"
wrapper.java.additional.6=-Djavax.net.ssl.trustStore="%ACTIVEMQ_CONF%/<keystore>"
wrapper.java.additional.7=-Dorg.apache.activemq.UseDedicatedTaskRunner=false
wrapper.java.additional.8=-Dlog4j.configuration.file="%ACTIVEMQ_CONF%/log4j.properties"
wrapper.java.additional.9=-Dactivemq.conf="%ACTIVEMQ_CONF%"
wrapper.java.additional.10=-Dactivemq.data="%ACTIVEMQ_DATA%"
# Hawtio config
wrapper.java.additional.11=-Djava.security.auth.login.config="%ACTIVEMQ_CONF%/login.config"
#LP: Turn off authentication as the Hawtio people have decided to block Jolokia access unless the session has already been authenticated.
wrapper.java.additional.12=-Dhawtio.authenticationEnabled=false
#JC: Add offline flag to hawtio else it tries to contact Gibhub for various configs
wrapper.java.additional.13=-Dhawtio.offline=true
#JC: Add proxy whitelist to * to revert to pre-1.5 behaviour of all hosts allowed to access. Defaults to localhost etc
wrapper.java.additional.14=-Dhawtio.proxyWhitelist=*
wrapper.java.additional.15=-Dhawtio.realm=activemq
wrapper.java.additional.16=-Dhawtio.role=admins
wrapper.java.additional.17=-javaagent:%ACTIVEMQ_BASE%/lib/jmx_prometheus_javaagent-0.19.0.jar=7070:jmx_exporter.yaml
# JMX Config
wrapper.java.additional.18=-Dcom.sun.management.jmxremote
wrapper.java.additional.19=-Dcom.sun.management.jmxremote.port=1616
wrapper.java.additional.20=-Dcom.sun.management.jmxremote.authenticate=false
wrapper.java.additional.21=-Dcom.sun.management.jmxremote.ssl=false
wrapper.java.additional.22=-Dcom.sun.management.jmxremote.local.only=true
# Initial Java Heap Size (in MB)
#wrapper.java.initmemory=3
# Maximum Java Heap Size (in MB)
wrapper.java.maxmemory=2048
# Application parameters. Add parameters as needed starting from 1
wrapper.app.parameter.1=org.apache.activemq.console.Main
wrapper.app.parameter.2=start
wrapper.app.parameter.3=xbean:activemq_live_events_int.xml
wrapper.console.format=PM
# Log Level for console output. (See docs for log levels)
wrapper.console.loglevel=INFO
# Log file to use for wrapper output logging.
wrapper.logfile=%ACTIVEMQ_DATA%/wrapper.log
# Format of output for the log file. (See docs for formats)
wrapper.logfile.format=LPTM
# Log Level for log file output. (See docs for log levels)
wrapper.logfile.loglevel=INFO
wrapper.logfile.maxsize=10m
wrapper.logfile.maxfiles=10
wrapper.syslog.loglevel=NONE
wrapper.console.title=ActiveMQ
wrapper.ntservice.name=ActiveMQ
wrapper.ntservice.displayname=ActiveMQ
wrapper.ntservice.description=ActiveMQ Broker
wrapper.ntservice.dependency.1=
wrapper.ntservice.starttype=AUTO_START
wrapper.ntservice.interactive=false
wrapper.ntservice.account=<redacted>
wrapper.ntservice.password=<redacted>
控制台输出只是jvm状态,它不会在UI中显示任何来自jetty的访问日志。目前仅在本地主机上运行,端口是标准的 8161。
有没有办法将码头日志附加到此控制台输出?
尝试编辑 log4j.properties、logging.properties,添加
wrapper.java.additional.8=-Dlog4j.configuration.file="%ACTIVEMQ_CONF%/log4j.properties"
。
设法让这个工作;使用以下配置创建了文件
jetty-logging.properties
:
org.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StdOutLog
org.eclipse.jetty.LEVEL=INFO