Skip to content

Commit ca63748

Browse files
authored
Merge pull request #3365 from babsey/nest-server-mpi-logger
Add logger for nest-server-mpi
2 parents d6002e8 + 7d0d7e9 commit ca63748

File tree

2 files changed

+13
-7
lines changed

2 files changed

+13
-7
lines changed

bin/nest-server-mpi

+9-4
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,13 @@ from mpi4py import MPI
1919
if __name__ == "__main__":
2020
opt = docopt(__doc__)
2121

22+
import logging
2223
import os
23-
import sys
2424
import time
2525

26+
logger = logging.getLogger(__name__)
27+
logger.setLevel(os.getenv("NEST_SERVER_MPI_LOGGER_LEVEL", "INFO"))
28+
2629
import nest
2730
import nest.server
2831

@@ -35,17 +38,18 @@ rank = comm.Get_rank()
3538

3639
def log(call_name, msg):
3740
msg = f"==> WORKER {rank}/{time.time():.7f} ({call_name}): {msg}"
38-
print(msg, flush=True)
41+
logger.debug(msg)
3942

4043

4144
if rank == 0:
42-
print("==> Starting NEST Server Master on rank 0", flush=True)
45+
logger.info("==> Starting NEST Server Master on rank 0")
4346
nest.server.set_mpi_comm(comm)
4447
nest.server.run_mpi_app(host=opt.get("--host", HOST), port=opt.get("--port", PORT))
4548

4649
else:
47-
print(f"==> Starting NEST Server Worker on rank {rank}", flush=True)
50+
logger.info(f"==> Starting NEST Server Worker on rank {rank}")
4851
nest.server.set_mpi_comm(comm)
52+
4953
while True:
5054
log("spinwait", "waiting for call bcast")
5155
call_name = comm.bcast(None, root=0)
@@ -70,6 +74,7 @@ else:
7074
try:
7175
response = call(*args, **kwargs)
7276
except Exception:
77+
logger.error("Failed to execute call")
7378
continue
7479

7580
log(call_name, f"sending reponse gather, data={response}")

pynest/nest/server/hl_api_server.py

+4-3
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@
4040

4141
# This ensures that the logging information shows up in the console running the server,
4242
# even when Flask's event loop is running.
43-
root = logging.getLogger()
44-
root.addHandler(default_handler)
43+
logger = logging.getLogger()
44+
logger.addHandler(default_handler)
45+
logger.setLevel(os.getenv("NEST_SERVER_MPI_LOGGER_LEVEL", "INFO"))
4546

4647

4748
def get_boolean_environ(env_key, default_value="false"):
@@ -222,7 +223,7 @@ def do_exec(args, kwargs):
222223

223224
def log(call_name, msg):
224225
msg = f"==> MASTER 0/{time.time():.7f} ({call_name}): {msg}"
225-
print(msg, flush=True)
226+
logger.debug(msg)
226227

227228

228229
def do_call(call_name, args=[], kwargs={}):

0 commit comments

Comments
 (0)