argoproj / argo-workflows

Workflow Engine for Kubernetes
https://argo-workflows.readthedocs.io/
Apache License 2.0
14.91k stars 3.18k forks source link

Filter logs using - date range or regexp #4511

Open alexec opened 3 years ago

alexec commented 3 years ago

@jessesuen @alexmt @rbreeze

I want to highlight that we have several components for displaying logs. It would be great if we could have a single API and UI for this, to support things like:

The backend for this is done by pod-logger.go in Argo Workflows that multiplexes logs based on labels, allowing you to log a whole workflow at once. This is also used for logging sensors and event sources.

rbreeze commented 3 years ago

Where would the code for the shared API live? I certainly agree with having a shared UI component, and multiplexed logs sounds like it could be useful for viewing logs for a whole application at once in CD.

alexec commented 3 years ago

I think the react component would need to specify the API, as backend APIs would be very different. E.g.

<LogViewer
  load=(({grep,startTime,endTime}) = > /* observable */}
/>

The backend could optionally implement these. Even if it does not, the front end could filter client-side.