Commit Graph

155 Commits

Author SHA1 Message Date
vitor-aignosi
2ed8f2e2db Merge branch 'main' into SIENTIAPDE-1199-revisar-e-testar-observabilidade 2025-08-21 09:25:01 -03:00
vitor-aignosi
e0b8677f83 Merge pull request #15 from Aignosi/SIENTIAPDE-1169-pensar-e-projetar-testes-de-breakdown-e-performance
Sientiapde 1169 pensar e projetar testes de breakdown e performance
2025-08-21 09:19:17 -03:00
vitor-aignosi
2ade08c916 SIENTIAPDE-1199
refactor: remove unused schedule_handles attribute from TemporalManager

- Eliminated the schedule_handles dictionary from the TemporalManager class as it was no longer needed.
- Cleaned up related code to ensure proper functionality without the removed attribute.
2025-08-20 14:58:15 -03:00
vitor-aignosi
02243a1e22 SIENTIAPDE-1199
refactor: enhance logging and metadata handling across activities

- Updated logging statements in Email, Formatters, MongoDB, SlotManager, and TemporalManager classes to include metadata for better traceability.
- Improved success reporting in MongoDB, SlotManager, and TemporalManager by specifying the number of successfully processed items.
- Refactored logger usage in worker.py to utilize custom_info for enhanced logging consistency.
2025-08-20 11:15:58 -03:00
vitor-aignosi
9e49dd4255 SIENTIAPDE-1169
chore: update dependencies and refactor logger imports

- Updated the sientia-dataops-library dependency version from 1.3.8 to 1.4.1 in requirements.txt.
- Changed image tag in values.yaml from 0.4.0 to 0.4.2.
- Refactored logger imports in multiple files to use the new observability module instead of the temporal module.
- Updated retry policy imports in various workflow files to reflect the new structure.
2025-08-19 16:47:25 -03:00
vitor-aignosi
f3cae0f0ce Merge branch 'SIENTIAPDE-1169-pensar-e-projetar-testes-de-breakdown-e-performance' of github.com:Aignosi/sientia-dataops-orchestrator_temporal into SIENTIAPDE-1169-pensar-e-projetar-testes-de-breakdown-e-performance 2025-08-19 08:54:24 -03:00
vitor-aignosi
e2fbc20af0 SIENTIAPDE-1169
feat: add shutdown tests for Activities and Email classes

- Implemented unit tests for the shutdown methods in the Activities and Email classes to ensure proper resource cleanup.
- Verified that the shutdown processes for MongoDB, PostgreSQL, and Email are called as expected during the shutdown sequence.
2025-08-19 08:54:18 -03:00
vitor-aignosi
3dd2b9de62 Merge branch 'main' into SIENTIAPDE-1169-pensar-e-projetar-testes-de-breakdown-e-performance 2025-08-18 15:20:20 -03:00
Bruno Domingues
552e1d7087 Merge pull request #14 from Aignosi/SIENTIAPDE-1184-investigar-bugs-detectados-no-grafana
Sientiapde 1184 investigar bugs detectados no grafana
2025-08-18 17:14:57 +00:00
vitor-aignosi
d065f7f700 SIENTIAPDE-1169
chore: update helm chart version in values.yaml

- Updated the version number for the sientia-orchestrator-worker helm chart from 0.4.0 to 0.5.0 in values.yaml to reflect the latest release.
2025-08-18 13:45:32 -03:00
vitor-aignosi
845654859e SIENTIAPDE-1169
feat: add SDK metrics service and update telemetry configuration

- Introduced a new service for SDK metrics in values.yaml, enabling metrics collection on port 9091.
- Updated the worker.py to initialize a new runtime with Prometheus metrics configuration for the SDK metrics server.
- Adjusted environment variable for GITHUB_BRANCH to reflect the current focus on testing and performance design.
2025-08-18 13:40:19 -03:00
vitor-aignosi
229dcb1ac8 SIENTIAPDE-1184
docs: update README.md to provide comprehensive overview of SIENTIA DataOps Orchestrator Temporal

- Added detailed project overview, goals, and architecture sections.
- Documented main workflows including orchestrator, alerts, and reports workflows with input parameters and functionalities.
- Included environment variable configurations for Redis, MongoDB, PostgreSQL, Couchbase, email, Temporal, application, and Kafka.
- Described deployment strategies and monitoring capabilities, including Prometheus metrics.
- Enhanced usage instructions for triggering workflows and logging operations.
2025-08-14 09:58:51 -03:00
vitor-aignosi
31f2ff2439 SIENTIAPDE-1184
refactor: enhance shutdown procedures and documentation across activities

