How do I get nice formatted terminal logs when using hydra instead of tango's jsonnet configs
BigRedT opened this issue · comments
I have been trying to use Hydra for config management (more flexible command line interface) and therefore create step graphs and register runs & workspaces programmatically as follows:
@hydra.main(version_base=None,config_path="./exp_configs", config_name="some_exp_name")
def main(cfg):
workspace = Workspace.from_url(cfg.tango_workspace)
step_graph = create_step_graph(cfg)
run = workspace.register_run(StepGraph.ordered_steps(step_graph),name=cfg.run_name)
executor = Executor(workspace=workspace,parallelism=None)
output = executor.execute_step_graph(step_graph)
if __name__=='__main__':
main()
I execute this script with the usual python -m filename
Two questions:
- Is this the right way to do tango runs when NOT using tango's jsonnet configs or is there a better way?
- When I run experiments like this, I do not get the nicely color-coded and formatted terminal output that I get with
tango run config.jsonnet
. Is there a way to achieve that in this particular setup?
Hey Tanmay,
For your first question, yes that's probably fine. For your second question, add this to the beginning of your script:
from tango.common.logging import initialize_logging
initialize_logging(log_level="info", enable_cli_logs=True)
That functionality is not part of the public API, but it could be... I'd be happy to accept a PR that moves this code into a public function.
Created a PR #491