From dd67557ab707fe765312ddd845dc75b9c8e9e450 Mon Sep 17 00:00:00 2001 From: Joseph Ware <53935796+DiamondJoseph@users.noreply.github.com> Date: Tue, 21 Oct 2025 14:07:43 +0100 Subject: [PATCH 1/3] fix: Prevent spans being swallowed by infinite startup span --- src/blueapi/service/runner.py | 1 - src/blueapi/worker/task_worker.py | 1 - 2 files changed, 2 deletions(-) diff --git a/src/blueapi/service/runner.py b/src/blueapi/service/runner.py index 2b5a5f37f5..f6b19e3598 100644 --- a/src/blueapi/service/runner.py +++ b/src/blueapi/service/runner.py @@ -71,7 +71,6 @@ def reload(self): self.start() LOGGER.info("Runner reloaded") - @start_as_current_span(TRACER) def start(self): environment_id = uuid.uuid4() try: diff --git a/src/blueapi/worker/task_worker.py b/src/blueapi/worker/task_worker.py index caa39fe7a0..7a87c02f58 100644 --- a/src/blueapi/worker/task_worker.py +++ b/src/blueapi/worker/task_worker.py @@ -378,7 +378,6 @@ def state(self) -> WorkerState: """ return self._state - @start_as_current_span(TRACER) def run(self) -> None: """ Run all tasks that are submitted to the worker. Blocks thread. From e40f61dfcb248f9f1666dcd247f3103244a00e3f Mon Sep 17 00:00:00 2001 From: Joseph Ware <53935796+DiamondJoseph@users.noreply.github.com> Date: Tue, 21 Oct 2025 14:08:08 +0100 Subject: [PATCH 2/3] fix: Remove further trace --- src/blueapi/service/runner.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/blueapi/service/runner.py b/src/blueapi/service/runner.py index f6b19e3598..7fa6d9251e 100644 --- a/src/blueapi/service/runner.py +++ b/src/blueapi/service/runner.py @@ -109,7 +109,6 @@ def stop(self): error_message=_safe_exception_message(e), ) - @start_as_current_span(TRACER, "function", "args", "kwargs") def run( self, function: Callable[P, T], From 3eeb231f1d9b611c735bd4ee59a8e37f6f153a09 Mon Sep 17 00:00:00 2001 From: Peter Holloway Date: Wed, 24 Jun 2026 14:23:06 +0100 Subject: [PATCH 3/3] Remove test for removed span --- tests/unit_tests/service/test_runner.py | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/tests/unit_tests/service/test_runner.py b/tests/unit_tests/service/test_runner.py index b41b3fd4c7..c6bbdf24db 100644 --- a/tests/unit_tests/service/test_runner.py +++ b/tests/unit_tests/service/test_runner.py @@ -5,10 +5,6 @@ from unittest.mock import MagicMock, Mock, NonCallableMock, patch import pytest -from observability_utils.tracing import ( - JsonObjectSpanExporter, - asserting_span_exporter, -) from pydantic import BaseModel, ValidationError from blueapi.service import interface @@ -293,10 +289,3 @@ def test_accepts_return_type( rpc_function: Callable[[], Any], ): started_runner.run(rpc_function) - - -def test_run_span_ok( - exporter: JsonObjectSpanExporter, started_runner: WorkerDispatcher -): - with asserting_span_exporter(exporter, "run", "function", "args", "kwargs"): - started_runner.run(interface.get_plans)