Skip to content

Latest commit

 

History

History
225 lines (176 loc) · 10.4 KB

Changelog.md

File metadata and controls

225 lines (176 loc) · 10.4 KB

BeatLog Changelog

Latest Version: alpha-0.1.8

Stable Version: alpha-0.1.7

Releases

Contents

Pre-Release

BeatLog is still in development. Every version thus far is a "pre-release".

alpha-0.1.8 details

  • fixed links to documentation on various BeatLog pages

alpha-0.1.7 details

═════════
  • Python upgrade 3.10 → 3.11
  • aesthetic / navigation improvements / bugfixes
    • Home Page redesign
  • Features
    • ability to delete from all logs at once on database clean
    • API call for listing all Python packages
    • Beat! button now allows GET requests, not just POST. Real links can be used now. Links provided in filtrate table on report
    • clean geography cache faster with adjusted SQL, 100 row size limit for clears in case of timeout
    • Report improvements
      • Filtrate IP list/table
      • Action Count table now only unique IPs for Finds, Bans, Visitors
      • SQL queries improved
  • Documentation
    • fixed links, changed headings on this page, proofread releases

alpha-0.1.6 details

  • Documentation expansion and reorganization
  • Added to Failed Regex
═════════
  • JSON API
    • no longer rounding bandwidth calls to nearest day
    • cleaned up help page
    • added home_ip check before data summary call, added SQL transaction surrounding home_ip calls in general to fix some bugs
  • Failed Regex
    • if primary and secondary regex methods fail during parsing, line saved to database
    • expanded failed regex page: view lines by log, delete saved lines
  • Documentation
    • big reorganization
    • updated Docker README, last update: alpha-0.1.2
  • Bug Fixes / Minor Improvements
    • various aesthetic / navigation improvements
    • removed unused template(s)

alpha-0.1.5 details

  • Added to API features
  • No longer building latest image for armhf AKA arm32v7 architectures, will continue building stable images -Bootstrap 5.2 → 5.3
═════════
  • JSON API
    • new feature: bandwidth - returns total bandwidth from access log.
      • filter return by specifying FIELD and VALUE. String matching provided for tech,URL, and referrer
      • optional filter by date with start/stop inputs. only supporting UNIX format for now
      • see documentation (linked above) for more details
    • named only previous feature summary. each "feature" on separate URLs.
    • separated code into two files. Additional features can be added to existing blueprint.
      • future development: can copy blueprint and establish API v2 to maintain existing features through unstable releases
  • Docker Image Workflows
    • no longer building "latest" image automatically with each commit for armhf AKA arm32v7 architectures, can build on request
    • will continue building "stable" images with each release
  • Bugfixes to make a more "stable" release. Various aesthetic / navigation improvements
    • API bugfixes
    • Updated Bootstrap to 5.3 from 5.2
    • minor fixes

alpha-0.1.4 details

  • Added JSON API
  • All docker images built via workflows
    • stable / latest images now indicate tagged release / latest commit, respectively
  • Removed support for unauthorized.log
  • Database changes - removed Unauthorized table: migration instructions
═════════
  • Version Control, Image management
    • renamed existing workflow to build+push docker images with each commit. Tags still same name, latest.
    • created additional workflow to build+push docker images with each release. Tags will be version alpha-0.1.4 and stable.
    • No more docker images built+pushed by me, all from within Github.
  • Code Cleaning
    • removed unauthorized.log support. removed comment blocks for NullConnectionPool versions (see changes).
  • API v1
    • JSON API to retrieve basic stats, help page
  • Bug Fixes / Minor Improvements
    • fixed issues with changed code for fail2ban jail page, Known Device settings
    • added check for existing data before API calls
    • various aesthetic / navigation improvements

alpha-0.1.3 details

═════════
  • Database Schema
    • changed datatypes for Settings → KnownDevices and Jail → IgnoreIPs
    • Added time interval columns, Findtime and Bantime to Jail.
    • detailed in alpha-0.1.2 tag, manual migrations required prior to update
  • DB Features
    • page to query database (access, error, fail2ban logs) and page to view time-ordered results as table
    • various filter options and pre-assembled queries
  • Documentation
    • added sections detailing new DB features
    • fixes for some images and file paths
  • SQL query creation improved Known Devices
    • devices now input as group of strings, which is stored as text array in database
    • psycopg3 sql module then used to craft specific SQL, WHERE tech = ANY(<list>) or WHERE tech != ALL(<list>)
  • Expanded fail2ban jail.local page
    • can now read more than one ignore IP address, if present
    • reads and present find and ban times
  • Bug Fixes / Minor Improvements
    • various aesthetic / navigation improvements

alpha-0.1.2 details

  • Docker images built via workflows with each commit
    • named releases built manually
  • First tagged release
  • Last NullConnectionPool release! Notes
═════════
  • Installation, Docker Compose Instructions
    • mount directories instead of files to update logs within BeatLog container
    • PostgreSQL upgrade
  • Docker Image
    • Build latest and arm32v7-latest tags via Github workflow
    • NullConnectionPool versions uploaded manually, may stop later
  • Documentation
  • General
    • SQL query creation improved, as per psycopg3 docs
      • need to continue work on Known Devices and Home Ignorable usage
    • increased gunicorn worker timeout to 60s, from 30s, to allow for longer operations
      • Can revert by
        • Timechecks in Parse All, individual parsing operations
        • Analyze report generation with profiler for potential improvements
    • Bug Fixes / Minor Improvements
      • various errors fixed
      • added data to report tables
      • various aesthetic / navigation improvements

alpha-0.1.1 details

  • production WSGI: Gunicorn
  • related fixes
═════════
  • Issue with psycopg3 connection pool not restoring discarded connections. Related to Gunicorn or app design?
    • general issue of ConnectionPool with Gunicorn's forked workers. error may be solved: pool opened and checked after fork, before first request.
    • Scheduled tasks created with gunicorn --preload, to run with a single Gunicorn worker.
  • Modified location city/country set to None saved as NULL in database.
    • added note to docs about inability to set "None" as a city or country name, due to above. Sorry!
  • Fixed possible scheduled parse_all duplicate prepared statements error
  • Potential Gunicorn worker timeout for parsing or location fill operations
    • limited geofill to maximum of 20 locations at a time (20-25 second operation)
    • could increase gunicorn --timeout from default 30 seconds
    • what is upper limit for parsing time?
  • change fail2ban lastparsed from last saved line to last read line
  • expanded documentation
    • continuous drafting
  • add production WSGI server Gunicorn, using 3 workers for now

alpha-0.1.0 details

  • Initialized repository, documentation
  • Uploaded BeatLog images to Docker Hub with alpha-0.1.0 tag