2026-05-03 03:41:08,517 - main - INFO - === Logging system initialized ===
2026-05-03 03:41:08,518 - main - INFO - Log file: logs/app_20260503_034108.log
2026-05-03 03:41:08,518 - main - INFO - Log level: INFO
2026-05-03 03:41:08,518 - main - INFO - Timestamp: 20260503_034108
2026-05-03 03:41:10,015 - main - INFO - Included router: routers.admin_dashboard.router
2026-05-03 03:41:10,210 - main - INFO - Included router: routers.admin_users.router
2026-05-03 03:41:10,372 - main - INFO - Included router: routers.agent_availability.router
2026-05-03 03:41:34,468 - main - INFO - Included router: routers.ai_ticket_summary.router
2026-05-03 03:41:34,661 - main - INFO - Included router: routers.aihub.router
2026-05-03 03:41:34,876 - main - INFO - Included router: routers.audit_log.router
2026-05-03 03:41:34,934 - main - INFO - Included router: routers.auth.router
2026-05-03 03:41:34,977 - main - INFO - Included router: routers.cache_settings.router
2026-05-03 03:41:35,125 - main - INFO - Included router: routers.carts.router
2026-05-03 03:41:35,211 - main - INFO - Included router: routers.chat_analytics_daily.router
2026-05-03 03:41:35,282 - main - INFO - Included router: routers.chat_attachments.router
2026-05-03 03:41:35,438 - main - INFO - Included router: routers.chat_branding.router
2026-05-03 03:41:35,504 - main - INFO - Included router: routers.chat_branding_api.router
2026-05-03 03:41:35,683 - main - INFO - Included router: routers.chat_conversations.router
2026-05-03 03:41:35,931 - main - INFO - Included router: routers.chat_messages.router
2026-05-03 03:41:36,076 - main - INFO - Included router: routers.chat_routing_rules.router
2026-05-03 03:41:36,160 - main - INFO - Included router: routers.contact.router
2026-05-03 03:41:37,205 - main - INFO - Included router: routers.contact_inquiries.router
2026-05-03 03:41:38,065 - main - INFO - Included router: routers.ecom_checkout.router
2026-05-03 03:41:38,151 - main - INFO - Included router: routers.health.router
2026-05-03 03:41:38,248 - main - INFO - Included router: routers.kb_article_feedback.router
2026-05-03 03:41:38,384 - main - INFO - Included router: routers.kb_articles.router
2026-05-03 03:41:38,494 - main - INFO - Included router: routers.local_auth.router
2026-05-03 03:41:38,782 - main - INFO - Included router: routers.notification_preferences.router
2026-05-03 03:41:38,961 - main - INFO - Included router: routers.notifications.router
2026-05-03 03:41:38,992 - main - INFO - Included router: routers.notifications_extras.router
2026-05-03 03:41:39,410 - main - INFO - Included router: routers.oauth.router
2026-05-03 03:41:39,797 - main - INFO - Included router: routers.order_items.router
2026-05-03 03:41:39,920 - main - INFO - Included router: routers.orders.router
2026-05-03 03:41:39,970 - main - INFO - Included router: routers.password_reset.router
2026-05-03 03:41:40,174 - main - INFO - Included router: routers.plans.router
2026-05-03 03:41:40,316 - main - INFO - Included router: routers.product_categories.router
2026-05-03 03:41:40,422 - main - INFO - Included router: routers.product_reviews.router
2026-05-03 03:41:40,589 - main - INFO - Included router: routers.products.router
2026-05-03 03:41:40,665 - main - INFO - Included router: routers.role_management.router
2026-05-03 03:41:40,960 - main - INFO - Included router: routers.service_testimonials.router
2026-05-03 03:41:41,020 - main - INFO - Included router: routers.settings.router
2026-05-03 03:41:42,222 - main - INFO - Included router: routers.site_settings.router
2026-05-03 03:41:42,339 - main - INFO - Included router: routers.smtp_settings.router
2026-05-03 03:41:42,544 - main - INFO - Included router: routers.storage.router
2026-05-03 03:41:42,850 - main - INFO - Included router: routers.support_chat.router
2026-05-03 03:41:42,976 - main - INFO - Included router: routers.support_departments.router
2026-05-03 03:41:43,101 - main - INFO - Included router: routers.support_seats.router
2026-05-03 03:41:43,167 - main - INFO - Included router: routers.ticket_notifications_sync.router
2026-05-03 03:41:43,283 - main - INFO - Included router: routers.ticket_summaries.router
2026-05-03 03:41:43,455 - main - INFO - Included router: routers.ticket_sync_states.router
2026-05-03 03:41:43,521 - main - INFO - Included router: routers.user.router
2026-05-03 03:41:43,612 - main - INFO - Included router: routers.user_profiles.router
2026-05-03 03:41:43,693 - main - INFO - Included router: routers.user_roles.router
2026-05-03 03:41:43,941 - main - INFO - Included router: routers.visitor_monitor.router
2026-05-03 03:41:44,117 - main - INFO - Included router: routers.visitor_tracking.router
2026-05-03 03:41:44,135 - main - INFO - Included router: routers.whmcs.router
2026-05-03 03:41:44,232 - main - INFO - Included router: routers.whmcs_admin.router
2026-05-03 03:41:44,325 - main - INFO - Included router: routers.whmcs_extra.router
2026-05-03 03:41:44,326 - main - INFO - === Application startup initiated ===
2026-05-03 03:41:44,326 - services.database - INFO - Ignore creating tables
2026-05-03 03:41:44,326 - services.mock_data - INFO - Ignore initialize data
2026-05-03 03:41:44,327 - services.auth - INFO - Ignore initialize admin
2026-05-03 03:41:44,327 - main - INFO - === Application startup completed successfully ===
2026-05-03 03:41:56,876 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:41:56,877 - core.database - WARNING - Database session maker not available, attempting lazy initialization...
2026-05-03 03:41:56,877 - core.database - WARNING - Database not initialized, attempting lazy initialization...
2026-05-03 03:41:56,877 - core.database - INFO - Starting database initialization...
2026-05-03 03:41:56,877 - core.config - DEBUG - Read dynamic attribute database_url from environment variable DATABASE_URL
2026-05-03 03:41:56,877 - core.database - INFO - Normalizing database URL for async compatibility...
2026-05-03 03:41:56,878 - core.database - INFO - Creating async database engine...
2026-05-03 03:41:56,878 - core.database - INFO - Using QueuePool with connection pooling for non-Lambda environment
2026-05-03 03:41:56,916 - core.database - INFO - Database engine created successfully
2026-05-03 03:41:56,916 - core.database - INFO - Creating async session maker...
2026-05-03 03:41:56,916 - core.database - INFO - Async session maker created successfully
2026-05-03 03:41:56,917 - core.database - INFO - Database connection initialized successfully
2026-05-03 03:41:56,917 - core.database - DEBUG - [DB_OP] Starting create_tables
2026-05-03 03:41:56,917 - core.database - INFO - 🔧 Starting table creation...
2026-05-03 03:41:56,978 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:41:56,978 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0003s
2026-05-03 03:41:57,080 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:41:57,081 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0003s
2026-05-03 03:41:57,081 - routers.site_settings - DEBUG - Querying site_settingss: query={"key":"branding"}, sort=None, skip=0, limit=1, fields=None
2026-05-03 03:41:57,083 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:41:57,084 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0002s
2026-05-03 03:41:57,084 - routers.site_settings - DEBUG - Querying site_settingss: query={"key":"general"}, sort=None, skip=0, limit=1, fields=None
2026-05-03 03:41:57,118 - core.config - DEBUG - Read dynamic attribute jwt_secret_key from environment variable JWT_SECRET_KEY
2026-05-03 03:41:57,118 - core.config - DEBUG - Read dynamic attribute jwt_algorithm from environment variable JWT_ALGORITHM
2026-05-03 03:41:57,344 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:41:57,702 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:41:57,752 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:41:57,752 - core.config - DEBUG - Read dynamic attribute oss_service_url from environment variable OSS_SERVICE_URL
2026-05-03 03:41:57,753 - core.config - DEBUG - Read dynamic attribute oss_api_key from environment variable OSS_API_KEY
2026-05-03 03:41:59,810 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-05-03 03:41:59,817 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33ea85fc10>
2026-05-03 03:41:59,818 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e875acc0> server_hostname='atoms.dev' timeout=120.0
2026-05-03 03:41:59,826 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33ea8bfdc0>
2026-05-03 03:41:59,826 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-05-03 03:41:59,826 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:41:59,826 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-05-03 03:41:59,827 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:41:59,827 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-05-03 03:41:59,959 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 03 May 2026 10:41:59 GMT'), (b'Content-Type', b'application/json; charset=utf-8'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Access-Control-Allow-Headers', b'Origin, Content-Type, Accept, Authorization'), (b'Access-Control-Allow-Methods', b'GET, POST, PUT, DELETE, OPTIONS'), (b'Access-Control-Allow-Origin', b'*'), (b'Access-Control-Max-Age', b'86400'), (b'X-Request-Id', b'ebb7e77478d4d4c038586dc9c08e2369'), (b'X-Trace-Id', b'2cc78fa7d0f1451cae38dcbba2d9ce5a'), (b'Content-Security-Policy', b"frame-ancestors 'self' https://atoms.dev"), (b'Strict-Transport-Security', b'max-age=63072000; includeSubDomains; preload'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'Referrer-Policy', b'strict-origin-when-cross-origin'), (b'cf-cache-status', b'DYNAMIC'), (b'Content-Encoding', b'gzip'), (b'Server', b'cloudflare'), (b'CF-RAY', b'9f5ea80ced6f2f33-LAX')])
2026-05-03 03:41:59,960 - httpx - INFO - HTTP Request: GET https://atoms.dev/api/v1/infra/client/oss/buckets/user-avatars/objects "HTTP/1.1 200 OK"
2026-05-03 03:41:59,960 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-05-03 03:41:59,961 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:41:59,961 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:41:59,961 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:41:59,961 - httpcore.connection - DEBUG - close.started
2026-05-03 03:41:59,961 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:42:00,605 - core.database - DEBUG - [DB_OP] Database session cleanup after 3.6272s
2026-05-03 03:42:00,736 - routers.site_settings - DEBUG - Found 0 site_settingss
2026-05-03 03:42:00,737 - core.database - DEBUG - [DB_OP] Database session cleanup after 3.6563s
2026-05-03 03:42:00,737 - routers.site_settings - DEBUG - Found 0 site_settingss
2026-05-03 03:42:00,738 - core.database - DEBUG - [DB_OP] Database session cleanup after 3.6543s
2026-05-03 03:42:03,103 - core.database - INFO - Tables initialized successfully
2026-05-03 03:42:03,103 - core.database - DEBUG - [DB_OP] Create tables completed in 6.1863s
2026-05-03 03:42:03,165 - core.database - INFO - Lazy database initialization completed successfully
2026-05-03 03:42:03,166 - core.database - DEBUG - [DB_OP] Database session created successfully in 6.2894s
2026-05-03 03:42:03,166 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:42:04,186 - core.database - DEBUG - [DB_OP] Database session cleanup after 7.3095s
2026-05-03 03:42:56,727 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:42:56,727 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0004s
2026-05-03 03:42:56,730 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:42:56,730 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0004s
2026-05-03 03:42:56,731 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:42:57,168 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.4419s
2026-05-03 03:42:57,619 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.8894s
2026-05-03 03:43:56,696 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:43:56,696 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0004s
2026-05-03 03:43:56,697 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:43:56,718 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:43:56,719 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0006s
2026-05-03 03:43:57,036 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3178s
2026-05-03 03:43:57,601 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.9050s
2026-05-03 03:44:56,689 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:44:56,690 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0005s
2026-05-03 03:44:56,691 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:44:56,715 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:44:56,715 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0005s
2026-05-03 03:44:57,094 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3793s
2026-05-03 03:44:57,513 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.8243s
2026-05-03 03:45:53,901 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:45:53,902 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0004s
2026-05-03 03:45:53,902 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:45:53,903 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:45:53,983 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:45:53,983 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0004s
2026-05-03 03:45:53,986 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:45:53,986 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0002s
2026-05-03 03:45:53,987 - routers.site_settings - DEBUG - Querying site_settingss: query={"key":"branding"}, sort=None, skip=0, limit=1, fields=None
2026-05-03 03:45:53,990 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:45:53,990 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0002s
2026-05-03 03:45:53,990 - routers.site_settings - DEBUG - Querying site_settingss: query={"key":"general"}, sort=None, skip=0, limit=1, fields=None
2026-05-03 03:45:54,176 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:45:54,199 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:45:54,226 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-05-03 03:45:54,242 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e83e7a60>
2026-05-03 03:45:54,242 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e859a240> server_hostname='atoms.dev' timeout=120.0
2026-05-03 03:45:54,249 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e83e7760>
2026-05-03 03:45:54,250 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-05-03 03:45:54,250 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:45:54,250 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-05-03 03:45:54,250 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:45:54,251 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-05-03 03:45:54,362 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3789s
2026-05-03 03:45:54,363 - routers.site_settings - DEBUG - Found 0 site_settingss
2026-05-03 03:45:54,364 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3775s
2026-05-03 03:45:54,366 - routers.site_settings - DEBUG - Found 0 site_settingss
2026-05-03 03:45:54,366 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3769s
2026-05-03 03:45:54,425 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 03 May 2026 10:45:54 GMT'), (b'Content-Type', b'application/json; charset=utf-8'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Access-Control-Allow-Headers', b'Origin, Content-Type, Accept, Authorization'), (b'Access-Control-Allow-Methods', b'GET, POST, PUT, DELETE, OPTIONS'), (b'Access-Control-Allow-Origin', b'*'), (b'Access-Control-Max-Age', b'86400'), (b'X-Request-Id', b'46fc4ddd47e36034a187c5aa18bfae55'), (b'X-Trace-Id', b'08704790b61846719a7d5a886e42cf82'), (b'Content-Security-Policy', b"frame-ancestors 'self' https://atoms.dev"), (b'Strict-Transport-Security', b'max-age=63072000; includeSubDomains; preload'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'Referrer-Policy', b'strict-origin-when-cross-origin'), (b'cf-cache-status', b'DYNAMIC'), (b'Content-Encoding', b'gzip'), (b'Server', b'cloudflare'), (b'CF-RAY', b'9f5eadc61c9c398e-LAX')])
2026-05-03 03:45:54,425 - httpx - INFO - HTTP Request: GET https://atoms.dev/api/v1/infra/client/oss/buckets/user-avatars/objects "HTTP/1.1 200 OK"
2026-05-03 03:45:54,425 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-05-03 03:45:54,426 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:45:54,426 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:45:54,426 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:45:54,426 - httpcore.connection - DEBUG - close.started
2026-05-03 03:45:54,427 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:45:54,548 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.6467s
2026-05-03 03:46:01,564 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:46:01,564 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0003s
2026-05-03 03:46:01,566 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:46:01,566 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0003s
2026-05-03 03:46:01,566 - routers.site_settings - DEBUG - Querying site_settingss: query={"key":"general"}, sort=None, skip=0, limit=1, fields=None
2026-05-03 03:46:01,568 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:46:01,569 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:46:01,569 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0003s
2026-05-03 03:46:01,569 - routers.site_settings - DEBUG - Querying site_settingss: query={"key":"branding"}, sort=None, skip=0, limit=1, fields=None
2026-05-03 03:46:01,827 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:46:01,879 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3147s
2026-05-03 03:46:01,943 - routers.site_settings - DEBUG - Found 0 site_settingss
2026-05-03 03:46:01,943 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3774s
2026-05-03 03:46:01,943 - routers.site_settings - DEBUG - Found 0 site_settingss
2026-05-03 03:46:01,944 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3756s
2026-05-03 03:46:02,185 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:46:02,185 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:46:02,185 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0002s
2026-05-03 03:46:02,209 - httpcore.connection - DEBUG - connect_tcp.started host='client.doiteasy.net' port=443 local_address=None timeout=10.0 socket_options=None
2026-05-03 03:46:02,339 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:46:02,340 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:46:02,340 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0003s
2026-05-03 03:46:02,548 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e83e6020>
2026-05-03 03:46:02,549 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e859aa40> server_hostname='client.doiteasy.net' timeout=10.0
2026-05-03 03:46:02,723 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e83e6170>
2026-05-03 03:46:02,724 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'POST']>
2026-05-03 03:46:02,724 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:46:02,724 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'POST']>
2026-05-03 03:46:02,725 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3854s
2026-05-03 03:46:02,725 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:46:02,725 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'POST']>
2026-05-03 03:46:03,064 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 403, b'Forbidden', [(b'Server', b'nginx'), (b'Date', b'Sun, 03 May 2026 10:46:02 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Expires', b'Thu, 19 Nov 1981 08:52:00 GMT'), (b'Cache-Control', b'no-store, no-cache, must-revalidate'), (b'Pragma', b'no-cache'), (b'Set-Cookie', b'WHMCShaXcqDDHD9SP=b36b1928677737238a5559fc4c6ab581; path=/; secure; HttpOnly'), (b'X-Content-Type-Options', b'nosniff'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Referrer-Policy', b'strict-origin-when-cross-origin'), (b'X-XSS-Protection', b'1; mode=block')])
2026-05-03 03:46:03,064 - httpx - INFO - HTTP Request: POST https://client.doiteasy.net/includes/api.php "HTTP/1.1 403 Forbidden"
2026-05-03 03:46:03,065 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'POST']>
2026-05-03 03:46:03,065 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:46:03,065 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:46:03,065 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:46:03,065 - httpcore.connection - DEBUG - close.started
2026-05-03 03:46:03,066 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:46:03,066 - services.whmcs - ERROR - WHMCS API returned HTTP 403 for action GetClients (cf-ray=None server=nginx): {"result":"error","message":"Invalid IP 103.234.62.212"}
2026-05-03 03:46:03,117 - services.whmcs - WARNING - call_whmcs_safe: swallowing WHMCS error for action GetClients: Billing system rejected the request: Invalid IP 103.234.62.212. Please contact the administrator to whitelist the portal's outbound IP in the WHMCS API IP access list.
2026-05-03 03:46:03,143 - httpcore.connection - DEBUG - connect_tcp.started host='client.doiteasy.net' port=443 local_address=None timeout=10.0 socket_options=None
2026-05-03 03:46:03,319 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e83e46a0>
2026-05-03 03:46:03,319 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e859a0c0> server_hostname='client.doiteasy.net' timeout=10.0
2026-05-03 03:46:03,496 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33ea890550>
2026-05-03 03:46:03,496 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'POST']>
2026-05-03 03:46:03,497 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:46:03,497 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'POST']>
2026-05-03 03:46:03,497 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:46:03,497 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'POST']>
2026-05-03 03:46:03,827 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 403, b'Forbidden', [(b'Server', b'nginx'), (b'Date', b'Sun, 03 May 2026 10:46:03 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Expires', b'Thu, 19 Nov 1981 08:52:00 GMT'), (b'Cache-Control', b'no-store, no-cache, must-revalidate'), (b'Pragma', b'no-cache'), (b'Set-Cookie', b'WHMCShaXcqDDHD9SP=d240f5a9cecf30198d4c9bba02addd0d; path=/; secure; HttpOnly'), (b'X-Content-Type-Options', b'nosniff'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Referrer-Policy', b'strict-origin-when-cross-origin'), (b'X-XSS-Protection', b'1; mode=block')])
2026-05-03 03:46:03,827 - httpx - INFO - HTTP Request: POST https://client.doiteasy.net/includes/api.php "HTTP/1.1 403 Forbidden"
2026-05-03 03:46:03,827 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'POST']>
2026-05-03 03:46:03,828 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:46:03,828 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:46:03,828 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:46:03,829 - httpcore.connection - DEBUG - close.started
2026-05-03 03:46:03,829 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:46:03,829 - services.whmcs - ERROR - WHMCS API returned HTTP 403 for action GetOrders (cf-ray=None server=nginx): {"result":"error","message":"Invalid IP 103.234.62.212"}
2026-05-03 03:46:03,829 - services.whmcs - WARNING - call_whmcs_safe: swallowing WHMCS error for action GetOrders: Billing system rejected the request: Invalid IP 103.234.62.212. Please contact the administrator to whitelist the portal's outbound IP in the WHMCS API IP access list.
2026-05-03 03:46:03,867 - httpcore.connection - DEBUG - connect_tcp.started host='client.doiteasy.net' port=443 local_address=None timeout=10.0 socket_options=None
2026-05-03 03:46:04,202 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e83e4880>
2026-05-03 03:46:04,202 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e859b140> server_hostname='client.doiteasy.net' timeout=10.0
2026-05-03 03:46:04,374 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33ea890400>
2026-05-03 03:46:04,374 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'POST']>
2026-05-03 03:46:04,375 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:46:04,375 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'POST']>
2026-05-03 03:46:04,375 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:46:04,375 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'POST']>
2026-05-03 03:46:04,701 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 403, b'Forbidden', [(b'Server', b'nginx'), (b'Date', b'Sun, 03 May 2026 10:46:04 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Expires', b'Thu, 19 Nov 1981 08:52:00 GMT'), (b'Cache-Control', b'no-store, no-cache, must-revalidate'), (b'Pragma', b'no-cache'), (b'Set-Cookie', b'WHMCShaXcqDDHD9SP=1c0471a61d23ae7dbbb17800b8672270; path=/; secure; HttpOnly'), (b'X-Content-Type-Options', b'nosniff'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Referrer-Policy', b'strict-origin-when-cross-origin'), (b'X-XSS-Protection', b'1; mode=block')])
2026-05-03 03:46:04,701 - httpx - INFO - HTTP Request: POST https://client.doiteasy.net/includes/api.php "HTTP/1.1 403 Forbidden"
2026-05-03 03:46:04,702 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'POST']>
2026-05-03 03:46:04,702 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:46:04,702 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:46:04,702 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:46:04,703 - httpcore.connection - DEBUG - close.started
2026-05-03 03:46:04,703 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:46:04,703 - services.whmcs - ERROR - WHMCS API returned HTTP 403 for action GetTickets (cf-ray=None server=nginx): {"result":"error","message":"Invalid IP 103.234.62.212"}
2026-05-03 03:46:04,703 - services.whmcs - WARNING - call_whmcs_safe: swallowing WHMCS error for action GetTickets: Billing system rejected the request: Invalid IP 103.234.62.212. Please contact the administrator to whitelist the portal's outbound IP in the WHMCS API IP access list.
2026-05-03 03:46:04,742 - httpcore.connection - DEBUG - connect_tcp.started host='client.doiteasy.net' port=443 local_address=None timeout=10.0 socket_options=None
2026-05-03 03:46:04,919 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e85c37c0>
2026-05-03 03:46:04,919 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e859a640> server_hostname='client.doiteasy.net' timeout=10.0
2026-05-03 03:46:05,094 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33ea892260>
2026-05-03 03:46:05,095 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'POST']>
2026-05-03 03:46:05,095 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:46:05,095 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'POST']>
2026-05-03 03:46:05,096 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:46:05,097 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'POST']>
2026-05-03 03:46:05,393 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 403, b'Forbidden', [(b'Server', b'nginx'), (b'Date', b'Sun, 03 May 2026 10:46:05 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Expires', b'Thu, 19 Nov 1981 08:52:00 GMT'), (b'Cache-Control', b'no-store, no-cache, must-revalidate'), (b'Pragma', b'no-cache'), (b'Set-Cookie', b'WHMCShaXcqDDHD9SP=4d3422fd4c1d90d4dd486596f16d67a3; path=/; secure; HttpOnly'), (b'X-Content-Type-Options', b'nosniff'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Referrer-Policy', b'strict-origin-when-cross-origin'), (b'X-XSS-Protection', b'1; mode=block')])
2026-05-03 03:46:05,394 - httpx - INFO - HTTP Request: POST https://client.doiteasy.net/includes/api.php "HTTP/1.1 403 Forbidden"
2026-05-03 03:46:05,394 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'POST']>
2026-05-03 03:46:05,394 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:46:05,394 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:46:05,395 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:46:05,395 - httpcore.connection - DEBUG - close.started
2026-05-03 03:46:05,395 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:46:05,395 - services.whmcs - ERROR - WHMCS API returned HTTP 403 for action GetInvoices (cf-ray=None server=nginx): {"result":"error","message":"Invalid IP 103.234.62.212"}
2026-05-03 03:46:05,395 - services.whmcs - WARNING - call_whmcs_safe: swallowing WHMCS error for action GetInvoices: Billing system rejected the request: Invalid IP 103.234.62.212. Please contact the administrator to whitelist the portal's outbound IP in the WHMCS API IP access list.
2026-05-03 03:46:05,418 - httpcore.connection - DEBUG - connect_tcp.started host='client.doiteasy.net' port=443 local_address=None timeout=10.0 socket_options=None
2026-05-03 03:46:05,589 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e85c3490>
2026-05-03 03:46:05,589 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e859b3c0> server_hostname='client.doiteasy.net' timeout=10.0
2026-05-03 03:46:05,764 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33ea890fa0>
2026-05-03 03:46:05,765 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'POST']>
2026-05-03 03:46:05,765 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:46:05,765 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'POST']>
2026-05-03 03:46:05,766 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:46:05,766 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'POST']>
2026-05-03 03:46:06,090 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 403, b'Forbidden', [(b'Server', b'nginx'), (b'Date', b'Sun, 03 May 2026 10:46:06 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Expires', b'Thu, 19 Nov 1981 08:52:00 GMT'), (b'Cache-Control', b'no-store, no-cache, must-revalidate'), (b'Pragma', b'no-cache'), (b'Set-Cookie', b'WHMCShaXcqDDHD9SP=7a02f612e7f0d5853fbc8ab29feedeef; path=/; secure; HttpOnly'), (b'X-Content-Type-Options', b'nosniff'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Referrer-Policy', b'strict-origin-when-cross-origin'), (b'X-XSS-Protection', b'1; mode=block')])
2026-05-03 03:46:06,091 - httpx - INFO - HTTP Request: POST https://client.doiteasy.net/includes/api.php "HTTP/1.1 403 Forbidden"
2026-05-03 03:46:06,091 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'POST']>
2026-05-03 03:46:06,091 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:46:06,092 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:46:06,092 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:46:06,092 - httpcore.connection - DEBUG - close.started
2026-05-03 03:46:06,092 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:46:06,092 - services.whmcs - ERROR - WHMCS API returned HTTP 403 for action GetProducts (cf-ray=None server=nginx): {"result":"error","message":"Invalid IP 103.234.62.212"}
2026-05-03 03:46:06,093 - services.whmcs - WARNING - call_whmcs_safe: swallowing WHMCS error for action GetProducts: Billing system rejected the request: Invalid IP 103.234.62.212. Please contact the administrator to whitelist the portal's outbound IP in the WHMCS API IP access list.
2026-05-03 03:46:06,094 - core.database - DEBUG - [DB_OP] Database session cleanup after 3.9089s
2026-05-03 03:46:09,619 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:46:09,670 - httpcore.connection - DEBUG - connect_tcp.started host='client.doiteasy.net' port=443 local_address=None timeout=15.0 socket_options=None
2026-05-03 03:46:09,672 - httpcore.connection - DEBUG - connect_tcp.started host='api.ipify.org' port=443 local_address=None timeout=5.0 socket_options=None
2026-05-03 03:46:09,681 - core.auth - DEBUG - Authentication token validated for user hash: f8ef80bf
2026-05-03 03:46:09,681 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:46:09,681 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0005s
2026-05-03 03:46:09,712 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e85c3670>
2026-05-03 03:46:09,712 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e840b940> server_hostname='api.ipify.org' timeout=5.0
2026-05-03 03:46:09,718 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e85c3a00>
2026-05-03 03:46:09,718 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-05-03 03:46:09,719 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:46:09,719 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-05-03 03:46:09,719 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:46:09,719 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-05-03 03:46:09,787 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 03 May 2026 10:46:09 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'23'), (b'Connection', b'keep-alive'), (b'Server', b'cloudflare'), (b'Vary', b'Origin'), (b'cf-cache-status', b'DYNAMIC'), (b'CF-RAY', b'9f5eae26b946cc16-LAX')])
2026-05-03 03:46:09,787 - httpx - INFO - HTTP Request: GET https://api.ipify.org?format=json "HTTP/1.1 200 OK"
2026-05-03 03:46:09,787 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-05-03 03:46:09,787 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:46:09,788 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:46:09,788 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:46:09,788 - httpcore.connection - DEBUG - close.started
2026-05-03 03:46:09,788 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:46:10,014 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e85c1660>
2026-05-03 03:46:10,015 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f33e859b540> server_hostname='client.doiteasy.net' timeout=15.0
2026-05-03 03:46:10,065 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3840s
2026-05-03 03:46:10,189 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f33e85c36d0>
2026-05-03 03:46:10,190 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'POST']>
2026-05-03 03:46:10,190 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-05-03 03:46:10,190 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'POST']>
2026-05-03 03:46:10,191 - httpcore.http11 - DEBUG - send_request_body.complete
2026-05-03 03:46:10,191 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'POST']>
2026-05-03 03:46:10,500 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 403, b'Forbidden', [(b'Server', b'nginx'), (b'Date', b'Sun, 03 May 2026 10:46:10 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'Expires', b'Thu, 19 Nov 1981 08:52:00 GMT'), (b'Cache-Control', b'no-store, no-cache, must-revalidate'), (b'Pragma', b'no-cache'), (b'Set-Cookie', b'WHMCShaXcqDDHD9SP=5c7692ba374f02ba716ba23600cf97c7; path=/; secure; HttpOnly'), (b'X-Content-Type-Options', b'nosniff'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Referrer-Policy', b'strict-origin-when-cross-origin'), (b'X-XSS-Protection', b'1; mode=block')])
2026-05-03 03:46:10,500 - httpx - INFO - HTTP Request: POST https://client.doiteasy.net/includes/api.php "HTTP/1.1 403 Forbidden"
2026-05-03 03:46:10,501 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'POST']>
2026-05-03 03:46:10,501 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-05-03 03:46:10,501 - httpcore.http11 - DEBUG - response_closed.started
2026-05-03 03:46:10,501 - httpcore.http11 - DEBUG - response_closed.complete
2026-05-03 03:46:10,501 - httpcore.connection - DEBUG - close.started
2026-05-03 03:46:10,502 - httpcore.connection - DEBUG - close.complete
2026-05-03 03:46:23,761 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:46:23,762 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0005s
2026-05-03 03:46:24,075 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3140s
2026-05-03 03:46:58,557 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:46:58,558 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0004s
2026-05-03 03:46:58,875 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3178s
2026-05-03 03:47:02,011 - core.database - DEBUG - [DB_OP] Starting get_db session creation
2026-05-03 03:47:02,011 - core.database - DEBUG - [DB_OP] Database session created successfully in 0.0004s
2026-05-03 03:47:02,327 - core.database - DEBUG - [DB_OP] Database session cleanup after 0.3163s
2026-05-03 03:47:34,983 - services.database - DEBUG - [DB_OP] Starting database close
2026-05-03 03:47:35,246 - core.database - INFO - Database connection closed and engine disposed
2026-05-03 03:47:35,246 - services.database - INFO - Database connections closed
2026-05-03 03:47:35,246 - services.database - DEBUG - [DB_OP] Database close completed in 0.2638s
