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 '2f9e3f340de788f4782579a41bf21b4b' using 'example'
task_wait(id)
#> [1] TRUE
# Task information at completion includes times:
task_info(id)
#>
#> ── task 2f9e3f340de788f4782579a41bf21b4b (success) ─────────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2025-02-12 17:20:11.5479 (moments ago)
#> ℹ Started at 2025-02-12 17:20:11.742025 (moments ago; waited 195ms)
#> ℹ Finished at 2025-02-12 17:20:11.836621 (moments ago; ran for 95ms)
# If you need to work with these times, use the "times" element:
task_info(id)$times
#> created started finished
#> "2025-02-12 17:20:11 UTC" "2025-02-12 17:20:11 UTC" "2025-02-12 17:20:11 UTC"
# If a task is retried, this information appears as a retry chain:
id2 <- task_retry(id)
#> ✔ Submitted task 'e7b55b7e84a4eeb3f4203cc53ccd0110' using 'example'
task_info(id2, follow = FALSE)
#>
#> ── task e7b55b7e84a4eeb3f4203cc53ccd0110 (success) ─────────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2025-02-12 17:20:11.5479 (moments ago)
#> ℹ Started at 2025-02-12 17:20:12.642268 (moments ago; waited 1.1s)
#> ℹ Finished at 2025-02-12 17:20:12.643189 (moments ago; ran for 1ms)
#> ℹ Last of a chain of a task retried 1 time
task_info(id2)
#>
#> ── task e7b55b7e84a4eeb3f4203cc53ccd0110 (success) ─────────────────────────────
#> ℹ Submitted with 'example'
#> ℹ Task type: expression
#> • Expression: runif(1)
#> • Locals: (none)
#> • Environment: default
#> R_GC_MEM_GROW: 3
#> ℹ Created at 2025-02-12 17:20:11.5479 (moments ago)
#> ℹ Started at 2025-02-12 17:20:12.642268 (moments ago; waited 1.1s)
#> ℹ Finished at 2025-02-12 17:20:12.643189 (moments ago; ran for 1ms)
#> ℹ Last of a chain of a task retried 1 time
cleanup()
#> ℹ Cleaning up example