2024-01-15T10:30:15.123Z [orders-service-abc12] INFO Processing order #12345
2024-01-15T10:30:15.456Z [orders-service-abc12] DEBUG Order validated successfully
2024-01-15T10:30:15.789Z [orders-service-abc12] INFO Order #12345 completed
Voyage API Integration
# Initial fetch
GET /v1/apps/{app}/logs?env={env}&since=1h&lines=100
# Streaming (SSE)
GET /v1/apps/{app}/logs/stream?env={env}
Accept: text/event-stream
Response (SSE):
data: {"timestamp":"2024-01-15T10:30:15.123Z","instance":"abc12","level":"INFO","message":"..."}
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
User Story
As a developer, I want to view logs from my deployed application so I can debug issues and monitor behavior in real-time.
Design
Command Interface
Output Format
Voyage API Integration
Files to Create/Modify
qctl-qrun/src/main/java/io/qrun/qctl/qrun/LogsCommand.javaqctl-qrun/src/main/java/io/qrun/qctl/qrun/model/LogEntry.javaqctl-qrun/src/main/java/io/qrun/qctl/qrun/client/VoyageClient.javaqctl-qrun/src/main/java/io/qrun/qctl/qrun/stream/LogStreamer.javaqctl-qrun/src/main/java/io/qrun/qctl/qrun/format/LogFormatter.javaImplementation Tasks
Acceptance Criteria
qrun logs --app <app> --env <env>shows recent logs--followstreams logs in real-time until Ctrl+C--sincefilters logs by time range--instancefilters to specific instance--levelfilters by log level (error, warn, info, debug)