Commit Graph
118 Commits
Author SHA1 Message Date
windyboy a96cb8a40b Implement dead-letter queue (DLQ) functionality for handling permanent failures in message processing. Update configuration to enable DLQ and specify the subject for routing failed messages. Enhance observability by adding metrics for message handling, retries, and database operations. Introduce structured logging for better traceability of message processing events. 2025-11-16 09:15:37 +08:00
windyboy c98baa0ff4 Refactor NATS consumer defaults (#7) 2025-11-16 08:24:29 +08:00
windyboy 53208997e8 Integrate monitoring server for observability, adding health and metrics endpoints. Update configuration to enable monitoring features and enhance README with deployment examples for Kubernetes and systemd. Refactor application initialization to include monitoring server setup and improve error handling in message processing metrics. 2025-11-15 16:30:29 +08:00
windyboy c3f98e9c7c Add NATS exporter to Docker Compose for enhanced observability, update Prometheus and Grafana configurations to integrate new metrics, and enhance documentation to reflect changes in the development stack. 2025-11-15 15:27:53 +08:00
windyboy cdb0cea8f7 Enhance Docker Compose setup by adding initialization services for PostgreSQL and NATS, improving JetStream configuration, and updating the Taskfile to use Docker Compose instead of Podman. Modify database schema to enforce unique constraints on (uuid, received_at) for telegrams and telegrams_raw tables. 2025-11-15 14:24:11 +08:00
windyboy 184c5453fb Expand Docker Compose development stack to include observability tools: OpenTelemetry Collector, Jaeger, Prometheus, and Grafana. Update README with new usage instructions for the observability stack and enhance Taskfile for streamlined development commands. Introduce sample telegram generation utility and improve NATS configuration for core and JetStream modes. 2025-11-15 12:08:26 +08:00
windyboy 4f16bd6d90 Introduce Docker Compose development stack with TimescaleDB and NATS services. Update README with usage instructions for local development. Upgrade Go version to 1.25.0 and update dependencies. Refactor configuration for NATS consumer rules and enhance Telegram database schema with TimescaleDB support. 2025-11-15 09:46:29 +08:00
windyboy 359e7694ab Update dependencies, enhance NATS consumer configuration, and improve error handling in message processing. Introduce telemetry support with OpenTelemetry for tracing and metrics. Refactor README to include new configuration options and update tests for improved coverage of error scenarios. 2025-11-15 09:01:24 +08:00
windyboy 31839cf21f Upgrade Go version to 1.24.0 and update various dependencies, including NATS, Viper, and Go modules. Refactor error handling in configuration loading and validation processes for improved clarity and consistency. 2025-11-14 23:42:39 +08:00
windyboy 88d5922f90 Update README with configuration details, add default test configuration, and implement TelegramMapper tests. Enhance message processing to set timestamps and improve error handling in the processor. Refactor NATS consumer configuration and ensure proper handling of message attributes. 2025-11-14 23:18:10 +08:00
windyboy 02e54a2670 Refactor application initialization to load configuration and enhance message processing. Introduce effective subscription topic handling and improve error management in NATS consumer. Update tests for publisher error handling and add new dependency injection method for app initialization. 2025-11-14 22:43:04 +08:00
windyboy 9cce4610b6 Enhance NATS configuration and error handling. Introduce stream limits and consumer rules in configuration files. Refactor message processing to handle permanent errors. Update README and development configuration to reflect changes. Add tests for new error handling mechanisms. 2025-11-14 21:42:04 +08:00
windyboy a574cfcf27 Upgrade Go version to 1.23.0 and update dependencies. Introduce new application structure with Clean Architecture principles, including message processing, NATS integration, and PostgreSQL repository. Add configuration management using Koanf and structured logging with Zap. Remove legacy GraphQL integration and related files. Implement dependency injection with Google Wire. 2025-11-14 08:42:26 +08:00
windyboy bafbbf470c Refactor uuid to id in message handling & processing. (#6) 2024-08-14 14:29:24 +08:00
windyboy a5fa4955f4 Add configuration to interfaces. 2024-08-14 11:48:18 +08:00
windyboy 6b44c2d7a0 refactor subscribe (#4)
*  Refactor nats subscribe method and remove unused argument.

*  Add logging for message insertion 📝
2024-08-14 09:40:47 +08:00
windyboy 8a4c46aa34 update handler (#2)
* 🔧 Remove commented-out regex patterns and initialization in config.

*  Add NATS message publisher with configuration 📩🚀

*  Add new PlainTextMarshaler and refactor handler in nats package.
2024-08-12 17:47:34 +08:00
windyboy fd58395db3 🔧 Remove commented-out regex patterns and initialization in config. (#1) 2024-08-12 14:23:31 +08:00
windyboy e468e1f89c refactor: Add ToString method to ParsedMessage struct 2024-08-09 11:13:25 +08:00
windyboy 85ce23cb16 refactor: Update 'Content' field in HasuraRepository.CreateNew method 2024-08-09 11:07:07 +08:00
windyboy 091a054eab refactor: Rename 'text' field to 'content' in telegrams table 2024-08-09 10:29:17 +08:00
windyboy 622bd8e11b refactor: Remove commented-out code in schedule_parser.go 2024-08-07 20:01:14 +08:00
windyboy 3a1f533d63 hasura 2024-08-07 17:16:07 +08:00
windyboy 15ce2c033a refactor: Update aviation_parser.go to remove unused code and update constants 2024-08-07 17:05:42 +08:00
windyboy e1cc851cc3 refactor: Rename 'body_and_footer' column to 'text' in telegrams table 2024-08-07 14:10:15 +08:00
windyboy f340c66b19 refactor: Update aviation_parser.go to remove unused code and update constants 2024-08-07 11:10:18 +08:00
windyboy 55a286f521 refactor: Improve error handling in NATS message handling 2024-08-07 11:10:08 +08:00
windyboy e4fa138089 refactor: Update constants and remove unused code in aviation_parser.go and constants.go 2024-08-07 10:47:15 +08:00
windyboy 5515f353b4 refactor: Refactor aviation_parser.go to improve code readability and maintainability 2024-08-06 22:46:01 +08:00
windyboy bbaea62788 refactor: Update parseWaypoints function to return error in schedule_parser_test.go 2024-08-06 22:28:46 +08:00
windyboy afafd51bad refactor: Remove unused code and update regular expressions in schedule_def.go 2024-08-06 13:12:19 +08:00
windyboy a57e924501 refactor: Update aviation_parser.go and pattern.go to use BodyConfig struct instead of config.BodyConfig 2024-08-06 12:44:32 +08:00
windyboy bef663ca3d refactor: Update Civial Aviation Authority Telegram message processor usage in main.go and add NATS server connection logging 2024-08-05 15:58:46 +08:00
windyboy 3c37410737 refactor: Update Nats handler and Hasura repository initialization 2024-08-05 11:42:33 +08:00
windyboy 3c917c93af refactor: Update main.go to process Civial Aviation Authority Telegram messages and add CLI flag for Nats server address and topic 2024-08-05 10:58:20 +08:00
windyboy b9e9c2b8a7 refactor: Remove commented code for extracting flight numbers 2024-08-02 16:04:11 +08:00
windyboy 2690f571ad refactor: Add support for parsing HO, NS, and EU Airlines flight schedule data 2024-08-02 14:58:44 +08:00
windyboy aff70c7373 refactor: Update flight schedule parser to handle multiple flight numbers 2024-08-02 14:37:12 +08:00
windyboy 8798727a0d refactor: Update FlightNumberPattern regex to handle multiple flight numbers 2024-08-02 14:21:12 +08:00
windyboy 144f3a9d9a refactor: Add support for parsing 翔鹏航空 (8L) flight schedule data 2024-08-02 12:39:57 +08:00
windyboy a37596b40b refactor: Add support for parsing ZH Airlines flight schedule data 2024-08-02 12:37:12 +08:00
windyboy 7b1a072f32 refactor: Add support for parsing 9C Airlines flight schedule data 2024-08-02 11:47:07 +08:00
windyboy 81cf4584ac remove schedule parser definition to another file 2024-08-02 11:40:46 +08:00
windyboy 158a03d4c3 refactor: Improve parsing of CK Airlines (CK) flight schedule data 2024-08-02 11:36:21 +08:00
windyboy 2962dee69d 3U schedule 2024-08-02 11:24:09 +08:00
windyboy a734f5f25c refactor: Improve parsing of flight schedule data 2024-08-02 11:15:23 +08:00
zhiqiang feng d91e61ab5d up 2024-08-02 10:01:49 +08:00
windyboy 7222be4b59 refactor: Add test for parsing date in schedule_parser_test.go 2024-07-31 21:46:47 +08:00
windyboy 20872710ce refactor: Improve parsing of flight schedule data 2024-07-31 17:48:36 +08:00
windyboy 54dcefb08a refactor: Improve parsing of flight schedule data
The code changes in `schedule_parser_test.go` enhance the parsing logic for flight schedule data. This improves the accuracy and functionality of the code when extracting information such as index, task, date, flight number, aircraft registration, waypoints, and departure/arrival times from the input line. The changes ensure more reliable and consistent parsing of flight schedule data.
2024-07-31 17:46:18 +08:00