You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by aa...@apache.org on 2022/11/08 16:21:56 UTC
[rocketmq-clients] branch master updated: Polish ProcessIdConverter
This is an automated email from the ASF dual-hosted git repository.
aaronai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-clients.git
The following commit(s) were added to refs/heads/master by this push:
new b3d7d6c Polish ProcessIdConverter
b3d7d6c is described below
commit b3d7d6c051ea85228895de67714424b4ef5b0e66
Author: Aaron Ai <ya...@gmail.com>
AuthorDate: Tue Nov 8 19:01:44 2022 +0800
Polish ProcessIdConverter
---
.../client/java/logging/ProcessIdConverter.java | 32 ++++++++--------------
1 file changed, 11 insertions(+), 21 deletions(-)
diff --git a/java/client/src/main/java/org/apache/rocketmq/client/java/logging/ProcessIdConverter.java b/java/client/src/main/java/org/apache/rocketmq/client/java/logging/ProcessIdConverter.java
index 43c13dc..d2249d8 100644
--- a/java/client/src/main/java/org/apache/rocketmq/client/java/logging/ProcessIdConverter.java
+++ b/java/client/src/main/java/org/apache/rocketmq/client/java/logging/ProcessIdConverter.java
@@ -20,32 +20,22 @@ package org.apache.rocketmq.client.java.logging;
import ch.qos.logback.classic.pattern.ClassicConverter;
import ch.qos.logback.classic.spi.ILoggingEvent;
import java.lang.management.ManagementFactory;
-import java.lang.management.RuntimeMXBean;
public class ProcessIdConverter extends ClassicConverter {
- private static final long PROCESS_ID_NOT_SET = -2L;
private static final long PROCESS_ID_NOT_FOUND = -1L;
- private static long PROCESS_ID = -2L;
-
- public ProcessIdConverter() {
- }
-
- public String convert(ILoggingEvent iLoggingEvent) {
- return String.valueOf(this.processId());
+ private static final String PROCESS_ID = String.valueOf(getProcessId());
+
+ private static long getProcessId() {
+ try {
+ String processName = ManagementFactory.getRuntimeMXBean().getName();
+ return Long.parseLong(processName.split("@")[0]);
+ } catch (Throwable t) {
+ return PROCESS_ID_NOT_FOUND;
+ }
}
- private long processId() {
- if (PROCESS_ID_NOT_SET == PROCESS_ID) {
- RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean();
- String name = runtime.getName();
-
- try {
- PROCESS_ID = Integer.parseInt(name.substring(0, name.indexOf(64)));
- } catch (Throwable var4) {
- PROCESS_ID = PROCESS_ID_NOT_FOUND;
- }
-
- }
+ @Override
+ public String convert(ILoggingEvent event) {
return PROCESS_ID;
}
}