diff --git a/app.py b/app.py index 98bbdf0..5379020 100644 --- a/app.py +++ b/app.py @@ -13,6 +13,7 @@ import click from utils import timeago from extensions import db, login_manager, csrf from utils.email_templates import create_default_templates +from datetime import datetime # Load environment variables load_dotenv() @@ -58,14 +59,18 @@ def create_app(): try: # Check database connection db.session.execute('SELECT 1') + db.session.commit() return jsonify({ 'status': 'healthy', - 'database': 'connected' + 'database': 'connected', + 'timestamp': datetime.utcnow().isoformat() }), 200 except Exception as e: + app.logger.error(f"Health check failed: {str(e)}") return jsonify({ 'status': 'unhealthy', - 'error': str(e) + 'error': str(e), + 'timestamp': datetime.utcnow().isoformat() }), 500 # Initialize routes diff --git a/docker-compose.yml b/docker-compose.yml index 9e7c3e8..d0c2fbc 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -22,7 +22,8 @@ services: test: ["CMD", "curl", "-f", "http://localhost:5000/health"] interval: 30s timeout: 10s - retries: 3 + retries: 5 + start_period: 40s deploy: resources: limits: