You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by nd...@apache.org on 2023/05/01 15:45:44 UTC

[hbase] branch branch-2.5 updated (b50022d6cf9 -> e973dee3640)

This is an automated email from the ASF dual-hosted git repository.

ndimiduk pushed a change to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git


    from b50022d6cf9 HBASE-27819 10k RpcServer.MAX_REQUEST_SIZE is not enough in ReplicationDroppedTable related tests (#5208)
     new 07bdc09ee50 HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (#5145)
     new 841f2a7fa65 HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (addendum)
     new e973dee3640 HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (addendum for branch-2.4,5)

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java | 5 +++++
 .../hadoop/hbase/regionserver/handler/AssignRegionHandler.java       | 2 ++
 .../apache/hadoop/hbase/regionserver/handler/RSProcedureHandler.java | 2 ++
 .../hadoop/hbase/regionserver/handler/UnassignRegionHandler.java     | 2 ++
 4 files changed, 11 insertions(+)


[hbase] 01/03: HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (#5145)

Posted by nd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ndimiduk pushed a commit to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 07bdc09ee5030bc302a24ad7051cc85515f4d247
Author: Nick Dimiduk <nd...@apache.org>
AuthorDate: Mon Apr 17 14:22:04 2023 +0200

    HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (#5145)
    
    Signed-off-by: Duo Zhang <zh...@apache.org>
---
 hbase-logging/src/test/resources/log4j2.properties                   | 2 +-
 .../src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java | 5 +++++
 .../hadoop/hbase/regionserver/handler/AssignRegionHandler.java       | 2 ++
 .../apache/hadoop/hbase/regionserver/handler/RSProcedureHandler.java | 2 ++
 .../hadoop/hbase/regionserver/handler/UnassignRegionHandler.java     | 2 ++
 5 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/hbase-logging/src/test/resources/log4j2.properties b/hbase-logging/src/test/resources/log4j2.properties
index 56d67c85aa1..4f29bb45562 100644
--- a/hbase-logging/src/test/resources/log4j2.properties
+++ b/hbase-logging/src/test/resources/log4j2.properties
@@ -26,7 +26,7 @@ appender.console.target = SYSTEM_ERR
 appender.console.name = Console
 appender.console.maxSize = 1G
 appender.console.layout.type = PatternLayout
-appender.console.layout.pattern = %d{ISO8601} %-5p [%t] %C{2}(%L): %m%n
+appender.console.layout.pattern = %d{ISO8601} %-5p [%t (%X)] %C{2}(%L): %m%n
 
 rootLogger = INFO,Console
 
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java
index ece244fda4f..1244259fc17 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java
@@ -27,6 +27,7 @@ import org.apache.hadoop.hbase.trace.TraceUtil;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.slf4j.MDC;
 
 /**
  * Abstract base class for all HBase event handlers. Subclasses should implement the
@@ -96,12 +97,16 @@ public abstract class EventHandler implements Runnable, Comparable<EventHandler>
   public void run() {
     Span span = TraceUtil.getGlobalTracer().spanBuilder(getClass().getSimpleName())
       .setParent(Context.current().with(parent)).startSpan();
+    // assume that this is the top of an execution on a new or reused thread, that we're safe to
+    // blast any existing MDC state.
     try (Scope scope = span.makeCurrent()) {
+      MDC.put("event_type", eventType.toString());
       process();
     } catch (Throwable t) {
       handleException(t);
     } finally {
       span.end();
+      MDC.clear();
     }
   }
 
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/AssignRegionHandler.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/AssignRegionHandler.java
index 7f9f95bee68..a9ab6f502a3 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/AssignRegionHandler.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/AssignRegionHandler.java
@@ -38,6 +38,7 @@ import org.apache.hadoop.hbase.util.ServerRegionReplicaUtil;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.slf4j.MDC;
 
 import org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode;
 
@@ -93,6 +94,7 @@ public class AssignRegionHandler extends EventHandler {
 
   @Override
   public void process() throws IOException {
+    MDC.put("pid", Long.toString(openProcId));
     HRegionServer rs = getServer();
     String encodedName = regionInfo.getEncodedName();
     byte[] encodedNameBytes = regionInfo.getEncodedNameAsBytes();
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/RSProcedureHandler.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/RSProcedureHandler.java
index d4ddebe727d..d3ecc8a51e2 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/RSProcedureHandler.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/RSProcedureHandler.java
@@ -23,6 +23,7 @@ import org.apache.hadoop.hbase.regionserver.HRegionServer;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.slf4j.MDC;
 
 /**
  * A event handler for running procedure.
@@ -46,6 +47,7 @@ public class RSProcedureHandler extends EventHandler {
   public void process() {
     Throwable error = null;
     try {
+      MDC.put("pid", Long.toString(procId));
       callable.call();
     } catch (Throwable t) {
       LOG.error("pid=" + this.procId, t);
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/UnassignRegionHandler.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/UnassignRegionHandler.java
index 33eaf675c6a..e312df9862d 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/UnassignRegionHandler.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/UnassignRegionHandler.java
@@ -35,6 +35,7 @@ import org.apache.hadoop.hbase.util.ServerRegionReplicaUtil;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.slf4j.MDC;
 
 import org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode;
 
@@ -78,6 +79,7 @@ public class UnassignRegionHandler extends EventHandler {
 
   @Override
   public void process() throws IOException {
+    MDC.put("pid", Long.toString(closeProcId));
     HRegionServer rs = getServer();
     byte[] encodedNameBytes = Bytes.toBytes(encodedName);
     Boolean previous = rs.getRegionsInTransitionInRS().putIfAbsent(encodedNameBytes, Boolean.FALSE);


[hbase] 03/03: HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (addendum for branch-2.4,5)

Posted by nd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ndimiduk pushed a commit to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit e973dee3640d5f5e23928076064a527ef10786b0
Author: Nick Dimiduk <nd...@apache.org>
AuthorDate: Fri Apr 28 12:12:28 2023 +0200

    HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (addendum for branch-2.4,5)
---
 hbase-logging/src/test/resources/log4j2.properties | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hbase-logging/src/test/resources/log4j2.properties b/hbase-logging/src/test/resources/log4j2.properties
index 1ad75787041..56d67c85aa1 100644
--- a/hbase-logging/src/test/resources/log4j2.properties
+++ b/hbase-logging/src/test/resources/log4j2.properties
@@ -26,7 +26,7 @@ appender.console.target = SYSTEM_ERR
 appender.console.name = Console
 appender.console.maxSize = 1G
 appender.console.layout.type = PatternLayout
-appender.console.layout.pattern = %d{ISO8601} %-5p [%t%notEmpty{ %X}] %C{2}(%L): %m%n
+appender.console.layout.pattern = %d{ISO8601} %-5p [%t] %C{2}(%L): %m%n
 
 rootLogger = INFO,Console
 


[hbase] 02/03: HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (addendum)

Posted by nd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ndimiduk pushed a commit to branch branch-2.5
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 841f2a7fa650ab375187476e7e4b9128a799142e
Author: Nick Dimiduk <nd...@apache.org>
AuthorDate: Mon Apr 24 14:06:19 2023 +0200

    HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (addendum)
    
    Make use of `%notEmpty` pattern with MDC logging. Will function as expected once we upgrade to
    Log4J 2.21.0+.
---
 hbase-logging/src/test/resources/log4j2.properties | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hbase-logging/src/test/resources/log4j2.properties b/hbase-logging/src/test/resources/log4j2.properties
index 4f29bb45562..1ad75787041 100644
--- a/hbase-logging/src/test/resources/log4j2.properties
+++ b/hbase-logging/src/test/resources/log4j2.properties
@@ -26,7 +26,7 @@ appender.console.target = SYSTEM_ERR
 appender.console.name = Console
 appender.console.maxSize = 1G
 appender.console.layout.type = PatternLayout
-appender.console.layout.pattern = %d{ISO8601} %-5p [%t (%X)] %C{2}(%L): %m%n
+appender.console.layout.pattern = %d{ISO8601} %-5p [%t%notEmpty{ %X}] %C{2}(%L): %m%n
 
 rootLogger = INFO,Console