Add output size to ES metrics

This commit is contained in:
nataliya.valtman
2021-07-26 06:20:04 +03:00
parent 9becb2c468
commit 7357aeb1c9
6 changed files with 43 additions and 17 deletions
@@ -129,8 +129,9 @@ private object NoOpBuildReporter : BuildReporter(NoOpICReporter, NoOpBuildMetric
}
object NoOpBuildMetricsReporter : BuildMetricsReporter {
override fun startMeasure(metric: BuildTime, startNs: Long) {}
override fun endMeasure(metric: BuildTime, endNs: Long) {}
override fun startMeasure(time: BuildTime, startNs: Long) {}
override fun endMeasure(time: BuildTime, endNs: Long) {}
override fun addMetric(metric: BuildTime, value: Long) {}
override fun addAttribute(attribute: BuildAttribute) {}
override fun getMetrics(): BuildMetrics = BuildMetrics()
override fun addMetrics(metrics: BuildMetrics?) {}
@@ -345,6 +345,18 @@ abstract class AbstractKotlinCompile<T : CommonCompilerArguments> : AbstractKotl
try {
executeImpl(inputChanges)
metrics.measure(BuildTime.CALCULATE_OUTPUT_SIZE) {
metrics.addMetric(
BuildTime.SNAPSHOT_SIZE,
taskBuildDirectory.file("build-history.bin").get().asFile.length() +
taskBuildDirectory.file("last-build.bin").get().asFile.length() +
taskBuildDirectory.file("abi-snapshot.bin").get().asFile.length()
)
metrics.addMetric(BuildTime.OUTPUT_SIZE,
taskBuildDirectory.dir("caches-jvm").get().asFileTree.files.filter { it.isFile }.map { it.length() }
.sum()
)
}
} catch (t: Throwable) {
if (outputsBackup != null) {
metrics.measure(BuildTime.RESTORE_OUTPUT_FROM_BACKUP) {