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 '989d69c213d3fac91a663f4c57aebd98' using 'example'
task_wait(id)
#> [1] TRUE
# Task information at completion includes times:
task_info(id)
#>
#> ── task 989d69c213d3fac91a663f4c57aebd98 (success) ─────────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2024-10-08 15:27:14.241169 (moments ago)
#> ℹ Started at 2024-10-08 15:27:14.422629 (moments ago; waited 182ms)
#> ℹ Finished at 2024-10-08 15:27:14.51357 (moments ago; ran for 91ms)
# If you need to work with these times, use the "times" element:
task_info(id)$times
#> created started finished
#> "2024-10-08 15:27:14 UTC" "2024-10-08 15:27:14 UTC" "2024-10-08 15:27:14 UTC"
# If a task is retried, this information appears as a retry chain:
id2 <- task_retry(id)
#> ✔ Submitted task 'f3aabf88c6c6a681cdaef7af42b217a4' using 'example'
task_info(id2, follow = FALSE)
#>
#> ── task f3aabf88c6c6a681cdaef7af42b217a4 (submitted) ───────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2024-10-08 15:27:14.241169 (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 f3aabf88c6c6a681cdaef7af42b217a4 (success) ─────────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2024-10-08 15:27:14.241169 (moments ago)
#> ℹ Started at 2024-10-08 15:27:15.318445 (moments ago; waited 1.1s)
#> ℹ Finished at 2024-10-08 15:27:15.319299 (moments ago; ran for 1ms)
#> ℹ Last of a chain of a task retried 1 time
cleanup()
#> ℹ Cleaning up example