summaryrefslogtreecommitdiff
path: root/simulator
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-03-26 15:36:44 +0100
committerFabian Mastenbroek <mail.fabianm@gmail.com>2021-03-26 15:41:07 +0100
commitbe95e0b10b648e256c4eb8c2190ad6ed61f8afdd (patch)
tree47bbf23682756685309ceae47bc898ad3b103123 /simulator
parentb8ba3cf81da6367285c5d5a23a70f8c340a45fdd (diff)
workflow: Remove event tracer from workflow service
This change removes the event tracer from the OpenDC Workflow service as we start migrating to the industry standard OpenTelemetry.
Diffstat (limited to 'simulator')
-rw-r--r--simulator/opendc-compute/opendc-compute-service/src/main/kotlin/org/opendc/compute/service/ComputeService.kt1
-rw-r--r--simulator/opendc-workflow/opendc-workflow-service/build.gradle.kts1
-rw-r--r--simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowEvent.kt79
-rw-r--r--simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowService.kt4
-rw-r--r--simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/internal/WorkflowServiceImpl.kt27
-rw-r--r--simulator/opendc-workflow/opendc-workflow-service/src/test/kotlin/org/opendc/workflow/service/WorkflowServiceIntegrationTest.kt3
6 files changed, 0 insertions, 115 deletions
diff --git a/simulator/opendc-compute/opendc-compute-service/src/main/kotlin/org/opendc/compute/service/ComputeService.kt b/simulator/opendc-compute/opendc-compute-service/src/main/kotlin/org/opendc/compute/service/ComputeService.kt
index 4bc0ba78..98566da3 100644
--- a/simulator/opendc-compute/opendc-compute-service/src/main/kotlin/org/opendc/compute/service/ComputeService.kt
+++ b/simulator/opendc-compute/opendc-compute-service/src/main/kotlin/org/opendc/compute/service/ComputeService.kt
@@ -23,7 +23,6 @@
package org.opendc.compute.service
import io.opentelemetry.api.metrics.Meter
-import kotlinx.coroutines.flow.Flow
import org.opendc.compute.api.ComputeClient
import org.opendc.compute.service.driver.Host
import org.opendc.compute.service.internal.ComputeServiceImpl
diff --git a/simulator/opendc-workflow/opendc-workflow-service/build.gradle.kts b/simulator/opendc-workflow/opendc-workflow-service/build.gradle.kts
index 5625c3d8..040a9ff6 100644
--- a/simulator/opendc-workflow/opendc-workflow-service/build.gradle.kts
+++ b/simulator/opendc-workflow/opendc-workflow-service/build.gradle.kts
@@ -33,7 +33,6 @@ dependencies {
api(platform(project(":opendc-platform")))
api(project(":opendc-workflow:opendc-workflow-api"))
api(project(":opendc-compute:opendc-compute-api"))
- api(project(":opendc-trace:opendc-trace-core"))
api(project(":opendc-telemetry:opendc-telemetry-api"))
implementation(project(":opendc-utils"))
implementation("io.github.microutils:kotlin-logging")
diff --git a/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowEvent.kt b/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowEvent.kt
deleted file mode 100644
index bb2ad6c6..00000000
--- a/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowEvent.kt
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright (c) 2021 AtLarge Research
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in all
- * copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-package org.opendc.workflow.service
-
-import org.opendc.trace.core.Event
-import org.opendc.workflow.api.Job
-import org.opendc.workflow.api.Task
-
-/**
- * An event emitted by the [WorkflowService].
- */
-public sealed class WorkflowEvent : Event() {
- /**
- * The [WorkflowService] that emitted the event.
- */
- public abstract val service: WorkflowService
-
- /**
- * This event is emitted when a job was submitted to the scheduler.
- */
- public data class JobSubmitted(
- override val service: WorkflowService,
- public val job: Job
- ) : WorkflowEvent()
-
- /**
- * This event is emitted when a job has become active.
- */
- public data class JobStarted(
- override val service: WorkflowService,
- public val job: Job
- ) : WorkflowEvent()
-
- /**
- * This event is emitted when a job has finished processing.
- */
- public data class JobFinished(
- override val service: WorkflowService,
- public val job: Job
- ) : WorkflowEvent()
-
- /**
- * This event is emitted when a task of a job has started processing.
- */
- public data class TaskStarted(
- override val service: WorkflowService,
- public val job: Job,
- public val task: Task
- ) : WorkflowEvent()
-
- /**
- * This event is emitted when a task of a job has started processing.
- */
- public data class TaskFinished(
- override val service: WorkflowService,
- public val job: Job,
- public val task: Task
- ) : WorkflowEvent()
-}
diff --git a/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowService.kt b/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowService.kt
index 94302790..d3358ef1 100644
--- a/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowService.kt
+++ b/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/WorkflowService.kt
@@ -23,9 +23,7 @@
package org.opendc.workflow.service
import io.opentelemetry.api.metrics.Meter
-import kotlinx.coroutines.flow.Flow
import org.opendc.compute.api.ComputeClient
-import org.opendc.trace.core.EventTracer
import org.opendc.workflow.api.Job
import org.opendc.workflow.service.internal.WorkflowServiceImpl
import org.opendc.workflow.service.scheduler.WorkflowSchedulerMode
@@ -75,7 +73,6 @@ public interface WorkflowService : AutoCloseable {
public operator fun invoke(
context: CoroutineContext,
clock: Clock,
- tracer: EventTracer,
meter: Meter,
compute: ComputeClient,
mode: WorkflowSchedulerMode,
@@ -87,7 +84,6 @@ public interface WorkflowService : AutoCloseable {
return WorkflowServiceImpl(
context,
clock,
- tracer,
meter,
compute,
mode,
diff --git a/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/internal/WorkflowServiceImpl.kt b/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/internal/WorkflowServiceImpl.kt
index 1aef6f8e..32191b8f 100644
--- a/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/internal/WorkflowServiceImpl.kt
+++ b/simulator/opendc-workflow/opendc-workflow-service/src/main/kotlin/org/opendc/workflow/service/internal/WorkflowServiceImpl.kt
@@ -24,13 +24,9 @@ package org.opendc.workflow.service.internal
import io.opentelemetry.api.metrics.Meter
import kotlinx.coroutines.*
-import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.map
import mu.KotlinLogging
import org.opendc.compute.api.*
-import org.opendc.trace.core.EventTracer
-import org.opendc.trace.core.consumeAsFlow
-import org.opendc.trace.core.enable
import org.opendc.workflow.api.Job
import org.opendc.workflow.api.WORKFLOW_TASK_CORES
import org.opendc.workflow.service.*
@@ -52,7 +48,6 @@ import kotlin.coroutines.resume
public class WorkflowServiceImpl(
context: CoroutineContext,
internal val clock: Clock,
- internal val tracer: EventTracer,
private val meter: Meter,
private val computeClient: ComputeClient,
mode: WorkflowSchedulerMode,
@@ -249,7 +244,6 @@ public class WorkflowServiceImpl(
conts[job] = cont
submittedJobs.add(1)
- tracer.commit(WorkflowEvent.JobSubmitted(this, jobInstance.job))
requestCycle()
}
@@ -289,12 +283,6 @@ public class WorkflowServiceImpl(
activeJobs += jobInstance
runningJobs.add(1)
- tracer.commit(
- WorkflowEvent.JobStarted(
- this,
- jobInstance.job
- )
- )
rootListener.jobStarted(jobInstance)
}
@@ -374,13 +362,6 @@ public class WorkflowServiceImpl(
val task = taskByServer.getValue(server)
task.startedAt = clock.millis()
runningTasks.add(1)
- tracer.commit(
- WorkflowEvent.TaskStarted(
- this@WorkflowServiceImpl,
- task.job.job,
- task.task
- )
- )
rootListener.taskStarted(task)
}
ServerState.TERMINATED, ServerState.ERROR -> {
@@ -399,13 +380,6 @@ public class WorkflowServiceImpl(
runningTasks.add(-1)
finishedTasks.add(1)
- tracer.commit(
- WorkflowEvent.TaskFinished(
- this@WorkflowServiceImpl,
- task.job.job,
- task.task
- )
- )
rootListener.taskFinished(task)
// Add job roots to the scheduling queue
@@ -434,7 +408,6 @@ public class WorkflowServiceImpl(
activeJobs -= job
runningJobs.add(-1)
finishedJobs.add(1)
- tracer.commit(WorkflowEvent.JobFinished(this, job.job))
rootListener.jobFinished(job)
conts.remove(job.job)?.resume(Unit)
diff --git a/simulator/opendc-workflow/opendc-workflow-service/src/test/kotlin/org/opendc/workflow/service/WorkflowServiceIntegrationTest.kt b/simulator/opendc-workflow/opendc-workflow-service/src/test/kotlin/org/opendc/workflow/service/WorkflowServiceIntegrationTest.kt
index 28fe76c7..e06e5eb3 100644
--- a/simulator/opendc-workflow/opendc-workflow-service/src/test/kotlin/org/opendc/workflow/service/WorkflowServiceIntegrationTest.kt
+++ b/simulator/opendc-workflow/opendc-workflow-service/src/test/kotlin/org/opendc/workflow/service/WorkflowServiceIntegrationTest.kt
@@ -42,7 +42,6 @@ import org.opendc.format.trace.gwf.GwfTraceReader
import org.opendc.simulator.compute.SimSpaceSharedHypervisorProvider
import org.opendc.simulator.utils.DelayControllerClockAdapter
import org.opendc.telemetry.sdk.toOtelClock
-import org.opendc.trace.core.EventTracer
import org.opendc.workflow.service.internal.WorkflowServiceImpl
import org.opendc.workflow.service.scheduler.WorkflowSchedulerMode
import org.opendc.workflow.service.scheduler.job.NullJobAdmissionPolicy
@@ -63,7 +62,6 @@ internal class WorkflowServiceIntegrationTest {
@Test
fun testTrace() = runBlockingTest {
val clock = DelayControllerClockAdapter(this)
- val tracer = EventTracer(clock)
val meterProvider: MeterProvider = SdkMeterProvider
.builder()
@@ -92,7 +90,6 @@ internal class WorkflowServiceIntegrationTest {
val scheduler = WorkflowService(
coroutineContext,
clock,
- tracer,
meterProvider.get("opendc-workflow"),
compute.newClient(),
mode = WorkflowSchedulerMode.Batch(100),