Commit Graph

86 Commits

Author SHA1 Message Date
vitor-aignosi
4791665642 SIENTIAPDE-1184
SIENTIAPDE-1184
 refactor: improve schedule reporting in Formatters class

- Introduced a unified reporting structure for created, updated, and deleted schedules.
- Enhanced success and error report messages for clarity, including specific schedule types in notifications.
- Updated attachment handling in success and error reports to improve context and readability.
2025-08-14 09:19:48 -03:00
vitor-aignosi
e8ce3e75d5 SIENTIAPDE-1184
fix: enhance error reporting in Formatters class

- Updated the parse_report_schedule method to return a dictionary for error keys, including both message and attachment.
- Improved error report formatting in send_error_report method to include attachments for better context in failure notifications.
2025-08-14 08:50:21 -03:00
vitor-aignosi
4d75d581f8 SIENTIAPDE-1184
Changing "updated_at" type from str to datetime
2025-08-13 16:34:02 -03:00
vitor-aignosi
1306bed21d SIENTIAPDE-1184
fix: enhance error reporting in TemporalManager class

- Added typed_search_attributes to the schedule creation for improved search capabilities.
- Included traceback in error messages when schedule deletion fails, providing better context for debugging.
2025-08-12 16:26:24 -03:00
vitor-aignosi
5477f68b6b SIENTIAPDE-1184
fix: update notification IDs for error reporting in Formatters class

- Changed notification IDs for error reports related to schedule creation, update, and deletion to include the suffix '_ERROR' for better clarity in error handling.
2025-08-12 14:12:52 -03:00
vitor-aignosi
7fd38e1d52 SIENTIAPDE-1184
fix: add conditional check for data_filter in MongoDB activity

- Updated the insert_many method to only execute if data_filter is not empty, preventing unnecessary database operations and potential errors.
2025-08-12 13:36:13 -03:00
vitor-aignosi
6c1b7c4bf7 SIENTIAPDE-1174
feat: enhance notification filtering in Formatters and SlotManager classes

- Added logic to remove receiver groups with no notifications, improving the efficiency of notification handling.
- Implemented early return in Alerts and Reports workflows when there are no notifications or receiver groups, streamlining the processing flow.
2025-08-01 12:41:40 -03:00
vitor-aignosi
ae0fa2fc8a SIENTIAPDE-1174
feat: integrate metrics tracking for sent emails in Email activity

- Added metrics tracking for the number of emails sent, incorporating pod ID, model name, pipeline name, and email group for better monitoring.
- Enhanced logging to provide detailed information on email sending status for each receiver group.
2025-08-01 12:27:59 -03:00
vitor-aignosi
7bb24b42f6 SIENTIAPDE-1174
feat: update dependencies and enhance metrics integration

- Updated sientia-dataops-library dependency version from 1.3.5 to 1.3.7 in requirements.txt.
- Incremented image tag in values.yaml from 0.2.7 to 0.3.1.
- Added Prometheus metrics service configuration in values.yaml, enabling metrics collection.
- Implemented Prometheus client in worker.py to start a metrics server and track application health.
2025-08-01 12:01:03 -03:00
vitor-aignosi
3a8eb04462 SIENTIAPDE-1172
fix: add conditional login for SMTP server and enhance test coverage

- Updated the Email class to conditionally log in to the SMTP server only if a sender password is provided, improving security.
- Enhanced test cases for the try_send_email method to cover various scenarios, including successful email sending and handling SMTP disconnections.
2025-07-30 09:25:02 -03:00
vitor-aignosi
ce380bd46d SIENTIAPDE-1172
fix: add timeout to SMTP connection for improved reliability

- Updated the SMTP connection in the Email class to include a timeout of 20 seconds, enhancing the robustness of email sending operations.
- Adjusted the reconnection logic to maintain consistent timeout settings during server initialization.
2025-07-30 08:55:59 -03:00
vitor-aignosi
e75e089b1b SIENTIAPDE-1172
refactor: rename send_email method to try_send_email and update parameter type

