dstack icon indicating copy to clipboard operation
dstack copied to clipboard

[Feature]: Show all jobs in runs UI

Open jvstme opened this issue 1 year ago • 3 comments

Problem

The runs list page (/runs) and run details page (/projects/<project>/runs/<run>) only show details about one job from the run: backend, region, instance ID, price, etc. If the run has multiple jobs, the user cannot see details or logs of other jobs.

Showing details of a single jobs as details of the whole run can also be misleading, e.g. the price shown in the UI looks like the price of the whole run, while it is actually the price of only one job - only part of the run's price.

Solution

On the runs list page (/runs), show all jobs of each run, e.g. the way they are shown in CLI:

> dstack ps -w
 NAME         BACKEND  REGION     RESOURCES                   SPOT  PRICE    STATUS        SUBMITTED   
 single-node  aws      us-west-2  1xCPU, 2GB, 100.0GB (disk)  yes   $0.0059  provisioning  1 min ago   
 multi-node                                                                  running       5 mins ago  
   replica 0  aws      us-west-2  1xCPU, 2GB, 100.0GB (disk)  yes   $0.0059  running       5 mins ago  
   job_num 0                                                                                           
   replica 0  aws      us-west-2  1xCPU, 2GB, 100.0GB (disk)  yes   $0.0059  done          5 mins ago  
   job_num 1                                                                                           
 httpbin                                                                     running       11 mins ago 
   replica 0  aws      us-west-2  1xCPU, 2GB, 100.0GB (disk)  yes   $0.0059  running       11 mins ago 
   job_num 0                                                                                           
   replica 1  aws      us-west-2  1xCPU, 2GB, 100.0GB (disk)  yes   $0.0059  running       11 mins ago 
   job_num 0                                                                                           

On the run details page (/projects/<project>/runs/<run>), show the run details at the top and details for each job separately below.

Show logs per-job too.

Additional information

The API seems to already provide all the data, so changes are only needed in frontend.

jvstme avatar Sep 24 '24 20:09 jvstme

Still would like to better understand the use case

peterschmidt85 avatar Sep 24 '24 20:09 peterschmidt85

@peterschmidt85, some examples:

  • A multi-replica service is running and I need to know it's whole price, not the price of a single job. I don't have access to CLI at the moment.
  • I need to verify in which region each replica is running. I don't have access to CLI at the moment.
  • One of the jobs failed and I need to see its logs.
  • many more

jvstme avatar Sep 25 '24 07:09 jvstme

@olgenn, thank you! A few comments:

  • Can we please add the dollar sign ($) to multi-job run prices? Both in the runs list and on the run details page. dollar
  • On the run details page, is it possible to hide the fields that are irrelevant for multi-job runs instead of putting a dash (-) in them? irrelevant
  • Can we please display these job properties:
    • Status - both on the job details page and in the jobs list. If a new column doesn't fit in the jobs list, we could sacrifice the "Instance" column
    • Submitted - on the job details page + preferably in the jobs list if it fits there
    • Termination reason - only on the job details page, the value should be capitalized

jvstme avatar Oct 24 '24 09:10 jvstme

Fixed in 454b18e01f39b9efffe860e54cf405c576ca01f7

olgenn avatar Oct 30 '24 19:10 olgenn