- Added shutdown methods to MongoDB and Email classes to ensure proper resource cleanup.
- Updated docstrings for shutdown methods to clarify their purpose and functionality.
- Enhanced documentation for various methods across multiple classes, improving clarity on parameters and return values.
- Improved the main function and other utility functions with detailed docstrings for better understanding and maintainability.
2025-08-14 09:48:19 -03:00
vitor-aignosi
bfb633c9d7 SIENTIAPDE-1184
docs: enhance docstrings in Formatters class

- Improved clarity and consistency of docstrings across multiple methods in the Formatters class.
- Added detailed descriptions for method arguments and return values to facilitate better understanding and usage.
- Ensured that all public methods now have comprehensive documentation, enhancing maintainability and readability.
2025-08-14 09:29:48 -03:00
vitor-aignosi
36c34d3208 SIENTIAPDE-1184
refactor: consolidate report handling in Formatters class

- Introduced a new method, manage_and_send_report, to streamline success and error report generation.
- Improved code readability by reducing duplication in report handling logic.
- Maintained existing functionality while enhancing the structure of report messages.
2025-08-14 09:26:10 -03:00
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
26a31a39d6 Merge branch 'SIENTIAPDE-1184-investigar-bugs-detectados-no-grafana' of github.com:Aignosi/sientia-dataops-orchestrator_temporal into SIENTIAPDE-1184-investigar-bugs-detectados-no-grafana 2025-08-14 08:50:24 -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
07af9e1ee3 Merge branch 'main' into SIENTIAPDE-1184-investigar-bugs-detectados-no-grafana 2025-08-14 07:36:43 -03:00
Bruno Domingues
da603d1b1f Merge pull request #13 from Aignosi/SIENTIAPDE-1174-mapear-e-implementar-metricas-a-serem-criadas
Sientiapde 1174 mapear e implementar metricas a serem criadas
2025-08-13 16:34:35 -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
8537eb515b SIENTIAPDE-1184
chore: update image tag in values.yaml from 0.3.2 to 0.4.0 and change GITHUB_BRANCH to SIENTIAPDE-1184-investigar-bugs-detectados-no-grafana
2025-08-12 13:42:30 -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
afaf017340 SIENTIAPDE-1174
SIENTIAPDE-1174
chore: update sientia-dataops-library dependency version from 1.3.7 to 1.3.8 in requirements.txt

- Removed unused test group from test_formatters.py.
- Added new test case for handling scenarios with no log reports in test_alerts.py.
- Added new test case for handling scenarios with no groups in test_reports.py.
2025-08-05 13:51:34 -03:00
vitor-aignosi
bc81555ad0 Merge branch 'main' into SIENTIAPDE-1174-mapear-e-implementar-metricas-a-serem-criadas 2025-08-05 12:16:22 -03:00
vitor-aignosi
68d4998ce7 SIENTIAPDE-1174
chore: increment image tag in values.yaml from 0.3.1 to 0.3.2 for version update
2025-08-04 15:27:40 -03:00
vitor-aignosi
4f4bc9e7ec SIENTIAPDE-1174
chore: update helm upgrade command in values.yaml to reflect version change

- Modified the helm upgrade command in values.yaml to use version 0.4.0 instead of 0.4.0-uat for consistency in deployment.
2025-08-04 10:01:14 -03:00
Bruno Domingues
1b7603ae70 Merge pull request #12 from Aignosi/SIENTIAPDE-1172-criar-pipeline-de-alertas-orquestrador
Sientiapde 1172 criar pipeline de alertas orquestrador
2025-08-04 10:00:42 -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
0cda2bcb05 SIENTIAPDE-1172
Update dependencies in requirements.txt and increment image tag in values.yaml

- Updated sientia-dataops-library dependency version from 1.3.4 to 1.3.5.
- Changed image tag in values.yaml from 0.2.5 to 0.2.7 for the latest image version.
2025-07-29 13:19:54 -03:00
vitor-aignosi
dd22e8a553 SIENTIAPDE-1172
Update values.yaml and tests to incorporate mail_type parameter for notification handling

- Changed GITHUB_BRANCH in values.yaml to reflect the new alert pipeline.
- Added 'mail_type' parameter to various test cases in SlotManager and notification workflows to enhance notification specificity and tracking.
- Ensured consistency in test data structures across multiple test functions.
2025-07-29 12:50:03 -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
b0171614aa Merge pull request #11 from Aignosi/SIENTIAPDE-1171-criar-pipeline-de-retreino-laborious
Sientiapde 1171 criar pipeline de retreino laborious
2025-07-24 11:47:39 -03:00
vitor-aignosi
92f623ca90 Merge branch 'main' into SIENTIAPDE-1171-criar-pipeline-de-retreino-laborious 2025-07-24 10:26:55 -03:00
Matheus Demoner
6ba85a755a Merge pull request #10 from Aignosi/SIENTIAPDE-1166-alterar-orquestrador-para-criar-collections-com-ttl-no-mongo]
feat: add TTL index functionality to MongoDB activities and update requirements
2025-07-24 10:06:25 -03:00