- Renamed the send_email method to try_send_email for clarity in its purpose.
- Changed the receivers parameter type from list[str] to str to simplify the method signature.
2025-07-30 08:43:48 -03:00
vitor-aignosi
0a5e137cc3 SIENTIAPDE-1172
SIENTIAPDE-1172
feat: update email configuration and enhance email sending functionality

- Changed EMAIL_SENDER in values.yaml to a new email address.
- Updated EMAIL_SENDER_PASSWORD key reference in values.yaml for improved security.
- Added PostgreSQL configuration parameters to values.yaml for database connectivity.
- Refactored Email class to include a new send_email method for better error handling during email transmission.
- Implemented reconnection logic for SMTP server disconnections to ensure reliable email delivery.
2025-07-30 08:29:11 -03:00
vitor-aignosi
263410b292 SIENTIAPDE-1172
feat: enhance notification handling in Formatters and SlotManager classes

- Introduced a mechanism to prevent duplicate notifications by tracking already added keys.
- Updated notification filtering logic to ensure unique notifications are processed for each receiver group.
- Improved overall notification management in orchestrator activities.
2025-07-29 12:13:08 -03:00
vitor-aignosi
6f6094b2ce SIENTIAPDE-1172
feat: enhance email notifications and orchestrator activities for reports

- Updated email HTML structure to clearly present errors, warnings, and info notifications.
- Introduced a new method in the Formatters class to filter notification reports based on group configurations.
- Enhanced the Reports workflow to integrate the new filtering functionality and manage notification packages effectively.
- Adjusted SlotManager to store timestamps with mail type specificity for better tracking.
- Improved test coverage for the new filtering functionality in the Formatters class.
2025-07-29 11:42:05 -03:00
vitor-aignosi
bc456cc8be SIENTIAPDE-1172
refactor: streamline email generation and enhance notification handling

- Updated email HTML structure to improve clarity and presentation of notifications.
- Enhanced notification generator to better manage execution counts and output formatting.
- Refactored Email class to improve error handling and logging during email sending.
- Adjusted EmailBuilder to efficiently process error, warning, and info models.
- Improved test coverage for email and notification functionalities to ensure reliability.
2025-07-29 10:25:31 -03:00
vitor-aignosi
c3ba2e4b5a SIENTIAPDE-1172
refactor: update email HTML structure and enhance notification generator

- Modified email HTML to reflect updated model names and error/warning messages.
- Adjusted notification generator to improve execution counts and streamline output handling.
- Refactored activities in orchestrator to correct parameter names and improve type hints for better clarity.
- Enhanced email builder to handle error, warning, and info models more efficiently.
2025-07-28 17:26:28 -03:00
vitor-aignosi
9bc238388a SIENTIAPDE-1172
feat: integrate email configuration and enhance orchestrator activities

- Added email configuration parameters to values.yaml for sender details and SMTP settings.
- Refactored Email class to correct parameter names and improve logging during initialization.
- Introduced build_email_config function to streamline email configuration retrieval.
- Updated worker.py to include email and Postgres configurations in the main orchestration process.
2025-07-28 16:12:22 -03:00
vitor-aignosi
ab657d0fda SIENTIAPDE-1172
feat: enhance email and slot manager activities with new filtering and caching functionalities

- Updated Email class to improve attachment handling and logging.
- Refactored Formatters class to process notifications more effectively by grouping them based on their configurations.
- Introduced new methods in SlotManager for filtering notification alerts and storing notification cache.
- Enhanced Alerts workflow to integrate new filtering and caching activities.
- Added tests for new functionalities in SlotManager and Formatters classes to ensure reliability.
2025-07-28 15:07:09 -03:00
vitor-aignosi
f2cb0f057d SIENTIAPDE-1172
refactor: simplify EmailBuilder parameters and remove unused templates

- Removed unused template file attributes from EmailBuilder class.
- Updated parameters method to eliminate report_data argument, streamlining the function for better clarity and efficiency.
2025-07-25 16:51:56 -03:00
vitor-aignosi
2a5534cf64 SIENTIAPDE-1172
feat: enhance orchestrator activities with new email and Postgres integrations

