diff --git a/Start Worker.launch b/Start Worker.launch index 7e358d3fa62c5a5cc236d6e6a6c8987feb0f16c8..80654e57dc10ad36cd16da20a9305ab573bfc1ec 100644 --- a/Start Worker.launch +++ b/Start Worker.launch @@ -1,15 +1,15 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication"> -<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> -<listEntry value="/worker/src/explorviz/worker/main/WorkerStarter.java"/> -</listAttribute> -<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> -<listEntry value="1"/> -</listAttribute> -<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> -<listEntry value="org.eclipse.debug.ui.launchGroup.run"/> -</listAttribute> -<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="explorviz.worker.main.WorkerStarter"/> -<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="worker"/> -<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx4G"/> -</launchConfiguration> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication"> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS"> +<listEntry value="/worker/test/explorviz/worker/main/WorkerStarter.java"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES"> +<listEntry value="1"/> +</listAttribute> +<listAttribute key="org.eclipse.debug.ui.favoriteGroups"> +<listEntry value="org.eclipse.debug.ui.launchGroup.run"/> +</listAttribute> +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="explorviz.worker.main.WorkerStarter"/> +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="worker"/> +<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx4G"/> +</launchConfiguration> diff --git a/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java b/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java index 6dcf9db366e5188fd871025bbd46db882cea8f50..caa3119c2a23f02b6d723e8f8f01c35bff596365 100644 --- a/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java +++ b/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java @@ -13,14 +13,13 @@ import com.lmax.disruptor.RingBuffer; import explorviz.live_trace_processing.filter.RecordArrayEvent; import explorviz.live_trace_processing.filter.counting.CountingThroughputFilter; -import explorviz.live_trace_processing.reader.IPeriodicTimeSignalReceiver; -import explorviz.live_trace_processing.reader.TimeSignalReader; import explorviz.live_trace_processing.record.IRecord; import explorviz.live_trace_processing.record.event.normal.AfterFailedOperationEventRecord; import explorviz.live_trace_processing.record.event.normal.AfterOperationEventRecord; import explorviz.live_trace_processing.record.event.normal.BeforeOperationEventRecord; import explorviz.live_trace_processing.record.misc.HostApplicationMetaDataRecord; import explorviz.live_trace_processing.record.misc.StringRegistryRecord; +import explorviz.live_trace_processing.record.misc.SystemMonitoringRecord; import explorviz.live_trace_processing.record.misc.TimedPeriodRecord; public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalReceiver { @@ -144,6 +143,16 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec } break; } + case SystemMonitoringRecord.CLAZZ_ID: { + if (buffer.remaining() >= (SystemMonitoringRecord.BYTE_LENGTH_WITH_CLAZZ_ID - 1)) { + readInSystemMonitoringRecord(buffer); + } else { + buffer.position(buffer.position() - 1); + buffer.compact(); + return; + } + break; + } default: { System.out.println("unknown class id " + clazzId + " at offset " + (buffer.position() - 4)); @@ -167,7 +176,8 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec hostApplicationMetadata = new HostApplicationMetaDataRecord(hostname, application); } else { final byte[] message = new byte[HostApplicationMetaDataRecord.BYTE_LENGTH_WITH_CLAZZ_ID]; - buffer.position(buffer.position() - HostApplicationMetaDataRecord.BYTE_LENGTH_WITH_CLAZZ_ID); + buffer.position(buffer.position() + - HostApplicationMetaDataRecord.BYTE_LENGTH_WITH_CLAZZ_ID); buffer.get(message); putInWaitingMessages(message); } @@ -182,11 +192,12 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String operation = getStringFromRegistry(operationId); if (operation != null) { - putInRingBuffer(new BeforeOperationEventRecord(timestamp, traceId, orderIndex, operationId, - operation)); + putInRingBuffer(new BeforeOperationEventRecord(timestamp, traceId, orderIndex, + operationId, operation)); } else { final byte[] message = new byte[BeforeOperationEventRecord.BYTE_LENGTH_WITH_CLAZZ_ID]; - buffer.position(buffer.position() - BeforeOperationEventRecord.BYTE_LENGTH_WITH_CLAZZ_ID); + buffer.position(buffer.position() + - BeforeOperationEventRecord.BYTE_LENGTH_WITH_CLAZZ_ID); buffer.get(message); putInWaitingMessages(message); } @@ -207,7 +218,8 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec operationId, operation, cause)); } else { final byte[] message = new byte[AfterFailedOperationEventRecord.BYTE_LENGTH_WITH_CLAZZ_ID]; - buffer.position(buffer.position() - AfterFailedOperationEventRecord.BYTE_LENGTH_WITH_CLAZZ_ID); + buffer.position(buffer.position() + - AfterFailedOperationEventRecord.BYTE_LENGTH_WITH_CLAZZ_ID); buffer.get(message); putInWaitingMessages(message); } @@ -221,8 +233,8 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String operation = getStringFromRegistry(operationId); if (operation != null) { - putInRingBuffer(new AfterOperationEventRecord(timestamp, traceId, orderIndex, operationId, - operation)); + putInRingBuffer(new AfterOperationEventRecord(timestamp, traceId, orderIndex, + operationId, operation)); } else { final byte[] message = new byte[AfterOperationEventRecord.BYTE_LENGTH_WITH_CLAZZ_ID]; buffer.position(buffer.position() - AfterOperationEventRecord.BYTE_LENGTH_WITH_CLAZZ_ID); @@ -232,6 +244,15 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec } + private final void readInSystemMonitoringRecord(final ByteBuffer buffer) { + final double cpuUtil = buffer.getDouble(); + final long usedRAM = buffer.getLong(); + final long absoluteRAM = buffer.getLong(); + System.out.println(new SystemMonitoringRecord(cpuUtil, usedRAM, absoluteRAM).toString()); + // putInRingBuffer(new SystemMonitoringRecord(cpuUtil, usedRAM, + // absoluteRAM)); + } + private final void putInWaitingMessages(final byte[] message) { waitingForStringMessages.add(message); }