diff --git a/src/openflexure_microscope_server/server/__init__.py b/src/openflexure_microscope_server/server/__init__.py index 52ee182f..546f7118 100644 --- a/src/openflexure_microscope_server/server/__init__.py +++ b/src/openflexure_microscope_server/server/__init__.py @@ -93,8 +93,10 @@ def customise_server( lt.logs.configure_thing_logger(logging.DEBUG) # Add an endpoint to get the logs - (directly calling the FastAPI decorator) - server.app.get("/log/")(retrieve_log) - server.app.get("/logfile/")(retrieve_log_from_file) + server.app.get(str(server._api_prefix.rstrip("/")) + "/log/")(retrieve_log) + server.app.get(str(server._api_prefix.rstrip("/")) + "/logfile/")( + retrieve_log_from_file + ) def serve_from_cli(argv: Optional[list[str]] = None) -> None: diff --git a/tests/unit_tests/test_server_config.py b/tests/unit_tests/test_server_config.py index 1aab586d..25dea30f 100644 --- a/tests/unit_tests/test_server_config.py +++ b/tests/unit_tests/test_server_config.py @@ -63,6 +63,7 @@ def test_customise_server(mocker): mocked_retrieve_log = mocker.patch.object(ofm_server, "retrieve_log") mocked_retrieve_log_file = mocker.patch.object(ofm_server, "retrieve_log_from_file") + mock_server._api_prefix = "/api/v3/" mock_app = mock_server.app # The wrapper returned for app.get so we can see what functions are decorated. wrapper = mock_app.get.return_value @@ -82,8 +83,8 @@ def test_customise_server(mocker): # Check the routes and functions are as expected. added_routes = [call.args[0] for call in mock_app.get.call_args_list] - assert "/log/" in added_routes - assert "/logfile/" in added_routes + assert "/api/v3/log/" in added_routes + assert "/api/v3/logfile/" in added_routes wrapped_functions = [call.args[0] for call in wrapper.call_args_list] assert mocked_retrieve_log in wrapped_functions assert mocked_retrieve_log_file