participant-integration-api: Create the metrics CSV directory. (#7253)

It turns out that if you give the CSV reporter a non-existent directory,
it crashes. I did not expect this.

This constructs the directory so you don't have to worry about that.

CHANGELOG_BEGIN
CHANGELOG_END
This commit is contained in:
Samir Talwar 2020-08-28 09:48:50 +02:00 committed by GitHub
parent 9374264e6d
commit c34f15d497
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4,7 +4,7 @@
package com.daml.platform.configuration
import java.net.{InetSocketAddress, URI}
import java.nio.file.{Path, Paths}
import java.nio.file.{Files, Path, Paths}
import com.codahale.metrics
import com.codahale.metrics.{MetricRegistry, ScheduledReporter}
@ -26,11 +26,13 @@ object MetricsReporter {
}
final case class Csv(directory: Path) extends MetricsReporter {
override def register(registry: MetricRegistry): ScheduledReporter =
override def register(registry: MetricRegistry): ScheduledReporter = {
Files.createDirectories(directory)
metrics.CsvReporter
.forRegistry(registry)
.build(directory.toFile)
}
}
final case class Graphite(address: InetSocketAddress, prefix: Option[String] = None)
extends MetricsReporter {