This is an automated email from the ASF dual-hosted git repository. ningyougang pushed a commit to branch add-container-count-metric in repository https://gitbox.apache.org/repos/asf/openwhisk.git
commit 09451419f67d9d4a4d7d66a18bc680c5d7cca980 Author: ning.yougang <[email protected]> AuthorDate: Tue May 10 13:23:59 2022 +0800 Use transaction to calculate --- .../apache/openwhisk/core/containerpool/docker/DockerClient.scala | 5 ++--- .../openwhisk/core/containerpool/kubernetes/KubernetesClient.scala | 4 +--- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/core/invoker/src/main/scala/org/apache/openwhisk/core/containerpool/docker/DockerClient.scala b/core/invoker/src/main/scala/org/apache/openwhisk/core/containerpool/docker/DockerClient.scala index 296c5eb58..d4196c0a8 100644 --- a/core/invoker/src/main/scala/org/apache/openwhisk/core/containerpool/docker/DockerClient.scala +++ b/core/invoker/src/main/scala/org/apache/openwhisk/core/containerpool/docker/DockerClient.scala @@ -39,6 +39,7 @@ import org.apache.openwhisk.core.ConfigKeys import org.apache.openwhisk.core.containerpool.ContainerId import org.apache.openwhisk.core.containerpool.ContainerAddress +import java.time.Instant import scala.concurrent.duration.Duration object DockerContainerId { @@ -203,14 +204,12 @@ class DockerClient(dockerHost: Option[String] = None, LoggingMarkers.INVOKER_DOCKER_CMD(args.head), s"running ${cmd.mkString(" ")} (timeout: $timeout)", logLevel = InfoLevel) - val t0 = System.currentTimeMillis() executeProcess(cmd, timeout).andThen { case Success(_) => - val t1 = System.currentTimeMillis() MetricEmitter.emitHistogramMetric( LogMarkerToken("docker", "runCmd", "duration", Some(args.head), Map("cmd" -> args.head))( MeasurementUnit.time.milliseconds), - t1 - t0) + Instant.now.toEpochMilli - transid.meta.start.toEpochMilli) transid.finished(this, start) case Failure(pte: ProcessTimeoutException) => transid.failed(this, start, pte.getMessage, ErrorLevel) diff --git a/core/invoker/src/main/scala/org/apache/openwhisk/core/containerpool/kubernetes/KubernetesClient.scala b/core/invoker/src/main/scala/org/apache/openwhisk/core/containerpool/kubernetes/KubernetesClient.scala index 5ba09f11d..5c4e6765f 100644 --- a/core/invoker/src/main/scala/org/apache/openwhisk/core/containerpool/kubernetes/KubernetesClient.scala +++ b/core/invoker/src/main/scala/org/apache/openwhisk/core/containerpool/kubernetes/KubernetesClient.scala @@ -151,7 +151,6 @@ class KubernetesClient( log.info(this, s"Pod spec being created\n${Serialization.asYaml(pod)}") } val namespace = kubeRestClient.getNamespace - val t0 = System.currentTimeMillis() val start = transid.started( this, LoggingMarkers.INVOKER_KUBEAPI_CMD("create"), @@ -183,11 +182,10 @@ class KubernetesClient( waitForPod(namespace, createdPod, start.start, config.timeouts.run) .map { readyPod => transid.finished(this, start, logLevel = InfoLevel) - val t1 = System.currentTimeMillis() MetricEmitter.emitHistogramMetric( LogMarkerToken("kubeapi", "create", "duration", Some("create"), Map("cmd" -> "create"))( MeasurementUnit.time.milliseconds), - t1 - t0) + Instant.now.toEpochMilli - transid.meta.start.toEpochMilli) toContainer(readyPod) } .recoverWith {
