* feat: implement webhook logging to MongoDB and fallback to database (#7887)
- Added a new function `save_webhook_log` to log webhook requests and responses to MongoDB, with a fallback to the database if the MongoDB save fails.
- Updated the `webhook_send_task` to utilize the new logging function.
- Modified the `get_webhook_logs_queryset` to order logs by creation date and adjusted the chunk size for iteration.
* refactor: clean up log data formatting in save_webhook_log function
* fix: update retry_count type in save_webhook_log function
* Refactor and extend cleanup tasks for logs and versions
- Consolidate API log deletion into cleanup_task.py - Add tasks to
delete old email logs, page versions, and issue description versions -
Update Celery schedule and imports for new tasks
* chore: update cleanup task with mongo changes
* fix: update log deletion task name for clarity
* fix: enhance MongoDB archival error handling in cleanup task
- Added a parameter to check MongoDB availability in the flush_to_mongo_and_delete function.
- Implemented error logging for MongoDB archival failures.
- Updated calls to flush_to_mongo_and_delete to include the new parameter.
* fix: correct parameter name in cleanup task function call
- Updated the parameter name from 'mode' to 'model' in the process_cleanup_task function to ensure consistency and clarity in the code.
* fix: improve MongoDB connection parameter handling in MongoConnection class
- Replaced direct access to settings with getattr for MONGO_DB_URL and MONGO_DB_DATABASE to enhance robustness.
- Added warning logging for missing MongoDB connection parameters.