Appearance
plexctl exec-log
Synopsis
plexctl exec-log is the execution-log view over the Action Orchestrator's per-Project Execution history. It reads the same /v1/projects/{project_id}/executions* operations the action family dispatches against, but is read-only and adds the per-target collected-output materialisation action get omits.
text
plexctl exec-log list --project <uuid> [flags]
plexctl exec-log get --project <uuid> --id <uuid>Subcommands
plexctl exec-log list
GETs /v1/projects/{project_id}/executions and renders one row per visible Execution — the execution-log view. Pagination is cursor-based via --cursor / --limit; the response carries a next_cursor the caller threads into the next --cursor to walk the pages. The optional --status and --action-name filters narrow the page and are passed through as query parameters.
plexctl exec-log get
GETs /v1/projects/{project_id}/executions/{execution_id} and reads one Execution by id, then materialises each target's collected output:
- a bounded inline output is printed verbatim;
- an over-ceiling output that was archived to the object store is rendered as a one-line
archived: <bucket>/<key>reference (with the digest when present) and is never fetched.
The object-store variant is deliberately not retrieved: the CLI surfaces the coordinates and leaves the byte retrieval to the operator's own object-store tooling, so the command needs no object-store credential. Both --project and --id are required and parsed as UUIDs locally; a malformed value exits 2.
Flags
plexctl exec-log list
| Flag | Type | Required | Description |
|---|---|---|---|
--project | string (UUID) | yes | Owning Project UUID. |
--status | string | no | Aggregate-status filter (pending, ack, started, succeeded, failed, cancelled, timeout). |
--action-name | string | no | Filter by action name. |
--cursor | string | no | Continuation token returned by a previous call's next_cursor. |
--limit | int | no | Maximum items per page (server default when zero). |
plexctl exec-log get
| Flag | Type | Required | Description |
|---|---|---|---|
--project | string (UUID) | yes | Owning Project UUID. |
--id | string (UUID) | yes | Execution UUID to read. |
Persistent flags inherited from root
--server, --profile, --token-file, --output. See ../plexctl.md for the canonical list.
Exit codes
See ../plexctl.md#exit-code-taxonomy for the inherited base table. The cases that apply to this family:
| Code | Trigger |
|---|---|
0 | The execution(s) and any collected output were rendered to stdout. |
1 | Transport or API failure, a 5xx, or a malformed response body. |
2 | Malformed --project / --id UUID or a missing required flag. |
3 | Missing or insecure credentials, or a 401 Unauthorized. |
4 | 403 Forbidden. |
77 | ReBAC denial (403 Forbidden with code == "rebac_denied"). |
Examples
Browse the execution log of a Project
shell
export PLEXSPHERE_URL="${PLEXSPHERE_URL:-https://localhost:8080}"
plexctl exec-log list \
--server "${PLEXSPHERE_URL}" \
--project 0190a8b8-a0c0-7a0a-8a0a-a0a0a0a0a0c0Walk the pages, narrowed by action name
shell
plexctl exec-log list \
--server "${PLEXSPHERE_URL}" \
--project 0190a8b8-a0c0-7a0a-8a0a-a0a0a0a0a0c0 \
--action-name rotate-keys \
--limit 50
plexctl exec-log list \
--server "${PLEXSPHERE_URL}" \
--project 0190a8b8-a0c0-7a0a-8a0a-a0a0a0a0a0c0 \
--action-name rotate-keys \
--limit 50 \
--cursor "${NEXT_CURSOR}"Read one execution and its collected output
shell
plexctl exec-log get \
--server "${PLEXSPHERE_URL}" \
--project 0190a8b8-a0c0-7a0a-8a0a-a0a0a0a0a0c0 \
--id 0190a8b8-c2d2-7c2c-8c2c-c2c2c2c2c2c2Cross-references
action.md— the imperative dispatch surface over the same Execution aggregate.../../../../api/openapi/plexsphere-v1.yaml../../../../cmd/plexctl/commands/exec_log.go../../../contexts/actions/model.md