Workflow: Invoke, Observe, and Debug Executions
Last validated: 2026-05-20
Goal
Run a published app, observe execution lifecycle, and gather runtime evidence during failures.
Inputs
- App ID (
org:app) - Invocation payload
- gRPC endpoint and token for API fallback paths
CLI Path
APP_ID=my-org:hello
# Invoke and capture execution output
dodil ignite invoke "$APP_ID" --payload '{"task":"check"}'
# Fetch execution details
dodil ignite execution get <execution_id>
# Watch execution state and streamed output
dodil ignite execution watch <execution_id>
# Fetch execution logs
dodil ignite execution logs <execution_id>API Fallback for App Runtime Observability
Use direct gRPC calls when you need app-level logs/events/replicas/stats not exposed as first-class CLI commands.
export IGNITE_GRPC=api.dev.dodil.io:443
export TOKEN=<bearer_token>
export ORG=my-org
export APP=hello
# App logs
grpcurl -H "authorization: Bearer ${TOKEN}" \
-d '{"organization_name":"'"${ORG}"'","app_name":"'"${APP}"'"}' \
${IGNITE_GRPC} dodil.ignite.v1.ComputeService/GetAppLogs
# App events
grpcurl -H "authorization: Bearer ${TOKEN}" \
-d '{"organization_name":"'"${ORG}"'","app_name":"'"${APP}"'"}' \
${IGNITE_GRPC} dodil.ignite.v1.ComputeService/GetAppEvents
# Replicas
grpcurl -H "authorization: Bearer ${TOKEN}" \
-d '{"organization_name":"'"${ORG}"'","app_name":"'"${APP}"'"}' \
${IGNITE_GRPC} dodil.ignite.v1.ComputeService/ListAppReplicasFailure Triage Pattern
- Confirm execution status (
execution get/watch). - Retrieve app logs/events via API fallback.
- Correlate with gateway/orchestrator health and deployment state.
- Re-test with minimal payload to isolate platform vs business-code failures.