aprs.me/lib/aprsme_web
Graham McIntire 234fc2010f
Implement critical performance optimizations and error handling
This commit introduces several major performance improvements and adds
robust error handling for malformed HTTP requests:

Performance Optimizations:
- Add database migration with BRIN indexes for time-series data and partial
  indexes for recent queries, significantly improving query performance
- Create global StreamingPacketsPubSub system for real-time packet distribution
  with geographic bounds filtering using ETS for fast lookups
- Refactor PacketConsumer to use Stream module for memory-efficient processing,
  preventing memory accumulation during batch operations
- Implement dedicated BroadcastTaskSupervisor pool for async broadcast operations,
  preventing GenServer blocking on I/O
- Increase database connection pool from 25 to 45 (production) and 15 to 30 (dev)
  for better concurrency support

Error Handling:
- Add SentryFilter to prevent Bandit.HTTPError from missing Host headers from
  cluttering Sentry (common with bots/scanners)
- Configure custom 400 Bad Request error handling
- Filter out common bot/scanner paths from error reporting

All changes include comprehensive test coverage following TDD practices.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-18 18:19:49 -05:00
..
components Use Sentry Loader script to handle CORS errors gracefully 2025-07-18 15:51:21 -05:00
controllers Implement critical performance optimizations and error handling 2025-07-18 18:19:49 -05:00
live Fix JavaScript context binding issues in map component 2025-07-18 15:05:15 -05:00
plugs Configure CSP headers to allow Sentry and CDN scripts 2025-07-18 15:30:36 -05:00
aprs_symbol.ex refactor 2025-07-13 16:49:20 -05:00
endpoint.ex add sentry 2025-07-18 15:07:53 -05:00
gettext.ex more languages 2025-07-06 10:08:58 -05:00
router.ex Implement critical performance optimizations and error handling 2025-07-18 18:19:49 -05:00
telemetry.ex clean up warnings 2025-07-16 08:55:46 -05:00
time_helpers.ex clean up warnings 2025-07-16 08:55:46 -05:00
time_utils.ex refactor and performance improvements 2025-07-10 10:53:34 -05:00
user_auth.ex refactor to use external parser 2025-06-24 14:22:09 -05:00
weather_units.ex fix nil weather units 2025-07-08 12:45:50 -05:00