2026-04-28 08:35:30,748 - main - INFO - === Logging system initialized ===
2026-04-28 08:35:30,748 - main - INFO - Log file: logs/app_20260428_083530.log
2026-04-28 08:35:30,748 - main - INFO - Log level: INFO
2026-04-28 08:35:30,748 - main - INFO - Timestamp: 20260428_083530
2026-04-28 08:35:31,472 - main - INFO - Included router: routers.aihub.router
2026-04-28 08:35:31,490 - main - INFO - Included router: routers.auth.router
2026-04-28 08:35:31,492 - main - INFO - Included router: routers.health.router
2026-04-28 08:35:31,515 - main - INFO - Included router: routers.settings.router
2026-04-28 08:35:31,550 - main - INFO - Included router: routers.storage.router
2026-04-28 08:35:31,558 - main - INFO - Included router: routers.user.router
2026-04-28 08:35:31,597 - main - INFO - Included router: routers.user_profiles.router
2026-04-28 08:35:31,599 - main - INFO - === Application startup initiated ===
2026-04-28 08:35:31,599 - services.database - INFO - Ignore creating tables
2026-04-28 08:35:31,599 - services.mock_data - INFO - Ignore initialize data
2026-04-28 08:35:31,599 - services.auth - INFO - Ignore initialize admin
2026-04-28 08:35:31,599 - main - INFO - === Application startup completed successfully ===
2026-04-28 08:35:35,355 - core.config - DEBUG - Read dynamic attribute jwt_secret_key from environment variable JWT_SECRET_KEY
2026-04-28 08:35:35,355 - core.config - DEBUG - Read dynamic attribute jwt_algorithm from environment variable JWT_ALGORITHM
2026-04-28 08:35:35,362 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:35:35,672 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:35:35,672 - core.config - DEBUG - Read dynamic attribute oss_service_url from environment variable OSS_SERVICE_URL
2026-04-28 08:35:35,672 - core.config - DEBUG - Read dynamic attribute oss_api_key from environment variable OSS_API_KEY
2026-04-28 08:35:35,744 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:35:35,753 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7feb5929e080>
2026-04-28 08:35:35,753 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7feb59bfbec0> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:35:35,766 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7feb5929dde0>
2026-04-28 08:35:35,766 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:35:35,767 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:35:35,767 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:35:35,767 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:35:35,767 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:35:36,265 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:35:36 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'd4b69e14efd091e10c9eb8f9cb16a777'), (b'X-Trace-Id', b'cc16bf8f57564b1fb7cd713c24b7fd07'), (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'9f3723409f99531e-LAX')])
2026-04-28 08:35:36,266 - 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:35:36,266 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:35:36,267 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:35:36,267 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:35:36,267 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:35:36,267 - httpcore.connection - DEBUG - close.started
2026-04-28 08:35:36,267 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:38:45,363 - dependencies.auth - DEBUG - Authentication required for request GET /api/v1/auth/me
2026-04-28 08:38:45,933 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:38:46,226 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:38:46,281 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:38:46,296 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7feb5929fb20>
2026-04-28 08:38:46,296 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7feb59bfb440> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:38:46,306 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7feb5929f880>
2026-04-28 08:38:46,306 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:38:46,306 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:38:46,307 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:38:46,307 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:38:46,307 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:38:46,804 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:38:46 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'a7028dd5a441779b81e6b73a7ab11bd1'), (b'X-Trace-Id', b'61df5418ad2e4bf5a24bfb855f47bcbd'), (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'9f3727e77e03c4c6-LAX')])
2026-04-28 08:38:46,805 - 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:38:46,805 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:38:46,806 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:38:46,806 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:38:46,807 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:38:46,807 - httpcore.connection - DEBUG - close.started
2026-04-28 08:38:46,807 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:39:27,996 - services.database - DEBUG - [DB_OP] Starting database close
2026-04-28 08:39:27,997 - services.database - INFO - Database connections closed
2026-04-28 08:39:27,997 - services.database - DEBUG - [DB_OP] Database close completed in 0.0005s
