Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
144 commits
Select commit Hold shift + click to select a range
2d5e028
Initial LogstashAgent setup
Codyjackson0321 Mar 21, 2026
344b422
refactor: cleaned up test files
Codyjackson0321 Mar 21, 2026
8f15ae8
feat: Made policies reload when toggle is flipped
Codyjackson0321 Mar 22, 2026
2d4f2fd
refactor: Moved default settings to be in files instead of code
Codyjackson0321 Mar 23, 2026
5932115
refactor: Changed LogstashAgent's file structure
Codyjackson0321 Mar 23, 2026
837a1e0
refactor: updated favicon.ico and branding images
Codyjackson0321 Mar 23, 2026
1e18823
Initial LogstashAgent setup
Codyjackson0321 Mar 21, 2026
ddcc973
refactor: cleaned up test files
Codyjackson0321 Mar 21, 2026
8534f12
feat: Made policies reload when toggle is flipped
Codyjackson0321 Mar 22, 2026
896ac8c
refactor: Moved default settings to be in files instead of code
Codyjackson0321 Mar 23, 2026
d05d68e
refactor: Changed LogstashAgent's file structure
Codyjackson0321 Mar 23, 2026
21f0942
refactor: updated favicon.ico and branding images
Codyjackson0321 Mar 23, 2026
23c9743
Initial LogstashAgent setup
Codyjackson0321 Mar 21, 2026
a5ec67d
refactor: cleaned up test files
Codyjackson0321 Mar 21, 2026
0e44641
feat: Made policies reload when toggle is flipped
Codyjackson0321 Mar 22, 2026
cc438c2
refactor: Moved default settings to be in files instead of code
Codyjackson0321 Mar 23, 2026
45388d6
refactor: Changed LogstashAgent's file structure
Codyjackson0321 Mar 23, 2026
4f0d5a7
refactor: updated favicon.ico and branding images
Codyjackson0321 Mar 23, 2026
e3e229a
refactor: minor UI changes in agent policies and connection manager
Codyjackson0321 Mar 24, 2026
9e96dbc
Merge remote-tracking branch 'origin/feat/logstash-agent' into feat/l…
Codyjackson0321 Mar 24, 2026
6be3484
Merge branch 'feat/logstash-agent' of https://github.com/elastic/Logs…
Codyjackson0321 Mar 24, 2026
a5a5e25
refactor: Improved enrollment command shown in enrollment
Codyjackson0321 Mar 24, 2026
e0e8078
feat: Agent now checks in and compares config after enrollment, commi…
Codyjackson0321 Mar 24, 2026
2df34e6
feat: Added file validation and error handling for whenever Logstash …
Codyjackson0321 Mar 24, 2026
fd8eff3
refactor: "Status" column in connection manager now displays the last…
Codyjackson0321 Mar 25, 2026
aa3cc9c
bug: fixed a bug where jvm.options would get saved as logstash.yml
Codyjackson0321 Mar 26, 2026
48d89c7
feat: added keystore utils
Codyjackson0321 Mar 26, 2026
c2ae2a9
bug: fixed bug where log field notification wasn't properly displayin…
Codyjackson0321 Mar 26, 2026
80d3d24
feat: incremental changes for making keystores work
Codyjackson0321 Mar 27, 2026
8cfa63f
feat: incremental improvement on keystore support
Codyjackson0321 Mar 27, 2026
2b0d1a2
feat: When a user creates a new policy, we now switch to that policy …
Codyjackson0321 Mar 29, 2026
eb7d1f2
feat: added notification about how many instances of Logstash would b…
Codyjackson0321 Mar 29, 2026
a092e8d
refactor: converted LogstashAgent to UV
Codyjackson0321 Mar 29, 2026
b73fb2f
refactor: total overhaul of LogstashAgent file structure
Codyjackson0321 Mar 29, 2026
73fc7e9
refactor: reworked stale tests, added all new tests for LogstashAgent
Codyjackson0321 Mar 29, 2026
c3e9840
fix: updated imports and path issues caused from the restructure
Codyjackson0321 Mar 29, 2026
04cac20
refactor: added files that will be necessary once we split logstashag…
Codyjackson0321 Mar 30, 2026
68fff2e
refactor: abstracted pipeline lists from the collapsible row so we ca…
Codyjackson0321 Mar 30, 2026
46e2d11
Merge branch 'feat/normalize-pipline-tables' into feat/logstash-agent
Codyjackson0321 Mar 30, 2026
1bea5ea
refactor: full filestructure overhaul of LogstashUI
Codyjackson0321 Mar 30, 2026
6300969
refactor: pushing missed init files
Codyjackson0321 Mar 30, 2026
6745ad0
bug: fixed issue where path changes prevented tailwind build
Codyjackson0321 Mar 30, 2026
68bceed
feat: added policy templates to guide the user on how to set up the t…
Codyjackson0321 Mar 30, 2026
494f0ea
bug: updated connectionmanager pipeline search bar so that we don't w…
Codyjackson0321 Mar 30, 2026
2337b54
feat: added an "install logstash" checkbox and input box for yum / apt
Codyjackson0321 Mar 30, 2026
2d09780
ci: added precommit for updating pipeline headers, committing to test…
Codyjackson0321 Mar 30, 2026
9c9df95
chore: added precommit for generating NOTICE.txt, it works!
Codyjackson0321 Mar 31, 2026
2c09ee2
chore: added precommit for LogstashAgent in preparation for moving it…
Codyjackson0321 Mar 31, 2026
a4b33b4
refactor: removed old pytest.ini, now stored in pyproject.toml
Codyjackson0321 Mar 31, 2026
45fb973
refactor: added github actions / issue.md to LogstashAgent file in pr…
Codyjackson0321 Mar 31, 2026
6903a48
bug: updated tests to use the correct path (caused by refactoring and…
Codyjackson0321 Mar 31, 2026
b9e8dd5
feat: added additional encryption for values being transmitted betwee…
Codyjackson0321 Mar 31, 2026
6bf141c
feat: added additional encryption for values being transmitted betwee…
Codyjackson0321 Mar 31, 2026
b207631
feat: updated front end to show problems with the agent, reported dur…
Codyjackson0321 Mar 31, 2026
8260808
feat: added storage of the binary path to enrollment script for ls agent
Codyjackson0321 Mar 31, 2026
5f507fc
refactor: version number is now controlled by pyproject.toml
Codyjackson0321 Mar 31, 2026
3f3797b
refactor: added migration for adding status blob to connection
Codyjackson0321 Mar 31, 2026
c9cc3e2
feat: agent now uses pyproject.toml as the source of truth for versio…
Codyjackson0321 Mar 31, 2026
815372e
refactor: removed .idea from versioning, added to gitignore.
Codyjackson0321 Mar 31, 2026
df37cb7
feat: updating agent status popup's style
Codyjackson0321 Mar 31, 2026
00b5ff5
refactor: fixed log messages in manager_views to prevent a flood of c…
Codyjackson0321 Mar 31, 2026
6aa79a0
refactor: updated guided settings to include API, added default setti…
Codyjackson0321 Mar 31, 2026
65976a1
bug: When changing policies the user now gets reset to the logstash.y…
Codyjackson0321 Mar 31, 2026
d348b0b
feat: Made the editor work with logstash policies along with CPM
Codyjackson0321 Mar 31, 2026
f6a3658
feat: Added Logstash API status indicator and details about last poli…
Codyjackson0321 Mar 31, 2026
180f2e5
feat: moved onhover health to instead be a drawer / modal, converted …
Codyjackson0321 Apr 1, 2026
b5ca470
feat: Minor touchups to the agent status drawer, made the status pill…
Codyjackson0321 Apr 1, 2026
840c77e
feat: Added "plaintext passwords" card in stats strip to show sensiti…
Codyjackson0321 Apr 1, 2026
9218f78
feat: pipeline settings can now be modified for logstash agent
Codyjackson0321 Apr 1, 2026
6d92394
feat: added migration that was supposed to be in last commit
Codyjackson0321 Apr 1, 2026
702cfa8
refactor: Polished nav a little bit to help it keep up with the rest …
Codyjackson0321 Apr 1, 2026
becb915
bug: We now prevent duplicate pipeline names on creation
Codyjackson0321 Apr 1, 2026
fbbbed2
feat: Added pipeline syncing between agent and controller, pushing to…
Codyjackson0321 Apr 1, 2026
58b3f39
refactor: updated home.html to reflect changes in this update
Codyjackson0321 Apr 1, 2026
66d4bce
feat: Added config reload settings to the default profile so that we …
Codyjackson0321 Apr 1, 2026
9f17731
bug: Fixed an issue where our hash wasn't updating properly for pipel…
Codyjackson0321 Apr 1, 2026
1c2ef0b
bug: hash generation now works when editing a pipeline
Codyjackson0321 Apr 2, 2026
4e8e72d
refactor: updated controller to abort the application of a revision i…
Codyjackson0321 Apr 2, 2026
8aeab9b
feat: added health report card red/yellow status,
Codyjackson0321 Apr 2, 2026
471fec9
feat: tweaking health report logic
Codyjackson0321 Apr 2, 2026
896cb73
feat: tweaking health report logic
Codyjackson0321 Apr 2, 2026
201cb22
feat: Adding keystore password management to front end
Codyjackson0321 Apr 2, 2026
4ad3364
feat: Adjusted handling of keystore when the keystore can't be decrypted
Codyjackson0321 Apr 2, 2026
f5002fe
feat: fixed rollout blocking condition for when keystores can't be de…
Codyjackson0321 Apr 2, 2026
d42dc51
feat: fixed rollout blocking condition for when keystores can't be de…
Codyjackson0321 Apr 2, 2026
f4e27fa
feat: fixed rollout blocking condition for when keystores can't be de…
Codyjackson0321 Apr 2, 2026
5e893ae
feat: fixed rollout blocking condition for when keystores can't be de…
Codyjackson0321 Apr 2, 2026
c0a8d6f
feat: updating keystore state management
Codyjackson0321 Apr 2, 2026
5dec6f4
feat: fixed encryption behaviors
Codyjackson0321 Apr 2, 2026
c7da64f
feat: Changed slots inports while in run mode
Codyjackson0321 Apr 2, 2026
7e243a3
feat: finished up auth mode!
Codyjackson0321 Apr 3, 2026
c14549f
feat: made agent policy a link
Codyjackson0321 Apr 3, 2026
659bb9c
feat: insane amount of ui changes and quality of life.
Codyjackson0321 Apr 3, 2026
28fd923
feat: made keystore creation use a password field
Codyjackson0321 Apr 3, 2026
68e0b32
feat: testing restart detection
Codyjackson0321 Apr 3, 2026
af592b0
feat: testing restart detection logic
Codyjackson0321 Apr 3, 2026
4ad357c
feat: testing restart detection logic
Codyjackson0321 Apr 3, 2026
cb94853
feat: testing restart detection logic
Codyjackson0321 Apr 3, 2026
d4338b2
feat: testing restart detection logic
Codyjackson0321 Apr 3, 2026
c5d2bd6
feat: testing restart detection logic
Codyjackson0321 Apr 3, 2026
f2c0d06
feat: major rework, added 'logwatcher'
Codyjackson0321 Apr 3, 2026
d33a4dd
feat: major rework, added 'logwatcher'
Codyjackson0321 Apr 3, 2026
c308ad0
feat: major rework, added 'logwatcher'
Codyjackson0321 Apr 3, 2026
e49448a
feat: Finalizing logwatcher, implemented SSE, minor tweaks to policy UI
Codyjackson0321 Apr 3, 2026
2f5c13a
feat: Tons of changes.
Codyjackson0321 Apr 3, 2026
b09ccba
feat: adding sse and script
Codyjackson0321 Apr 3, 2026
dc62899
feat: adding migration
Codyjackson0321 Apr 3, 2026
bd2b9dd
feat: Added agent restart
Codyjackson0321 Apr 3, 2026
5267148
feat: Finishing up agent checking metrics
Codyjackson0321 Apr 3, 2026
ea3fb1d
feat: added handling for non reloadable pipelines and pipelines with …
Codyjackson0321 Apr 4, 2026
99c1b3b
refactor: SNMP will only show centralized connections for now
Codyjackson0321 Apr 4, 2026
b93fc1e
chore: updated tests!
Codyjackson0321 Apr 5, 2026
c2960fd
chore: working on getting docker + start scripts working after the ag…
Codyjackson0321 Apr 6, 2026
2b7449c
refactor: agent inspect modal contents are now collapsible. Collapsed…
Codyjackson0321 Apr 8, 2026
a3cdc6e
refactor: Visually changed the way elastic and logstashagent connecti…
Codyjackson0321 Apr 8, 2026
028396e
refactor: No longer allows the user to set heap: initial space higher…
Codyjackson0321 Apr 8, 2026
6474998
refactor: Removed LogstashAgent from this repo, it now has its own re…
Codyjackson0321 Apr 8, 2026
f2daf17
Add license headers and update pre-commit script
Codyjackson0321 Apr 9, 2026
6befdf4
feature: pages test
Codyjackson0321 Apr 9, 2026
75bb674
feature: pages test
Codyjackson0321 Apr 9, 2026
9eb15cf
feature: pages test, attempting dynamic navigation and version picker
Codyjackson0321 Apr 9, 2026
d95a525
feature: pages test, no more dynamic navigation
Codyjackson0321 Apr 9, 2026
1191c2e
feature: pages test, referencing readme.md
Codyjackson0321 Apr 9, 2026
1f4cc0c
feature: pages test, referencing readme.md
Codyjackson0321 Apr 9, 2026
24b1472
feature: pages test, big restructure
Codyjackson0321 Apr 9, 2026
ca50f04
feature: pages test, more restructuring
Codyjackson0321 Apr 9, 2026
65fe181
feature: pages test, fixing bug where header disappears
Codyjackson0321 Apr 9, 2026
f73442e
feature: pages test, restructuring navigation again
Codyjackson0321 Apr 9, 2026
e8cb240
feature: Added agent upgrade functionality
Codyjackson0321 Apr 10, 2026
daecf88
fix: bug that prevented 'unhealthy' from always showing even when sta…
Codyjackson0321 Apr 13, 2026
0872072
feat: Now makes it clear when a policy has undeployed changes
Codyjackson0321 Apr 13, 2026
452496e
feat: added on hover tooltip to explain what changes logstash agent m…
Codyjackson0321 Apr 15, 2026
3498892
refactor: refactoring to separate concerns
Codyjackson0321 Apr 15, 2026
7d42d8a
feat: We now display when the keystore password is changed and make t…
Codyjackson0321 Apr 15, 2026
6441983
refactor: reworking binaries and docker files to work with logstash a…
Codyjackson0321 Apr 16, 2026
b59fe26
refactor: added gevent dependency back in
Codyjackson0321 Apr 16, 2026
ca29247
refactor: resolving path for configuration file after previous refact…
Codyjackson0321 Apr 16, 2026
0e3ae50
refactor: Added testing, pytest cov, and bootstrapped the new documen…
Codyjackson0321 Apr 16, 2026
dbc4d76
feat: removed Github pages, added Documentation app
Codyjackson0321 Apr 16, 2026
97553f6
fix: relative image links in markdown docs
Codyjackson0321 Apr 16, 2026
e4f2947
feat: updated documentation and README.md
Codyjackson0321 Apr 17, 2026
43d109f
refactor: quick snmp UI updates and minor bugfixes
Codyjackson0321 Apr 17, 2026
cd7515d
feat: added changelog to documentation tab
Codyjackson0321 Apr 17, 2026
489f9bb
refactor: restyled add connection page for es connections
Codyjackson0321 Apr 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 3 additions & 5 deletions LogstashUI/.dockerignore → .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,11 @@ ENV
*.swp
*.swo

# Database
*.sqlite3
LogstashUI/data/db.sqlite3
data/
src/logstashui/data/

# Static files (will be collected during build)
staticfiles/
src/logstashui/staticfiles/

# Node modules (will be installed during build)
node_modules/
Expand All @@ -38,5 +36,5 @@ Thumbs.db

# Docker
LogstashUI/Dockerfile
docker-compose*.yml
docker/docker-compose.yml
.dockerignore
29 changes: 8 additions & 21 deletions .github/workflows/docker-image.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build & Push Docker Images
name: Build & Push LogstashUI Docker Image

on:
push:
Expand Down Expand Up @@ -26,32 +26,19 @@ jobs:
id: vars
run: |
USER="${{ secrets.DOCKERHUB_USERNAME }}"
APP_IMAGE="$USER/logstashui"
SIM_IMAGE="$USER/logstashagent"
IMAGE="$USER/logstashui"

echo "app_image=$APP_IMAGE" >> $GITHUB_OUTPUT
echo "sim_image=$SIM_IMAGE" >> $GITHUB_OUTPUT
echo "image=$IMAGE" >> $GITHUB_OUTPUT

VERSION="${GITHUB_REF#refs/tags/v}"
echo "version=$VERSION" >> $GITHUB_OUTPUT

echo "app_tags=$APP_IMAGE:$VERSION,$APP_IMAGE:latest" >> $GITHUB_OUTPUT
echo "sim_tags=$SIM_IMAGE:$VERSION,$SIM_IMAGE:latest" >> $GITHUB_OUTPUT
echo "tags=$IMAGE:$VERSION,$IMAGE:latest" >> $GITHUB_OUTPUT

# ---- Image 1: Django app (LogstashUI)
- name: Build and push (LogstashUI)
- name: Build and push LogstashUI
uses: docker/build-push-action@v6
with:
context: ./LogstashUI
file: ./LogstashUI/Dockerfile
context: .
file: ./docker/Dockerfile
push: true
tags: ${{ steps.vars.outputs.app_tags }}

# ---- Image 2: Logstash + FastAPI sidecar (LogstashAgent)
- name: Build and push (LogstashAgent)
uses: docker/build-push-action@v6
with:
context: ./LogstashAgent
file: ./LogstashAgent/Dockerfile
push: true
tags: ${{ steps.vars.outputs.sim_tags }}
tags: ${{ steps.vars.outputs.tags }}
25 changes: 13 additions & 12 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -58,13 +58,13 @@ cover/
# Django stuff:
*.log
local_settings.py
LogstashUI/data/db.sqlite3
src/logstashui/data/db.sqlite3
db.sqlite3-journal
LogstashUI/LogstashUI/data/
!LogstashUI/SNMP/data/
src/logstashui/LogstashUI/data/
!src/logstashui/SNMP/data/

# LogstashAgent data directory (logs, etc.)
LogstashAgent/data/
# logstashagent data directory (logs, etc.)
LogstashAgent/src/logstashagent/data/

# Flask stuff:
instance/
Expand Down Expand Up @@ -191,7 +191,7 @@ cython_debug/
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
# .idea/
.idea/

# Abstra
# Abstra is an AI-powered process automation framework.
Expand Down Expand Up @@ -219,10 +219,11 @@ __marimo__/

# Streamlit
.streamlit/secrets.toml
/LogstashUI/staticfiles/admin/
/LogstashUI/staticfiles/css/
/LogstashUI/staticfiles/django-browser-reload/
/LogstashUI/staticfiles/django_htmx/
/LogstashUI/staticfiles/images/
/LogstashUI/staticfiles/js/

# LogstashUI
/src/logstashui/staticfiles/
/src/logstashui/data/
/.plans/

# LogstashAgent (cloned from GitHub in host mode)
/LogstashAgent/
3 changes: 0 additions & 3 deletions .idea/.gitignore

This file was deleted.

12 changes: 0 additions & 12 deletions .idea/LogstashUI.iml

This file was deleted.

17 changes: 0 additions & 17 deletions .idea/aws.xml

This file was deleted.

28 changes: 0 additions & 28 deletions .idea/deployment.xml

This file was deleted.

6 changes: 0 additions & 6 deletions .idea/inspectionProfiles/profiles_settings.xml

This file was deleted.

7 changes: 0 additions & 7 deletions .idea/misc.xml

This file was deleted.

8 changes: 0 additions & 8 deletions .idea/modules.xml

This file was deleted.

8 changes: 0 additions & 8 deletions .idea/sshConfigs.xml

This file was deleted.

6 changes: 0 additions & 6 deletions .idea/vcs.xml

This file was deleted.

14 changes: 0 additions & 14 deletions .idea/webServers.xml

This file was deleted.

13 changes: 13 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
repos:
- repo: local
hooks:
- id: add-license-headers
name: Add license headers
entry: uv run python scripts/add_license_headers.py
language: system
pass_filenames: false
- id: check-licenses
name: Check dependency licenses
entry: uv run python scripts/generate_notice.py
language: system
pass_filenames: false
36 changes: 36 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,39 @@
## [0.4.0] - Logstash Agent - 04/18/2026

### Added

- Added centralized Logstash Agent management, including policy creation, enrollment, and agent-aware connection workflows.
- Added support for managing pipelines through Logstash Agent, including pipeline settings and policy-level pipeline organization.
- Added keystore management improvements, including password management, clearer visibility into sensitive fields, and support for deploying keystore-related changes independently.
- Added agent operational controls such as restart support, upgrade support, health reporting, and richer status details.
- Added live status and log streaming improvements to make troubleshooting and monitoring easier.
- Added validation to help catch missing Logstash installations, invalid paths, and other configuration issues earlier.
- Added clearer deployment feedback, including indicators for undeployed changes and warnings for situations that require special handling.
- Added an in-app documentation experience.
- Added expanded automated testing and coverage reporting.

### Changed

- Improved the overall Logstash Agent experience across enrollment, policy management, deployment workflows, and health visibility.
- Improved the safety of deployments so failed changes are handled more cleanly and unnecessary restarts are reduced.
- Improved the UI across connection management, policy views, agent health/status displays, and navigation.
- Improved security for communication between LogstashUI and Logstash Agent.
- Reworked packaging and project structure to support the ongoing evolution of Logstash Agent.
- Moved documentation into the application for a more integrated user experience.
- Updated SNMP-related UI flows and made minor usability improvements.

### Fixed

- Fixed navigation state so collapsed navigation sections now persist more reliably.
- Fixed several deployment and keystore edge cases that could cause failed or blocked changes.
- Fixed pipeline change detection issues so edits are recognized more reliably.
- Fixed agent status and health display issues.
- Fixed several policy, pipeline, and configuration UI bugs.
- Fixed monitoring behavior to better align with centralized connection workflows.
- Fixed documentation image/link issues.
- Fixed a number of packaging, path, logging, and platform-specific issues introduced during refactoring.


## [0.3.5] - 03/23/2026
### Changed
- Disabled light mode entirely
Expand Down
36 changes: 0 additions & 36 deletions LogstashAgent/.dockerignore

This file was deleted.

Loading
Loading