2026-04-28 08:43:51,660 - main - INFO - === Logging system initialized ===
2026-04-28 08:43:51,660 - main - INFO - Log file: logs/app_20260428_084351.log
2026-04-28 08:43:51,660 - main - INFO - Log level: INFO
2026-04-28 08:43:51,660 - main - INFO - Timestamp: 20260428_084351
2026-04-28 08:43:52,820 - main - INFO - Included router: routers.aihub.router
2026-04-28 08:43:52,844 - main - INFO - Included router: routers.auth.router
2026-04-28 08:43:52,848 - main - INFO - Included router: routers.health.router
2026-04-28 08:43:52,868 - main - INFO - Included router: routers.settings.router
2026-04-28 08:43:52,904 - main - INFO - Included router: routers.storage.router
2026-04-28 08:43:52,914 - main - INFO - Included router: routers.user.router
2026-04-28 08:43:52,956 - main - INFO - Included router: routers.user_profiles.router
2026-04-28 08:43:52,957 - main - INFO - === Application startup initiated ===
2026-04-28 08:43:52,957 - services.database - INFO - Ignore creating tables
2026-04-28 08:43:52,957 - services.mock_data - INFO - Ignore initialize data
2026-04-28 08:43:52,957 - services.auth - INFO - Ignore initialize admin
2026-04-28 08:43:52,957 - main - INFO - === Application startup completed successfully ===
2026-04-28 08:44:01,898 - core.config - DEBUG - Read dynamic attribute jwt_secret_key from environment variable JWT_SECRET_KEY
2026-04-28 08:44:01,898 - core.config - DEBUG - Read dynamic attribute jwt_algorithm from environment variable JWT_ALGORITHM
2026-04-28 08:44:01,914 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:44:02,220 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:44:02,220 - core.config - DEBUG - Read dynamic attribute oss_service_url from environment variable OSS_SERVICE_URL
2026-04-28 08:44:02,221 - core.config - DEBUG - Read dynamic attribute oss_api_key from environment variable OSS_API_KEY
2026-04-28 08:44:02,300 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:44:02,317 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7fc0541d2080>
2026-04-28 08:44:02,318 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7fc054b2bf40> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:44:02,327 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7fc0541d1de0>
2026-04-28 08:44:02,328 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:44:02,328 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:44:02,328 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:44:02,328 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:44:02,329 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:44:02,853 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:44:02 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'c2ba31387a528802e111a35749717e0e'), (b'X-Trace-Id', b'a0a2b79302ae4e53887b014882e05862'), (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'9f372f9e9ab4d8a6-LAX')])
2026-04-28 08:44:02,854 - httpx - INFO - HTTP Request: GET https://atoms.dev/api/v1/infra/client/oss/buckets/user-avatars/objects "HTTP/1.1 200 OK"
2026-04-28 08:44:02,854 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:44:02,855 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:44:02,855 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:44:02,855 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:44:02,855 - httpcore.connection - DEBUG - close.started
2026-04-28 08:44:02,855 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:48:05,992 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:48:06,277 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:48:06,303 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:48:06,320 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7fc0541d3b20>
2026-04-28 08:48:06,320 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7fc054b28940> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:48:06,331 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7fc0541d3880>
2026-04-28 08:48:06,332 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:48:06,333 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:48:06,333 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:48:06,333 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:48:06,333 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:48:06,826 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:48:06 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'b0aab711d906fbdf5a19342141c47e4f'), (b'X-Trace-Id', b'0d80575a03844ed19375a16c8e765338'), (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'9f373593ab0b4d90-LAX')])
2026-04-28 08:48:06,827 - httpx - INFO - HTTP Request: GET https://atoms.dev/api/v1/infra/client/oss/buckets/user-avatars/objects "HTTP/1.1 200 OK"
2026-04-28 08:48:06,827 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:48:06,827 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:48:06,827 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:48:06,827 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:48:06,828 - httpcore.connection - DEBUG - close.started
2026-04-28 08:48:06,828 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:49:16,635 - services.database - DEBUG - [DB_OP] Starting database close
2026-04-28 08:49:16,635 - services.database - INFO - Database connections closed
2026-04-28 08:49:16,635 - services.database - DEBUG - [DB_OP] Database close completed in 0.0003s
