Skip to content

Conversation

@rlaope
Copy link
Owner

@rlaope rlaope commented Jan 23, 2026

Summary

  • Add /export API endpoint with filtering support (format, event types, time range)
  • Add Export button in dashboard header with modal dialog for export options
  • Support CSV, JSON, and JSON Lines export formats
  • Store recent events (up to 10,000) in EventBroadcaster for export

Changes

Backend

  • ArgusChannelHandler.java: Add /export endpoint with CSV/JSON/JSONL export
  • HttpResponseHelper.java: Add sendDownload() and sendBadRequest() helpers
  • EventBroadcaster.java: Store events for export with getRecentEvents() method

Frontend

  • index.html: Add Export button and modal with format/type/time options
  • app.js: Add export modal handlers and download logic
  • style.css: Add export modal styles

Test plan

  • Click Export button in header - modal should open
  • Select JSON format, download - verify valid JSON with events
  • Select CSV format, download - verify spreadsheet-compatible format
  • Select JSON Lines format, download - verify one JSON object per line
  • Filter by event type - verify only selected types exported
  • Set time range - verify events filtered by time
  • Verify downloaded filename matches format (argus-events.json/csv/jsonl)

Closes #12


Generated with Claude Code

Implement CSV, JSON, and JSON Lines export for virtual thread events.

- Add /export API endpoint with filtering support
  - Query params: format (csv/json/jsonl), types, from, to
  - Time range filtering with ISO-8601 timestamps
  - Event type filtering (START/END/PINNED/SUBMIT_FAILED)
- Add Export button in header with modal dialog
  - Format selection (JSON, CSV, JSON Lines)
  - Event type checkboxes
  - Optional time range selection
- Add sendDownload() and sendBadRequest() helpers
- Store recent events in EventBroadcaster for export

Closes #12

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@rlaope rlaope merged commit 2c779d0 into master Jan 23, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: Export functionality for CSV and JSON formats

3 participants