databricks / click

The "Command Line Interactive Controller for Kubernetes"
Apache License 2.0
1.49k stars 84 forks source link

Support merged logs for multiple pods #210

Open florensie opened 1 year ago

florensie commented 1 year ago

When you have multiple replicas in your deployment you often want to see the logs of all pods at once. With kubectl I would use something like this:

kubectl logs -n my-namespace --prefix=true -l app=myapp --tail 200 -f

However, when I select multiple pods with Click and use the logs command, it executes multiple logs commands sequentially instead of giving a merged output.

It would also be nice to be able to select a deployment to request logs for instead of having to select multiple pods (based on a regex or label).

And lastly, if such a merging logs command existed, it would be good if it had the --prefix option of kubectl with some color coding added to differentiate the different pods.

nicklan commented 1 year ago

This is a cool idea. Does kubectl actually merge the logs though? In my testing it just gives you sequential logs from each matching pod, but does allow prefixing them.

So just to clarify, this is more about merging when doing -f so that you can follow logs from more than one pod?

florensie commented 1 year ago

In my experience kubectl does seem to merge logs fine, but previous (non-followed) logs appear to be inaccurately ordered. When following logs the kubectl logs do make more sense though.