mirror of
https://github.com/apache/rocketmq.git
synced 2026-09-24 16:04:00 +08:00
* Remove ClientLogger * WIP * WIP * Rename logger to log * Make it compile * WIP * Fix bazel to use shaded slf4j * Fix DeleteExpiredCommitLogSubCommandTest * Fix pom.xml duplication * Fix maven deps * Add test logback configuration file * Fix unit test output * Fix logback configuration file * All logging are made on top of slf4j * Fix test log configuration file name * Fix test log configuration file name for test module * All logging are shaded slf4j targeted * DLedger has an explicit dependency on slf4j * Fix DLedger * Fix DLeader issue * Move logback configuration files to each module Co-authored-by: Li Zhanhui <lizhanhui@gmail.com>
This commit is contained in:
+3
-3
@@ -18,12 +18,12 @@ package org.apache.rocketmq.controller;
|
||||
|
||||
import io.netty.channel.Channel;
|
||||
import org.apache.rocketmq.common.constant.LoggerName;
|
||||
import org.apache.rocketmq.logging.InternalLogger;
|
||||
import org.apache.rocketmq.logging.InternalLoggerFactory;
|
||||
import org.apache.rocketmq.shade.org.slf4j.Logger;
|
||||
import org.apache.rocketmq.shade.org.slf4j.LoggerFactory;
|
||||
import org.apache.rocketmq.remoting.ChannelEventListener;
|
||||
|
||||
public class BrokerHousekeepingService implements ChannelEventListener {
|
||||
private static final InternalLogger log = InternalLoggerFactory.getLogger(LoggerName.NAMESRV_LOGGER_NAME);
|
||||
private static final Logger log = LoggerFactory.getLogger(LoggerName.NAMESRV_LOGGER_NAME);
|
||||
private final ControllerManager controllerManager;
|
||||
|
||||
public BrokerHousekeepingService(ControllerManager controllerManager) {
|
||||
|
||||
@@ -34,8 +34,8 @@ import org.apache.rocketmq.controller.elect.impl.DefaultElectPolicy;
|
||||
import org.apache.rocketmq.controller.impl.DLedgerController;
|
||||
import org.apache.rocketmq.controller.impl.DefaultBrokerHeartbeatManager;
|
||||
import org.apache.rocketmq.controller.processor.ControllerRequestProcessor;
|
||||
import org.apache.rocketmq.logging.InternalLogger;
|
||||
import org.apache.rocketmq.logging.InternalLoggerFactory;
|
||||
import org.apache.rocketmq.shade.org.slf4j.Logger;
|
||||
import org.apache.rocketmq.shade.org.slf4j.LoggerFactory;
|
||||
import org.apache.rocketmq.remoting.Configuration;
|
||||
import org.apache.rocketmq.remoting.RemotingClient;
|
||||
import org.apache.rocketmq.remoting.RemotingServer;
|
||||
@@ -50,7 +50,7 @@ import org.apache.rocketmq.remoting.protocol.header.namesrv.controller.ElectMast
|
||||
import org.apache.rocketmq.remoting.protocol.header.namesrv.controller.ElectMasterResponseHeader;
|
||||
|
||||
public class ControllerManager {
|
||||
private static final InternalLogger log = InternalLoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private static final Logger log = LoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
|
||||
private final ControllerConfig controllerConfig;
|
||||
private final NettyServerConfig nettyServerConfig;
|
||||
|
||||
@@ -16,9 +16,6 @@
|
||||
*/
|
||||
package org.apache.rocketmq.controller;
|
||||
|
||||
import ch.qos.logback.classic.LoggerContext;
|
||||
import ch.qos.logback.classic.joran.JoranConfigurator;
|
||||
import ch.qos.logback.core.joran.spi.JoranException;
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
@@ -33,18 +30,17 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.rocketmq.common.ControllerConfig;
|
||||
import org.apache.rocketmq.common.MixAll;
|
||||
import org.apache.rocketmq.common.constant.LoggerName;
|
||||
import org.apache.rocketmq.logging.InternalLogger;
|
||||
import org.apache.rocketmq.logging.InternalLoggerFactory;
|
||||
import org.apache.rocketmq.shade.org.slf4j.Logger;
|
||||
import org.apache.rocketmq.shade.org.slf4j.LoggerFactory;
|
||||
import org.apache.rocketmq.remoting.netty.NettyClientConfig;
|
||||
import org.apache.rocketmq.remoting.netty.NettyServerConfig;
|
||||
import org.apache.rocketmq.remoting.protocol.RemotingCommand;
|
||||
import org.apache.rocketmq.srvutil.ServerUtil;
|
||||
import org.apache.rocketmq.srvutil.ShutdownHookThread;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class ControllerStartup {
|
||||
|
||||
private static InternalLogger log;
|
||||
private static Logger log;
|
||||
private static Properties properties = null;
|
||||
private static CommandLine commandLine = null;
|
||||
|
||||
@@ -69,7 +65,7 @@ public class ControllerStartup {
|
||||
return null;
|
||||
}
|
||||
|
||||
public static ControllerManager createControllerManager(String[] args) throws IOException, JoranException {
|
||||
public static ControllerManager createControllerManager(String[] args) throws IOException {
|
||||
Options options = ServerUtil.buildCommandlineOptions(new Options());
|
||||
commandLine = ServerUtil.parseCmdLine("mqcontroller", args, buildCommandlineOptions(options), new DefaultParser());
|
||||
if (null == commandLine) {
|
||||
@@ -106,18 +102,12 @@ public class ControllerStartup {
|
||||
|
||||
MixAll.properties2Object(ServerUtil.commandLine2Properties(commandLine), controllerConfig);
|
||||
|
||||
LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
|
||||
JoranConfigurator configurator = new JoranConfigurator();
|
||||
configurator.setContext(lc);
|
||||
lc.reset();
|
||||
|
||||
if (StringUtils.isEmpty(controllerConfig.getRocketmqHome())) {
|
||||
System.out.printf("Please set the %s or %s variable in your environment!%n", MixAll.ROCKETMQ_HOME_ENV, MixAll.ROCKETMQ_HOME_PROPERTY);
|
||||
System.exit(-1);
|
||||
}
|
||||
configurator.doConfigure(controllerConfig.getRocketmqHome() + "/conf/logback_controller.xml");
|
||||
|
||||
log = InternalLoggerFactory.getLogger(LoggerName.NAMESRV_LOGGER_NAME);
|
||||
log = LoggerFactory.getLogger(LoggerName.NAMESRV_LOGGER_NAME);
|
||||
|
||||
MixAll.printObjectProperties(log, controllerConfig);
|
||||
MixAll.printObjectProperties(log, nettyServerConfig);
|
||||
|
||||
@@ -47,8 +47,8 @@ import org.apache.rocketmq.controller.impl.event.ControllerResult;
|
||||
import org.apache.rocketmq.controller.impl.event.EventMessage;
|
||||
import org.apache.rocketmq.controller.impl.event.EventSerializer;
|
||||
import org.apache.rocketmq.controller.impl.manager.ReplicasInfoManager;
|
||||
import org.apache.rocketmq.logging.InternalLogger;
|
||||
import org.apache.rocketmq.logging.InternalLoggerFactory;
|
||||
import org.apache.rocketmq.shade.org.slf4j.Logger;
|
||||
import org.apache.rocketmq.shade.org.slf4j.LoggerFactory;
|
||||
import org.apache.rocketmq.remoting.ChannelEventListener;
|
||||
import org.apache.rocketmq.remoting.CommandCustomHeader;
|
||||
import org.apache.rocketmq.remoting.RemotingServer;
|
||||
@@ -69,7 +69,7 @@ import org.apache.rocketmq.remoting.protocol.header.namesrv.controller.RegisterB
|
||||
*/
|
||||
public class DLedgerController implements Controller {
|
||||
|
||||
private static final InternalLogger log = InternalLoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private static final Logger log = LoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private final DLedgerServer dLedgerServer;
|
||||
private final ControllerConfig controllerConfig;
|
||||
private final DLedgerConfig dLedgerConfig;
|
||||
|
||||
+3
-3
@@ -26,14 +26,14 @@ import org.apache.rocketmq.common.constant.LoggerName;
|
||||
import org.apache.rocketmq.controller.impl.event.EventMessage;
|
||||
import org.apache.rocketmq.controller.impl.event.EventSerializer;
|
||||
import org.apache.rocketmq.controller.impl.manager.ReplicasInfoManager;
|
||||
import org.apache.rocketmq.logging.InternalLogger;
|
||||
import org.apache.rocketmq.logging.InternalLoggerFactory;
|
||||
import org.apache.rocketmq.shade.org.slf4j.Logger;
|
||||
import org.apache.rocketmq.shade.org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* The state machine implementation of the dledger controller
|
||||
*/
|
||||
public class DLedgerControllerStateMachine implements StateMachine {
|
||||
private static final InternalLogger log = InternalLoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private static final Logger log = LoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private final ReplicasInfoManager replicasInfoManager;
|
||||
private final EventSerializer eventSerializer;
|
||||
private final String dLedgerId;
|
||||
|
||||
+3
-3
@@ -33,12 +33,12 @@ import org.apache.rocketmq.common.ThreadFactoryImpl;
|
||||
import org.apache.rocketmq.common.constant.LoggerName;
|
||||
import org.apache.rocketmq.controller.BrokerHeartbeatManager;
|
||||
import org.apache.rocketmq.controller.BrokerLiveInfo;
|
||||
import org.apache.rocketmq.logging.InternalLogger;
|
||||
import org.apache.rocketmq.logging.InternalLoggerFactory;
|
||||
import org.apache.rocketmq.shade.org.slf4j.Logger;
|
||||
import org.apache.rocketmq.shade.org.slf4j.LoggerFactory;
|
||||
import org.apache.rocketmq.remoting.common.RemotingHelper;
|
||||
|
||||
public class DefaultBrokerHeartbeatManager implements BrokerHeartbeatManager {
|
||||
private static final InternalLogger log = InternalLoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private static final Logger log = LoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private static final long DEFAULT_BROKER_CHANNEL_EXPIRED_TIME = 1000 * 10;
|
||||
private final ScheduledExecutorService scheduledService = Executors.newSingleThreadScheduledExecutor(new ThreadFactoryImpl("DefaultBrokerHeartbeatManager_scheduledService_"));
|
||||
private final ExecutorService executor = Executors.newFixedThreadPool(2, new ThreadFactoryImpl("DefaultBrokerHeartbeatManager_executorService_"));
|
||||
|
||||
+3
-3
@@ -37,8 +37,8 @@ import org.apache.rocketmq.controller.impl.event.ControllerResult;
|
||||
import org.apache.rocketmq.controller.impl.event.ElectMasterEvent;
|
||||
import org.apache.rocketmq.controller.impl.event.EventMessage;
|
||||
import org.apache.rocketmq.controller.impl.event.EventType;
|
||||
import org.apache.rocketmq.logging.InternalLogger;
|
||||
import org.apache.rocketmq.logging.InternalLoggerFactory;
|
||||
import org.apache.rocketmq.shade.org.slf4j.Logger;
|
||||
import org.apache.rocketmq.shade.org.slf4j.LoggerFactory;
|
||||
import org.apache.rocketmq.remoting.protocol.ResponseCode;
|
||||
import org.apache.rocketmq.remoting.protocol.body.BrokerMemberGroup;
|
||||
import org.apache.rocketmq.remoting.protocol.body.InSyncStateData;
|
||||
@@ -59,7 +59,7 @@ import org.apache.rocketmq.remoting.protocol.header.namesrv.controller.RegisterB
|
||||
* be called sequentially
|
||||
*/
|
||||
public class ReplicasInfoManager {
|
||||
private static final InternalLogger log = InternalLoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private static final Logger log = LoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private final ControllerConfig controllerConfig;
|
||||
private final Map<String/* brokerName */, BrokerInfo> replicaInfoTable;
|
||||
private final Map<String/* brokerName */, SyncStateInfo> syncStateSetInfoTable;
|
||||
|
||||
+3
-3
@@ -27,8 +27,8 @@ import org.apache.rocketmq.common.MixAll;
|
||||
import org.apache.rocketmq.common.constant.LoggerName;
|
||||
import org.apache.rocketmq.controller.BrokerHeartbeatManager;
|
||||
import org.apache.rocketmq.controller.ControllerManager;
|
||||
import org.apache.rocketmq.logging.InternalLogger;
|
||||
import org.apache.rocketmq.logging.InternalLoggerFactory;
|
||||
import org.apache.rocketmq.shade.org.slf4j.Logger;
|
||||
import org.apache.rocketmq.shade.org.slf4j.LoggerFactory;
|
||||
import org.apache.rocketmq.remoting.common.RemotingHelper;
|
||||
import org.apache.rocketmq.remoting.netty.NettyRequestProcessor;
|
||||
import org.apache.rocketmq.remoting.protocol.RemotingCommand;
|
||||
@@ -59,7 +59,7 @@ import static org.apache.rocketmq.remoting.protocol.RequestCode.UPDATE_CONTROLLE
|
||||
* Processor for controller request
|
||||
*/
|
||||
public class ControllerRequestProcessor implements NettyRequestProcessor {
|
||||
private static final InternalLogger log = InternalLoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private static final Logger log = LoggerFactory.getLogger(LoggerName.CONTROLLER_LOGGER_NAME);
|
||||
private static final int WAIT_TIMEOUT_OUT = 5;
|
||||
private final ControllerManager controllerManager;
|
||||
private final BrokerHeartbeatManager heartbeatManager;
|
||||
|
||||
@@ -0,0 +1,94 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<configuration>
|
||||
<appender name="DefaultAppender"
|
||||
class="org.apache.rocketmq.shade.ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${user.home}/logs/rocketmqlogs/controller_default.log</file>
|
||||
<append>true</append>
|
||||
<rollingPolicy class="org.apache.rocketmq.shade.ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
|
||||
<fileNamePattern>${user.home}/logs/rocketmqlogs/otherdays/controller_default.%i.log.gz</fileNamePattern>
|
||||
<minIndex>1</minIndex>
|
||||
<maxIndex>5</maxIndex>
|
||||
</rollingPolicy>
|
||||
<triggeringPolicy
|
||||
class="org.apache.rocketmq.shade.ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
|
||||
<maxFileSize>100MB</maxFileSize>
|
||||
</triggeringPolicy>
|
||||
<encoder>
|
||||
<pattern>%d{yyy-MM-dd HH:mm:ss,GMT+8} %p %t - %m%n</pattern>
|
||||
<charset class="java.nio.charset.Charset">UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<appender name="RocketmqControllerAppender_inner"
|
||||
class="org.apache.rocketmq.shade.ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${user.home}/logs/rocketmqlogs/controller.log</file>
|
||||
<append>true</append>
|
||||
<rollingPolicy class="org.apache.rocketmq.shade.ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
|
||||
<fileNamePattern>${user.home}/logs/rocketmqlogs/otherdays/controller.%i.log.gz</fileNamePattern>
|
||||
<minIndex>1</minIndex>
|
||||
<maxIndex>5</maxIndex>
|
||||
</rollingPolicy>
|
||||
<triggeringPolicy
|
||||
class="org.apache.rocketmq.shade.ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
|
||||
<maxFileSize>100MB</maxFileSize>
|
||||
</triggeringPolicy>
|
||||
<encoder>
|
||||
<pattern>%d{yyy-MM-dd HH:mm:ss,GMT+8} %p %t - %m%n</pattern>
|
||||
<charset class="java.nio.charset.Charset">UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
<appender name="RocketmqControllerAppender" class="org.apache.rocketmq.shade.ch.qos.logback.classic.AsyncAppender">
|
||||
<appender-ref ref="RocketmqControllerAppender_inner"/>
|
||||
<discardingThreshold>0</discardingThreshold>
|
||||
</appender>
|
||||
|
||||
<appender name="STDOUT" class="org.apache.rocketmq.shade.ch.qos.logback.core.ConsoleAppender">
|
||||
<append>true</append>
|
||||
<encoder>
|
||||
<pattern>%d{yyy-MM-dd HH:mm:ss,GMT+8} %p %t - %m%n</pattern>
|
||||
<charset class="java.nio.charset.Charset">UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<logger name="RocketmqController" additivity="false">
|
||||
<level value="INFO"/>
|
||||
<appender-ref ref="RocketmqControllerAppender"/>
|
||||
</logger>
|
||||
|
||||
<logger name="RocketmqCommon" additivity="false">
|
||||
<level value="INFO"/>
|
||||
<appender-ref ref="RocketmqControllerAppender"/>
|
||||
</logger>
|
||||
|
||||
<logger name="RocketmqRemoting" additivity="false">
|
||||
<level value="INFO"/>
|
||||
<appender-ref ref="RocketmqControllerAppender"/>
|
||||
</logger>
|
||||
|
||||
<logger name="RocketmqControllerConsole" additivity="false">
|
||||
<level value="INFO"/>
|
||||
<appender-ref ref="STDOUT"/>
|
||||
</logger>
|
||||
|
||||
<root>
|
||||
<level value="INFO"/>
|
||||
<appender-ref ref="DefaultAppender"/>
|
||||
</root>
|
||||
</configuration>
|
||||
@@ -1,33 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
~ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
~ contributor license agreements. See the NOTICE file distributed with
|
||||
~ this work for additional information regarding copyright ownership.
|
||||
~ The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
~ (the "License"); you may not use this file except in compliance with
|
||||
~ the License. You may obtain a copy of the License at
|
||||
~
|
||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
||||
~
|
||||
~ Unless required by applicable law or agreed to in writing, software
|
||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
~ See the License for the specific language governing permissions and
|
||||
~ limitations under the License.
|
||||
-->
|
||||
|
||||
<configuration>
|
||||
|
||||
<appender name="DefaultAppender" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<append>true</append>
|
||||
<encoder>
|
||||
<pattern>%d{yyy-MM-dd HH:mm:ss,GMT+8} %p %t - %m%n</pattern>
|
||||
<charset class="java.nio.charset.Charset">UTF-8</charset>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<root>
|
||||
<level value="OFF"/>
|
||||
<appender-ref ref="DefaultAppender"/>
|
||||
</root>
|
||||
</configuration>
|
||||
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<configuration>
|
||||
|
||||
<appender name="CONSOLE" class="org.apache.rocketmq.shade.ch.qos.logback.core.ConsoleAppender">
|
||||
<layout class="org.apache.rocketmq.shade.ch.qos.logback.classic.PatternLayout">
|
||||
<Pattern>
|
||||
%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n
|
||||
</Pattern>
|
||||
</layout>
|
||||
</appender>
|
||||
|
||||
<logger name="org.apache.rocketmq" level="error" additivity="false">
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
</logger>
|
||||
|
||||
<root level="error">
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
</root>
|
||||
|
||||
</configuration>
|
||||
Reference in New Issue
Block a user