2424import os
2525import sys
2626import tempfile
27- from typing import List , Mapping , Optional , Sequence
27+ from typing import List , Mapping , Optional , Sequence , Tuple
2828
2929from twisted .internet import defer , task
3030
@@ -256,7 +256,7 @@ def finished(self) -> str:
256256 return self .base_directory
257257
258258
259- def start ( config_options : List [str ]) -> None :
259+ def load_config ( argv_options : List [str ]) -> Tuple [ HomeServerConfig , argparse . Namespace ] :
260260 parser = argparse .ArgumentParser (description = "Synapse Admin Command" )
261261 HomeServerConfig .add_arguments_to_parser (parser )
262262
@@ -282,11 +282,15 @@ def start(config_options: List[str]) -> None:
282282 export_data_parser .set_defaults (func = export_data_command )
283283
284284 try :
285- config , args = HomeServerConfig .load_config_with_parser (parser , config_options )
285+ config , args = HomeServerConfig .load_config_with_parser (parser , argv_options )
286286 except ConfigError as e :
287287 sys .stderr .write ("\n " + str (e ) + "\n " )
288288 sys .exit (1 )
289289
290+ return config , args
291+
292+
293+ def start (config : HomeServerConfig , args : argparse .Namespace ) -> None :
290294 if config .worker .worker_app is not None :
291295 assert config .worker .worker_app == "synapse.app.admin_cmd"
292296
@@ -325,7 +329,7 @@ def start(config_options: List[str]) -> None:
325329 # command.
326330
327331 async def run () -> None :
328- with LoggingContext ("command" ):
332+ with LoggingContext (name = "command" , server_name = config . server . server_name ):
329333 await _base .start (ss )
330334 await args .func (ss , args )
331335
@@ -337,5 +341,6 @@ async def run() -> None:
337341
338342
339343if __name__ == "__main__" :
340- with LoggingContext ("main" ):
341- start (sys .argv [1 :])
344+ homeserver_config , args = load_config (sys .argv [1 :])
345+ with LoggingContext (name = "main" , server_name = homeserver_config .server .server_name ):
346+ start (homeserver_config , args )
0 commit comments