Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions mrok/agent/ziticorn.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ def __init__(
events_publishers_port: int = 50000,
events_subscribers_port: int = 5000,
events_metrics_collect_interval: float = 5.0,
logging_config: dict | None = None,
):
super().__init__(
identity_file,
Expand All @@ -30,6 +31,7 @@ def __init__(
events_pub_port=events_publishers_port,
events_sub_port=events_subscribers_port,
events_metrics_collect_interval=events_metrics_collect_interval,
logging_config=logging_config,
)
self.app = app

Expand All @@ -50,6 +52,7 @@ def run(
events_publishers_port: int = 50000,
events_subscribers_port: int = 50001,
events_metrics_collect_interval: float = 5.0,
logging_config: dict | None = None,
):
master = ZiticornAgent(
app,
Expand All @@ -64,5 +67,6 @@ def run(
events_publishers_port=events_publishers_port,
events_subscribers_port=events_subscribers_port,
events_metrics_collect_interval=events_metrics_collect_interval,
logging_config=logging_config,
)
master.run()
6 changes: 4 additions & 2 deletions mrok/logging.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,8 @@ def get_logging_config(settings: Settings, cli_mode: bool = False) -> dict:
return logging_config


def setup_logging(settings: Settings, cli_mode: bool = False) -> None:
logging_config = get_logging_config(settings, cli_mode)
def setup_logging(
settings: Settings, cli_mode: bool = False, logging_config: dict | None = None
) -> None:
logging_config = logging_config or get_logging_config(settings, cli_mode)
logging.config.dictConfig(logging_config)
5 changes: 5 additions & 0 deletions mrok/proxy/master.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ def start_uvicorn_worker(
events_enabled: bool = True,
events_pub_port: int = 5000,
events_metrics_collect_interval: float = 5.0,
logging_config: dict | None = None,
):
import sys

Expand All @@ -60,6 +61,7 @@ def start_uvicorn_worker(
events_enabled=events_enabled,
events_publisher_port=events_pub_port,
events_metrics_collect_interval=events_metrics_collect_interval,
logging_config=logging_config,
)
worker.run()

Expand Down Expand Up @@ -102,6 +104,7 @@ def __init__(
events_pub_port: int = 50000,
events_sub_port: int = 50001,
events_metrics_collect_interval: float = 5.0,
logging_config: dict | None = None,
):
self.identity_file = identity_file
self.workers = server_workers
Expand All @@ -110,6 +113,7 @@ def __init__(
self.events_pub_port = events_pub_port
self.events_sub_port = events_sub_port
self.events_metrics_collect_interval = events_metrics_collect_interval
self.logging_config = logging_config
self.worker_identifiers = [str(uuid4()) for _ in range(server_workers)]
self.worker_processes: dict[str, CombinedProcess] = {}
self.zmq_pubsub_router_process = None
Expand Down Expand Up @@ -161,6 +165,7 @@ def start_worker(self, worker_id: str):
"events_enabled": self.events_enabled,
"events_pub_port": self.events_pub_port,
"events_metrics_collect_interval": self.events_metrics_collect_interval,
"logging_config": self.logging_config,
},
)
logger.info(f"Worker {worker_id} [{p.pid}] started")
Expand Down
4 changes: 3 additions & 1 deletion mrok/proxy/worker.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ def __init__(
events_enabled: bool = True,
events_publisher_port: int = 50000,
events_metrics_collect_interval: float = 5.0,
logging_config: dict | None = None,
):
self._worker_id = worker_id
self._identity_file = identity_file
Expand All @@ -41,6 +42,7 @@ def __init__(
self._server_timeout_keep_alive = server_timeout_keep_alive
self._server_limit_concurrency = server_limit_concurrency
self._server_limit_max_requests = server_limit_max_requests
self._logging_config = logging_config

self._events_enabled = events_enabled
self._event_publisher = (
Expand All @@ -65,7 +67,7 @@ def setup_app(self):
return app

def run(self):
setup_logging(get_settings())
setup_logging(get_settings(), logging_config=self._logging_config)
app = self.setup_app()

config = BackendConfig(
Expand Down
1 change: 1 addition & 0 deletions tests/agent/test_ziticorn.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,5 +46,6 @@ def test_run(mocker: MockerFixture):
events_publishers_port=4000,
events_subscribers_port=5000,
events_metrics_collect_interval=5.0,
logging_config=None,
)
mocked_agent.run.assert_called_once()
2 changes: 2 additions & 0 deletions tests/proxy/test_master.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ def test_start_uvicorn_worker_hook(
server_timeout_keep_alive=5,
server_limit_concurrency=None,
server_limit_max_requests=None,
logging_config=None,
)
m_worker.run.assert_called_once()

Expand Down Expand Up @@ -165,6 +166,7 @@ def get_asgi_app(self):
"events_metrics_collect_interval": 10,
"events_enabled": True,
"events_pub_port": 50000,
"logging_config": None,
},
)

Expand Down
2 changes: 1 addition & 1 deletion tests/proxy/test_worker.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ def test_run(
)
worker.run()

m_setup_logging.assert_called_once_with(settings)
m_setup_logging.assert_called_once_with(settings, logging_config=None)
m_mrokconfig_ctor.assert_called_once_with(
m_app,
ziti_identity_file,
Expand Down
Loading