Skip to content

Commit

Permalink
Merge pull request #333 from scalecube/fix-jmx-object-name
Browse files Browse the repository at this point in the history
Fixed jmx object name
  • Loading branch information
artem-v authored Jun 15, 2020
2 parents 56040e0 + a46af39 commit a55e3e7
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 26 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,7 @@ public final class ClusterConfig implements Cloneable {
// Local cluster working via loopback interface (overrides default/LAN settings)
public static final int DEFAULT_LOCAL_METADATA_TIMEOUT = 1_000;

private Supplier<String> memberIdGenerator =
() -> Long.toHexString(UUID.randomUUID().getMostSignificantBits() & Long.MAX_VALUE);
private Supplier<String> memberIdGenerator = () -> UUID.randomUUID().toString().replace("-", "");
private Object metadata;
private int metadataTimeout = DEFAULT_METADATA_TIMEOUT;
private MetadataCodec metadataCodec = MetadataCodec.INSTANCE;
Expand Down
1 change: 0 additions & 1 deletion cluster-api/src/main/java/io/scalecube/cluster/Member.java
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,6 @@ public String namespace() {
* from other cluster members.
*
* @see io.scalecube.cluster.transport.api.TransportConfig#port(int)
* @see io.scalecube.cluster.transport.api.TransportConfig#host(String)
* @see ClusterConfig#containerHost(String)
* @see ClusterConfig#containerPort(Integer)
* @return member address
Expand Down
19 changes: 3 additions & 16 deletions cluster/src/main/java/io/scalecube/cluster/ClusterImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -366,23 +366,14 @@ private void startJmxMonitor() {
try {
StandardMBean standardMBean = new StandardMBean(monitorMBean, ClusterMonitorMBean.class);
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
ObjectName objectName = new ObjectName("io.scalecube.cluster:name=Cluster@" + member().id());
ObjectName objectName =
new ObjectName("io.scalecube.cluster:name=" + member().id() + "@" + System.nanoTime());
server.registerMBean(standardMBean, objectName);
} catch (Exception ex) {
throw Exceptions.propagate(ex);
}
}

private void stopJmxMonitor() {
try {
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
ObjectName objectName = new ObjectName("io.scalecube.cluster:name=Cluster@" + member().id());
server.unregisterMBean(objectName);
} catch (Exception ex) {
throw Exceptions.propagate(ex);
}
}

private void onError(Throwable th) {
LOGGER.error("[{}] Received unexpected error:", localMember, th);
}
Expand Down Expand Up @@ -518,11 +509,7 @@ private Mono<Void> doShutdown() {
return Mono.defer(
() -> {
LOGGER.info("[{}][doShutdown] Shutting down", localMember);
return Flux.concatDelayError(
leaveCluster(),
dispose(),
transport.stop(),
Mono.fromRunnable(this::stopJmxMonitor))
return Flux.concatDelayError(leaveCluster(), dispose(), transport.stop())
.then()
.doFinally(s -> scheduler.dispose())
.doOnSuccess(avoid -> LOGGER.info("[{}][doShutdown] Shutdown", localMember));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@

public class ClusterMonitorModel {

private Cluster cluster;
private ClusterConfig config;
private Supplier<Integer> incarnationSupplier;
private List<Address> seedMembers;
private Supplier<List<Member>> aliveMembersSupplier;
private Supplier<List<Member>> suspectedMembersSupplier;
private Supplier<List<Member>> removedMembersSupplier;
private final Cluster cluster;
private final ClusterConfig config;
private final Supplier<Integer> incarnationSupplier;
private final List<Address> seedMembers;
private final Supplier<List<Member>> aliveMembersSupplier;
private final Supplier<List<Member>> suspectedMembersSupplier;
private final Supplier<List<Member>> removedMembersSupplier;

private ClusterMonitorModel(Builder builder) {
this.cluster = builder.cluster;
Expand Down

0 comments on commit a55e3e7

Please sign in to comment.