Skip to content

Commit c5573d6

Browse files
Astarryactiveshadow
authored andcommittedMar 19, 2025
feat(helics): allow different log levels for sub brokers
1 parent 358d2b5 commit c5573d6

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed
 

‎src/python/phenix_apps/apps/helics/helics.py

+15-7
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,9 @@ def pre_start(self):
5555

5656
total_fed_count = 0
5757

58-
# broker hosts --> ip:port --> fed-count
58+
# broker hosts --> ip:port --> ['fed_count', 'log_level']
5959
# hosts to create start scripts for, ip:port combos to create sub brokers for
60-
brokers = {}
60+
brokers = {}
6161
federates = self.extract_annotated_topology_nodes('helics/federate')
6262

6363
for fed in federates:
@@ -72,6 +72,7 @@ def pre_start(self):
7272
for config in configs:
7373
broker = config.get('broker', '127.0.0.1')
7474
count = config.get('fed-count', 1)
75+
level = config.get('log-level', 'SUMMARY')
7576

7677
total_fed_count += count
7778

@@ -105,8 +106,12 @@ def pre_start(self):
105106
self.add_label(hostname, 'group', 'helics')
106107
self.add_label(hostname, 'helics', 'broker')
107108

108-
entry = brokers.get(hostname, {broker_ip: 0})
109-
entry[broker] += count
109+
entry = brokers.get(hostname, {broker_ip: [0, None]})
110+
entry[broker][0] += count
111+
112+
# only overwrite the log level if it wasn't already set
113+
if entry[broker][1] == None:
114+
entry[broker][1] = level
110115

111116
brokers[hostname] = entry
112117

@@ -128,14 +133,17 @@ def pre_start(self):
128133
broker_configs = configs.get(hostname, [])
129134

130135
# individual sub brokers for host (there will usually just be one)
131-
for endpoint, feds in subs.items():
136+
for endpoint, fedinfo in subs.items():
132137
root_broker_config['subs'] += 1
133138

139+
count = fedinfo[0]
140+
level = fedinfo[1]
141+
134142
broker_configs.append({
135-
'feds': feds,
143+
'feds': count,
136144
'parent': root_ip,
137145
'endpoint': endpoint,
138-
'log-level': broker_md.get('log-level', 'summary'),
146+
'log-level': level,
139147
'log-file': os.path.join(log_dir, 'helics-sub-broker.log'),
140148
})
141149

0 commit comments

Comments
 (0)