- Added Email and Postgres classes to the Activities class for improved functionality.
- Introduced new methods in MongoDB and SlotManager for loading and managing data.
- Updated requirements.txt to include jinja2.
- Added new formatting activity for log reports in Formatters class.
- Enhanced test coverage for MongoDB and SlotManager activities.
2025-07-25 16:03:39 -03:00
vitor-aignosi
c1e6807ac3 SIENTIAPDE-1171
fix: update workflow_type in minimal_retrain function for consistency

- Changed workflow_type from "retrain" to "minimal_retrain" in the minimal_retrain function to align with the new schedule configuration.
2025-07-23 13:01:37 -03:00
vitor-aignosi
66e9cf58e4 SIENTIAPDE-1171
SIENTIAPDE-1171 feat: add minimal retrain schedule configuration to samples.json and update formatters.py

- Added a new schedule configuration for the minimal retrain pipeline in samples.json.
- Updated the Formatters class in formatters.py to handle the new minimal retrain workflow type, integrating the minimal_retrain function for streamlined processing.
2025-07-23 12:51:55 -03:00
vitor-aignosi
5a4d6c5706 SIENTIAPDE-1171
feat: add minimal_retrain function to orchestrator_functions.py for retraining workflows

- Introduced minimal_retrain function to streamline retraining configuration.
- The function integrates common configuration with specific parameters for retraining workflows.
2025-07-23 12:26:36 -03:00
vitor-aignosi
2317bd404b SIENTIAPDE-1166
fix: add missing newline in MongoDB class for improved readability
2025-07-23 07:45:51 -03:00
vitor-aignosi
4905e61214 SIENTIAPDE-1166
feat: add TTL index functionality to MongoDB activities and update requirements

