33 * Dumps information related to the cluster messaging database.
44 * Only to be executer on CJOC.
55 */
6-
76import java.io.PrintStream ;
87import java.lang.reflect.Field ;
98import java.lang.reflect.Method ;
@@ -14,23 +13,18 @@ import java.util.Map.Entry;
1413import java.util.Set ;
1514import java.util.concurrent.ConcurrentMap ;
1615import java.util.concurrent.ConcurrentNavigableMap ;
17-
1816import com.cloudbees.opscenter.context.Messaging ;
1917import com.cloudbees.opscenter.context.Messaging.OutboxEntry ;
2018import com.cloudbees.opscenter.server.messaging.Transport ;
2119import com.cloudbees.opscenter.server.model.ConnectedMaster ;
22-
2320import hudson.ExtensionList ;
2421import hudson.model.AsyncPeriodicWork ;
2522import hudson.model.PeriodicWork ;
2623import hudson.remoting.Channel ;
2724import jenkins.model.Jenkins ;
28-
29-
3025Jenkins jenkins = Jenkins . getInstance();
3126out. println (" InstanceId: " + jenkins. getLegacyInstanceId());
3227Transport transport = getTransport();
33-
3428try {
3529 for (ConnectedMaster m : jenkins. getAllItems(ConnectedMaster . class)) {
3630 String instanceId = m. getLegacyInstanceId();
@@ -43,25 +37,20 @@ try {
4337 } else {
4438 continue ;
4539 }
46-
4740 out. println (" capabilities: " + m. checkCapability(Messaging . class));
48-
4941 Method method;
50-
5142 try {
5243 out. println (" batchSource: " + transport. getBatchSource(channel));
5344 } catch (Exception e) {
5445 out. println (" Error batchSource: " + e. toString());
5546 out. println (" batchSource: " + Messaging . batchSource());
5647 }
57-
5848 try {
5949 out. println (" batchSink: " + transport. getBatchSink(channel));
6050 } catch (Exception e) {
6151 out. println (" Error batchSink: " + e. toString());
6252 out. println (" batchSink: " + Messaging . batchSink());
6353 }
64-
6554 try {
6655 out. println (" reliableMessageTransport: " + transport. getReliableMessageTransport(channel));
6756 } catch (Exception e) {
@@ -73,21 +62,16 @@ try {
7362 e. printStackTrace(out);
7463}
7564final ClassLoader oldContext = Thread . currentThread(). getContextClassLoader();
76-
7765try {
7866 Thread . currentThread(). setContextClassLoader(Jenkins . getInstance(). getPluginManager(). uberClassLoader);
79-
8067 Map<ConnectedMaster , Map<Class<?> , Map<String , List<Object > > > > offlineBuffer;
81-
8268 ConcurrentMap<String , Long > maxPull;
8369 ConcurrentMap<String , Long > minPush;
84- ConcurrentNavigableMap<String , Messaging.OutboxEntry <? > > outbox;
85-
70+ NavigableMap<String , Messaging.OutboxEntry <? > > outbox;
8671 maxPull = transport. maxPull;
8772 minPush = transport. minPush;
8873 outbox = transport. outbox
8974 offlineBuffer = transport. offlineBuffer
90-
9175 try {
9276 out. println (" maxPulls:" );
9377 Set<Entry<String , Long > > entrySet = maxPull. entrySet();
9882 out. println (" Could not get maxPulls information" );
9983 e. printStackTrace(out);
10084 }
101-
10285 try {
10386 out. println (" minPush:" );
10487 Set<Entry<String , Long > > entrySet = minPush. entrySet();
@@ -109,11 +92,9 @@ try {
10992 out. println (" Could not get minPush information" );
11093 e. printStackTrace(out);
11194 }
112-
11395 try {
11496 out. println (" outbox:" );
11597 Set<Entry<String , OutboxEntry<?> > > entrySet = outbox. entrySet();
116-
11798 for (Entry<String , OutboxEntry<?> > entry : entrySet) {
11899 OutboxEntry<?> value = entry. getValue();
119100 out. println (" - " + entry. getKey() + " - source:" + value. getAddress() +
@@ -125,16 +106,13 @@ try {
125106 out. println (" Could not get minPulls information" );
126107 e. printStackTrace(out);
127108 }
128-
129109 try {
130110 Set<Entry<ConnectedMaster , Map<Class<?> , Map<String , List<Object > > > > > entrySet = offlineBuffer. entrySet();
131111 out. println (" offlineBuffer: " + offlineBuffer. size());
132-
133112 for (Entry<ConnectedMaster , Map<Class<?> , Map<String , List<Object > > > > entry : entrySet) {
134113 Map<Class<?> , Map<String , List<Object > > > messagesMap = entry. getValue();
135114 ConnectedMaster key = entry. getKey();
136115 out. println (" " + key. getFullDisplayName() + " (" + key. getLegacyInstanceId() + " ) - " + messagesMap. size());
137-
138116 for (Entry<Class<?> , Map<String , List<Object > > > messages : messagesMap. entrySet()) {
139117 Map<String , List<Object > > value = messages. getValue();
140118 out. println (" " + messages. getKey() + " :" + value. size());
@@ -151,7 +129,6 @@ try {
151129} finally {
152130 Thread . currentThread(). setContextClassLoader(oldContext);
153131}
154-
155132Transport getTransport () {
156133 ExtensionList<PeriodicWork > all = AsyncPeriodicWork . all();
157134 for (PeriodicWork periodicWork : all) {
0 commit comments