I'm currently utilizing the client generation feature to use dagger modules with custom applications and so far its working really well
I'm using dagger.Connect to connect to a remote dagger-engine, then run a function there, now for some reason I noticed that the first connection takes a long time to finish so I implemented a way to reuse the same connection each time I want to run a function and its working great
Additionally I'm able to use the same connection to run multiple functions in multiple go routines at the same time, so far so good
Now the issue is that I don't have a good way to view the logs, since from what I understand the Stdout function and CombinedOutputs will only return the last executed command and I would like to have the output of the entire run of this function, and I don't want to start adding Stdout everywhere and write it to a file
The other option is to use dagger.WithLogOutput(io.Stdout) but that writes to stdout, even if i change it to a file, i would still get the logs of parallel runs making it impossible to differentiate between function runs
So my question is what are my options here where I want to run a function and output the entire logs of it to a file without adding stdout() everywhere, or reconnecting the client each time with a different File as output?
I tried searching a lot in the docs and code but couldn't find any simple methods without going through the OTEL route