Conversation
phrocker
added a commit
that referenced
this pull request
Oct 24, 2025
…and SSH Terminal Log Analysis (#21) * Initial plan * Add RDP session screenshot capture and summarization infrastructure Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * Fix build errors and add documentation for RDP session summarization Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * Add RDP session summarization documentation * Add implementation summary documentation Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * Capture real RDP screenshots from Guacamole protocol and store in database - Remove mock screenshot implementation - Intercept PNG/IMG instructions from Guacamole WebSocket stream - Extract base64-encoded image data from protocol instructions - Store image bytes directly in PostgreSQL BLOB (no filesystem) - Sample every N instructions to avoid overwhelming system - Update analytics agent to read from database - Update documentation with real implementation details Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * Add Flyway migration for RDP session screenshot tables - Created V27__create_rdp_session_screenshot_tables.sql - Adds rdp_session_screenshots table with BYTEA column for image data - Adds rdp_session_summaries table for AI-generated summaries - Includes appropriate indexes for performance - Follows existing migration file naming and structure Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * Add SSH session summarization for complete general solution - Created SshSessionSummary entity for SSH/terminal session summaries - Created SshSessionSummaryRepository with query for unsummarized sessions - Created SshSessionSummarizationAgent to process terminal logs - Added V28 migration for ssh_session_summaries table - Created comprehensive SESSION_SUMMARIZATION.md documentation - Analytics agent extracts commands and activities from terminal logs - Generates structured summaries with timeline and command history - Runs every 2 minutes alongside RDP summarization agent - Configurable via agents.ssh-session-analytics.enabled property - Complete general solution for both RDP and SSH session summarization Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * add charts as exclusion * Fix test failure by adding RdpScreenshotCaptureService mock - Added RdpScreenshotCaptureService import to test - Added @mock annotation for screenshotCaptureService - Updated GuacamoleTunnelWebSocketHandler constructor call in test - All tests now pass (30 tests, 0 failures, 0 errors) Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * Fix Hibernate query error in SshSessionSummaryRepository - Changed query to use s.id instead of s.sessionId - SessionLog entity only has 'id' field, not 'sessionId' - Fixes "Could not resolve attribute 'sessionId'" error - All tests pass (0 failures, 0 errors) Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * add charts as exclusion * Fix RDP screenshot capture entity and service logic - Changed @JdbcTypeCode to @lob with columnDefinition for PostgreSQL BYTEA - Fixed "column image_data is of type bytea but expression is of type bigint" error - Improved multi-phase screenshot capture logic (img/blob/end instructions) - Added sampling to avoid overwhelming system (captures every N instructions) - Enhanced helper methods for extracting stream ID, MIME type, and blob chunks - Added cleanup of active streams on session stop - Removed unused captureImageFromInstruction method - Better error handling and logging throughout - All tests pass Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> * add charts as exclusion --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: phrocker <1781585+phrocker@users.noreply.github.com> Co-authored-by: Marc Parisi <phrocker@apache.org>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.