Logging¶
Geneva uses multiple loggers during execution. evolve.py creates the parent logger, and creates a subfolder of the current time under the trials/ directory.
- Within this directory, it creates 5 subfolders:
data: used for misc. data related to strategy evaluationflags: used to write status files to set eventsgenerations: used to store the full generations and hall of fame after each generationlogs: stores logs for evaluationpackets: stores packet captures during strategy evolution
The two main log files used by evolve.py are ga.log and ga_debug.log (everything in debug mode). As each strategy is evaluated, a <id>_engine.log, <id>_server.log, and <id>_client.log files are generated.
For example, one run’s output could be:
# ls trials
2020-03-23_20:03:08
# ls trials/2020-03-23_20:03:08
data flags generations logs packets
# ls trials/2020-03-23_20:03:08/logs
ga.log ga_debug.log zhak1n81_client.log zhak1n81_engine.log zhak1n81_server.log