- Updated MongoDB class to accept TTL index duration in seconds.
- Implemented create_collection_with_ttl_index method to create collections with TTL indexes.
- Added environment variable for TTL index duration in connectors_config.
- Updated tests to cover new TTL index functionality and ensure proper behavior.
- Bumped sientia-dataops-library version to 1.3.4 in requirements.txt.
2025-07-22 15:09:15 -03:00
vitor-aignosi
37f4e6cf59 SIENTIAPDE-1151
fix: update GITHUB_BRANCH in values.yaml and ensure error messages are converted to strings in formatters.py for improved notification clarity
2025-07-18 09:49:55 -03:00
vitor-aignosi
92fbb704f5 SIENTIAPDE-1151
refactor: enhance error handling in build_tag_config and slot processing to include notifications for missing servers
2025-07-18 09:45:42 -03:00
vitor-aignosi
7c92bd2584 SIENTIAPDE-1163
refactor: enhance logging in activities to include metadata for improved context in notifications and error handling
2025-07-17 15:27:58 -03:00
vitor-aignosi
1d7ce518bd SIENTIAPDE-1163
refactor: update requirements to point to local sientia-dataops-library path; modify orchestration and test files to use start_activity_method for consistency
2025-07-17 11:03:05 -03:00
vitor-aignosi
513e4a0de8 SIENTIAPDE-1163
refactor: update Temporal client initialization to use environment variable for namespace, improving configuration flexibility
2025-07-16 15:36:33 -03:00
vitor-aignosi
4d97e21ba7 SIENTIAPDE-1163
refactor: remove load_schedule activity from main orchestration workflow to streamline pipeline management
2025-07-16 15:20:57 -03:00
vitor-aignosi
d60062af74 SIENTIAPDE-1163
refactor: update MongoDB notification IDs for error handling in activities; add tests for error scenarios in MongoDB and TemporalManager activities to ensure proper notification sending on failures
2025-07-16 15:18:49 -03:00
vitor-aignosi
b67d23da1f SIENTIAPDE-1163
refactor: update notification handling in activities to include metadata in notifications, enhancing context for error reporting and success messages; update requirements to use version 1.3.0 of the sientia-dataops-library
2025-07-16 13:14:16 -03:00
vitor-aignosi
225964f938 SIENTIAPDE-1163
refactor: update database configuration key in NotificationHandler to 'database_name' for consistency with MongoDB config structure
2025-07-16 11:50:01 -03:00
vitor-aignosi
2fa3a74bcc SIENTIAPDE-1150
refactor: update notification handler imports to use CoreNotificationHandler across activities and worker, enhancing consistency in notification management
2025-07-16 09:37:50 -03:00
vitor-aignosi
2533ea882f SIENTIAPDE-1150
refactor: update logging in Couchbase activity to use f-strings for improved readability; modify orchestration workflow to conditionally execute report handlers and replace method calls for consistency
2025-07-15 10:03:04 -03:00
vitor-aignosi
bc0b47fe36 SIENTIAPDE-1150
refactor: update orchestration workflow to conditionally start schedule and slot report handlers based on report availability, improving clarity and efficiency
2025-07-15 09:02:46 -03:00
vitor-aignosi
8d9381049a SIENTIAPDE-1150
refactor: add debug logging for schedule comparison in formatters, enhancing traceability of updated_at timestamp checks
2025-07-14 17:01:50 -03:00
vitor-aignosi
a4fb7d406b SIENTIAPDE-1150
refactor: enhance schedule configuration in formatters to include updated_at timestamps for scouter and predictions_batch pipelines, improving state management
2025-07-14 16:52:45 -03:00
vitor-aignosi
29469ede72 SIENTIAPDE-1150
refactor: update samples.json to change server_id from 'default_server' to '1' for multiple tags; add 'active' and 'updated_at' fields for better state management in orchestration
2025-07-14 16:45:22 -03:00
vitor-aignosi
5a421b80c0 SIENTIAPDE-1150
refactor: update orchestration workflow to conditionally execute pipeline timestamp handlers based on report flags, improving efficiency and clarity
2025-07-14 16:26:34 -03:00
vitor-aignosi
14e1366658 SIENTIAPDE-1150
refactor: update orchestration workflow to conditionally start activity methods for pipeline timestamps based on report availability, enhancing efficiency and clarity
2025-07-14 16:24:03 -03:00
vitor-aignosi
0910c0426a SIENTIAPDE-1150
refactor: update orchestration workflow to replace execute_local_activity_method with start_local_activity_method and execute_activity_method with start_activity_method for improved clarity and consistency
2025-07-14 16:21:53 -03:00
vitor-aignosi
7f162a7d4e SIENTIAPDE-1150
refactor: streamline MongoDB activity methods to improve readability and maintainability; replace inline query construction with variable assignments for updated, created, and deleted pipelines
2025-07-14 16:16:29 -03:00
vitor-aignosi
f823d1813f SIENTIAPDE-1150
refactor: restructure services in values.yaml to separate API and OPC configurations; update mongo_db.py to import datetime correctly and enhance readability
2025-07-14 16:14:27 -03:00
vitor-aignosi
0fd631a029 SIENTIAPDE-1150
SIENTIAPDE-1150: enhance MongoDB activities to filter successful pipelines; update orchestration workflow to include timestamp management for updated, created, and deleted pipelines; adjust tests to reflect new success criteria
2025-07-14 16:10:51 -03:00
vitor-aignosi
b3069c8a58 SIENTIAPDE-1150
chore: update image tag to 0.2.4 in values.yaml; refactor logging in slot_manager and temporal_manager for improved readability; modify MongoDB and Redis configurations for better defaults; enhance worker.py with new activities and error handling
2025-07-14 13:42:10 -03:00
vitor-aignosi
43206b578d SIENTIAPDE-1150
fix: implement schedule normalization and timestamp management in MongoDB activities, enhance orchestration workflow with new formatting and normalization methods
2025-07-14 13:00:46 -03:00
vitor-aignosi
9821b052ae SIENTIAPDE-1148
fix: implement compare_configs method in formatters.py to streamline schedule comparison and update handling
2025-07-11 16:30:09 -03:00