diff options
author | John St. John <jstjohn@users.noreply.github.com> | 2017-09-21 16:28:23 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-21 16:28:23 -0700 |
commit | 9b0bed19489dbbd59c52a77e9c0c080a880ca262 (patch) | |
tree | 74934c57133ada3cd84a5c8a702cdf2683e8881e /src/main/scala/xyz/driver/core/trace/LoggingTrace.scala | |
parent | 037f522caf47d70d674daba62b540a451542c64d (diff) | |
download | driver-core-9b0bed19489dbbd59c52a77e9c0c080a880ca262.tar.gz driver-core-9b0bed19489dbbd59c52a77e9c0c080a880ca262.tar.bz2 driver-core-9b0bed19489dbbd59c52a77e9c0c080a880ca262.zip |
Jstjohn/google stackdriver trace (#64)v1.0.1
Add app-level tracing to driver-core (https://www.pivotaltracker.com/story/show/151100422)
Diffstat (limited to 'src/main/scala/xyz/driver/core/trace/LoggingTrace.scala')
-rw-r--r-- | src/main/scala/xyz/driver/core/trace/LoggingTrace.scala | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/core/trace/LoggingTrace.scala b/src/main/scala/xyz/driver/core/trace/LoggingTrace.scala new file mode 100644 index 0000000..9db85b7 --- /dev/null +++ b/src/main/scala/xyz/driver/core/trace/LoggingTrace.scala @@ -0,0 +1,21 @@ +package xyz.driver.core.trace + +import akka.http.scaladsl.model.HttpRequest +import com.google.cloud.trace.v1.consumer.TraceConsumer +import com.typesafe.scalalogging.Logger + +final class LoggingTrace(appName: String, appEnvironment: String, log: Logger) extends GoogleServiceTracer { + + private val traceConsumer: TraceConsumer = new LoggingTraceConsumer(log) + private val googleServiceTracer = new GoogleStackdriverTraceWithConsumer( + "logging-tracer", + appName, + appEnvironment, + traceConsumer + ) + + override def startSpan(httpRequest: HttpRequest): GoogleStackdriverTraceSpan = + googleServiceTracer.startSpan(httpRequest) + + override def endSpan(span: GoogleStackdriverTraceSpan): Unit = googleServiceTracer.endSpan(span) +} |