diff --git a/metadata/src/main/java/net/laprun/sustainability/power/SensorMeasure.java b/metadata/src/main/java/net/laprun/sustainability/power/SensorMeasure.java index 44af907..3c200f0 100644 --- a/metadata/src/main/java/net/laprun/sustainability/power/SensorMeasure.java +++ b/metadata/src/main/java/net/laprun/sustainability/power/SensorMeasure.java @@ -1,5 +1,7 @@ package net.laprun.sustainability.power; +import java.util.Arrays; + /** * A power consumption measure as recorded by a sensor, recorded over a given period of time. The meaning of each component * measure is provided by the {@link SensorMetadata} information associated @@ -70,4 +72,9 @@ default double externalCPUShare() { */ SensorMeasure missing = new SensorMeasure() { }; + + default String asString() { + return getClass().getSimpleName() + '(' + startMs() + ',' + endMs() + " -> duration: " + durationMs() + ')' + + Arrays.toString(components()); + } } diff --git a/metadata/src/main/java/net/laprun/sustainability/power/measures/ExternalCPUShareSensorMeasure.java b/metadata/src/main/java/net/laprun/sustainability/power/measures/ExternalCPUShareSensorMeasure.java index 40ef59b..8c9cb8d 100644 --- a/metadata/src/main/java/net/laprun/sustainability/power/measures/ExternalCPUShareSensorMeasure.java +++ b/metadata/src/main/java/net/laprun/sustainability/power/measures/ExternalCPUShareSensorMeasure.java @@ -32,4 +32,9 @@ public boolean isPartial() { public double externalCPUShare() { return cpuShare; } + + @Override + public String toString() { + return asString() + " extCPU: " + externalCPUShare(); + } } diff --git a/metadata/src/main/java/net/laprun/sustainability/power/measures/NoDurationSensorMeasure.java b/metadata/src/main/java/net/laprun/sustainability/power/measures/NoDurationSensorMeasure.java index 75b6989..d8024df 100644 --- a/metadata/src/main/java/net/laprun/sustainability/power/measures/NoDurationSensorMeasure.java +++ b/metadata/src/main/java/net/laprun/sustainability/power/measures/NoDurationSensorMeasure.java @@ -11,4 +11,8 @@ * @param endMs the end timestamp in milliseconds for this measure */ public record NoDurationSensorMeasure(double[] components, long startMs, long endMs) implements SensorMeasure { + @Override + public String toString() { + return asString(); + } } diff --git a/metadata/src/main/java/net/laprun/sustainability/power/measures/PartialSensorMeasure.java b/metadata/src/main/java/net/laprun/sustainability/power/measures/PartialSensorMeasure.java index ebd7e81..7ccc944 100644 --- a/metadata/src/main/java/net/laprun/sustainability/power/measures/PartialSensorMeasure.java +++ b/metadata/src/main/java/net/laprun/sustainability/power/measures/PartialSensorMeasure.java @@ -13,4 +13,13 @@ */ public record PartialSensorMeasure(double[] components, long startMs, long endMs, long durationMs) implements SensorMeasure { + @Override + public boolean isPartial() { + return true; + } + + @Override + public String toString() { + return asString(); + } }