Fetch information about a task. This is much more detailed than
the information in task_status
. If a task is running we also
fetch the true status via its driver, which can be slower.
Value
An object of class hipercow_task_info
, which will print
nicely. This is just a list with elements:
id
: the task identifierstatus
: the retrieved statusdriver
: the driver used to run the task (or NA)data
: the task data (depends on the type of task)times
: a vector of timesretry_chain
: the retry chain (orNULL
)
You can see and access these elements more easily by running
unclass()
on the result of task_info()
.
Examples
cleanup <- hipercow_example_helper()
#> ℹ This example uses a special helper
id <- task_create_expr(runif(1))
#> ✔ Submitted task '29a509e249e77c2f355ef31d447a6b65' using 'example'
task_wait(id)
#> [1] TRUE
# Task information at completion includes times:
task_info(id)
#>
#> ── task 29a509e249e77c2f355ef31d447a6b65 (success) ─────────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2024-12-09 18:45:45.543533 (moments ago)
#> ℹ Started at 2024-12-09 18:45:45.719502 (moments ago; waited 176ms)
#> ℹ Finished at 2024-12-09 18:45:45.808871 (moments ago; ran for 90ms)
# If you need to work with these times, use the "times" element:
task_info(id)$times
#> created started finished
#> "2024-12-09 18:45:45 UTC" "2024-12-09 18:45:45 UTC" "2024-12-09 18:45:45 UTC"
# If a task is retried, this information appears as a retry chain:
id2 <- task_retry(id)
#> ✔ Submitted task '6ebd8c6a99d83606d9d7c4dfb4f2da2d' using 'example'
task_info(id2, follow = FALSE)
#>
#> ── task 6ebd8c6a99d83606d9d7c4dfb4f2da2d (submitted) ───────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2024-12-09 18:45:45.543533 (moments ago)
#> ! Not started yet (waiting for 1.1s)
#> ! Not finished yet (waiting to start)
#> ℹ Last of a chain of a task retried 1 time
task_info(id2)
#>
#> ── task 6ebd8c6a99d83606d9d7c4dfb4f2da2d (submitted) ───────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2024-12-09 18:45:45.543533 (moments ago)
#> ! Not started yet (waiting for 1.2s)
#> ! Not finished yet (waiting to start)
#> ℹ Last of a chain of a task retried 1 time
cleanup()
#> ℹ Cleaning up example