unity-sds / unity-project-management

Container repo for project management (projects, epics, etc)
Apache License 2.0
0 stars 1 forks source link

As an operator, I want to be able to monitor the status of a given Workflow Execution from a workflow Dashboard #38

Closed mike-gangl closed 1 month ago

mike-gangl commented 1 year ago

Will most likely rely on HySDS UIs for short-term visibility; We should also explore Airflow and see if that interface is better suited for Operators, Algorithm Developers

UPDATE:

  1. SPS will create these tasks in the CWL to update job status. we will focus on the first and last boxes, but can add more “easily” (hah!). These should be a part of the application pakacge initially, but we will also want to think of how we can arbitrarily wrap any task (e.g. CMR requests, data catalog requests).

  2. The orange boxes (below) will not hit an https service directly, but will send SNS messages, this is for scalability reasons (think of all the messages that would be sent to a single endpoint for a large reprocessing job with millions of jobs

  3. The SNS message will be a bit of metadata, probably consisting of jobID, status, labels, timestamp.. other stuff? products/outputs (maybe after stage-out) (see below)

  4. on the other end, something will be listening to these messages (and queuing them…) and writing them to a catalog (database, elastic search, whatever) for querying (maybe query by jobid, query by label, query by “parent job”) to name 3 that i think are helpful

  5. we need an interface for searching that endpoint- it can be a restful API or it can be against elastic search directly- there are pros and cons for this.SPS will create tasks / code that will be inserted into the

Required Metadata

Endpoint Functions

Removed from AC:

Image

rtapella commented 1 year ago

UI Design stories:

https://docs.google.com/document/d/1-3WEJqwPuLpqVqpnS-2EcnMC6P3KgxUE35xs_FmHADY/edit#heading=h.754zq8lye6l2

rtapella commented 1 year ago

v1. single workflow (black box) v2. single workflows (per-step) v3. batch workflows

rtapella commented 1 year ago

WPS-T part: https://github.com/orgs/unity-sds/projects/7/views/1?filterQuery=label%3AEpic+status&pane=issue&itemId=18698723

https://github.com/orgs/unity-sds/projects/7/views/1?filterQuery=label%3AEpic+status&pane=issue&itemId=18698960

rtapella commented 1 year ago

WPS-T errors: https://github.com/orgs/unity-sds/projects/7?pane=issue&itemId=18699536

rtapella commented 1 year ago

SPS work: Also see https://github.com/unity-sds/unity-sps-prototype/issues/133

and https://github.com/unity-sds/unity-sps-prototype/issues/134

mike-gangl commented 1 year ago

@rtapella this epic is fine, but i think we need epics for the "submission" portion as well, that is, for the SounderSIPS example, a (user-friendly) way of specifying the date, output collection, etc

mike-gangl commented 1 year ago

per some of our conversations, we can keep this feature/epic open, but we may want to allow for HySDS dashboards in the near terms; also investigate airflow and see how that works for the Operators.

There is still an on-going "unified experience" if we rely on implementation level dashboards.

rtapella commented 1 year ago

I think the list of metadata you have is a good starting point.

Ideally a table view would have customizable columns. Even if it's "bullet-listed" into a list of jobs with metadata you could customize which bits get displayed in the main scrollable list vs. in a "details" view.

On the "create time" I think there's a distinction between when you submit a batch and when a particular job starts being executed. So it may turn in to submit-time, start-time, end-time for a particular job (and even task). Duration is often more interesting to ppl than a specific start/stop as it's more of an indicator of issues.

It'd be nice to be able to filter on any column individually or any column globally. Info that is part of a controlled vocabulary (e.g. status) should have a dropdown type of list for selection.

A link to stdout/log-files is also important, particularly for failed jobs.

I'm not sure if job ID and parent job ID are related to workflows here. But to make it explicit:

rtapella commented 1 year ago

For now, stderr from WPS directly. No links to logs or anything like that.

rtapella commented 1 year ago

Job submitter from https://github.com/unity-sds/unity-sps-prototype/issues/137

anilnatha commented 1 year ago

Summary of initial codebase work:

Image

Items discussed with @rtapella and @AaronPlave yesterday:

rtapella commented 1 year ago

@LucaCinquini per-step workflow status will not happen until the JobsDB/EMS/thing is built, correct?

LucaCinquini commented 1 year ago

Maybe even after that :( With the first version of the jobs database (this release), you will be able to query for all workflows at once, but investigating each step is still not supported. We need to discuss how this could be implemented with the current architecture.

rtapella commented 11 months ago

act upon jobs in the list: https://github.com/unity-sds/unity-jobs-ui/issues/20

rtapella commented 5 months ago

outsource to Airflow. same requirements https://github.com/unity-sds/unity-project-management/issues/81

rtapella commented 1 month ago

this was never Closed, just marked Done