2026-04-28 08:32:20,590 - main - INFO - === Logging system initialized ===
2026-04-28 08:32:20,590 - main - INFO - Log file: logs/app_20260428_083220.log
2026-04-28 08:32:20,590 - main - INFO - Log level: INFO
2026-04-28 08:32:20,590 - main - INFO - Timestamp: 20260428_083220
2026-04-28 08:32:21,369 - main - INFO - Included router: routers.aihub.router
2026-04-28 08:32:21,384 - main - INFO - Included router: routers.auth.router
2026-04-28 08:32:21,386 - main - INFO - Included router: routers.health.router
2026-04-28 08:32:21,404 - main - INFO - Included router: routers.settings.router
2026-04-28 08:32:21,438 - main - INFO - Included router: routers.storage.router
2026-04-28 08:32:21,445 - main - INFO - Included router: routers.user.router
2026-04-28 08:32:21,486 - main - INFO - Included router: routers.user_profiles.router
2026-04-28 08:32:21,487 - main - INFO - === Application startup initiated ===
2026-04-28 08:32:21,487 - services.database - INFO - Ignore creating tables
2026-04-28 08:32:21,488 - services.mock_data - INFO - Ignore initialize data
2026-04-28 08:32:21,488 - services.auth - INFO - Ignore initialize admin
2026-04-28 08:32:21,488 - main - INFO - === Application startup completed successfully ===
2026-04-28 08:32:26,027 - core.config - DEBUG - Read dynamic attribute jwt_secret_key from environment variable JWT_SECRET_KEY
2026-04-28 08:32:26,027 - core.config - DEBUG - Read dynamic attribute jwt_algorithm from environment variable JWT_ALGORITHM
2026-04-28 08:32:26,041 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:32:26,347 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:32:26,347 - core.config - DEBUG - Read dynamic attribute oss_service_url from environment variable OSS_SERVICE_URL
2026-04-28 08:32:26,347 - core.config - DEBUG - Read dynamic attribute oss_api_key from environment variable OSS_API_KEY
2026-04-28 08:32:26,411 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:32:26,419 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3a6080>
2026-04-28 08:32:26,419 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f146dcffec0> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:32:26,430 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3a5de0>
2026-04-28 08:32:26,431 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:32:26,431 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:32:26,431 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:32:26,432 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:32:26,432 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:32:26,974 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:32:26 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'018b897b7e5e6c98259ef7d23cc8ad56'), (b'X-Trace-Id', b'417412d7126f456a883a9f80a8ad1f80'), (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'9f371ea13f801ad1-LAX')])
2026-04-28 08:32:26,975 - 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:32:26,975 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:32:26,976 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:32:26,976 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:32:26,976 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:32:26,976 - httpcore.connection - DEBUG - close.started
2026-04-28 08:32:26,977 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:32:37,605 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:32:37,897 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:32:37,922 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:32:37,929 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3a7ac0>
2026-04-28 08:32:37,929 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f146dcfc8c0> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:32:37,937 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3a7820>
2026-04-28 08:32:37,938 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:32:37,938 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:32:37,939 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:32:37,939 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:32:37,939 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:32:38,607 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:32:38 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'9e21843b6527336a577e772b840b24c5'), (b'X-Trace-Id', b'8b50b4ebdc4c4a52a54bb74598220fa4'), (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'9f371ee9281f4e43-LAX')])
2026-04-28 08:32:38,607 - 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:32:38,607 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:32:38,608 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:32:38,608 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:32:38,608 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:32:38,608 - httpcore.connection - DEBUG - close.started
2026-04-28 08:32:38,608 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:32:50,585 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:32:50,959 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:32:50,981 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:32:50,987 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3f50f0>
2026-04-28 08:32:50,988 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f146dcffdc0> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:32:50,996 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3f4e50>
2026-04-28 08:32:50,996 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:32:50,997 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:32:50,997 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:32:50,997 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:32:50,997 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:32:51,226 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:32:51 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'd1f2d024ae5089a9a2c87eaab6732197'), (b'X-Trace-Id', b'f9a6b3c5008247258cfd2373e028edf0'), (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'9f371f3acba1cb93-LAX')])
2026-04-28 08:32:51,226 - 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:32:51,226 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:32:51,227 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:32:51,227 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:32:51,227 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:32:51,227 - httpcore.connection - DEBUG - close.started
2026-04-28 08:32:51,228 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:33:27,917 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:33:28,228 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:33:28,250 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:33:28,293 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3f6710>
2026-04-28 08:33:28,294 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f146dcfcdc0> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:33:28,303 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3f6470>
2026-04-28 08:33:28,303 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:33:28,304 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:33:28,304 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:33:28,304 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:33:28,304 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:33:28,841 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:33:28 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'8653301050d7d34ef075ed6e411fa7c1'), (b'X-Trace-Id', b'22e8de7392524b9a8dbae9c94554355e'), (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'9f372023fdbc2eed-LAX')])
2026-04-28 08:33:28,842 - 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:33:28,842 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:33:28,842 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:33:28,843 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:33:28,843 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:33:28,843 - httpcore.connection - DEBUG - close.started
2026-04-28 08:33:28,843 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:33:34,961 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:33:35,252 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:33:35,274 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:33:35,283 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3f7d00>
2026-04-28 08:33:35,284 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f146d3b4740> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:33:35,293 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3f7a60>
2026-04-28 08:33:35,293 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:33:35,293 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:33:35,294 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:33:35,294 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:33:35,294 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:33:35,817 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:33:35 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'94bbece2f881356b7892bb42e012ae63'), (b'X-Trace-Id', b'613d6e7c55fa4ba1b67e2f2d8abbdc73'), (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'9f37204fafbff7d5-LAX')])
2026-04-28 08:33:35,818 - 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:33:35,818 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:33:35,819 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:33:35,819 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:33:35,819 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:33:35,819 - httpcore.connection - DEBUG - close.started
2026-04-28 08:33:35,820 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:34:34,237 - dependencies.auth - DEBUG - Authentication required for request GET /api/v1/auth/me
2026-04-28 08:34:40,850 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:34:41,133 - core.auth - DEBUG - Authentication token validated for user hash: 4f820a44
2026-04-28 08:34:41,182 - httpcore.connection - DEBUG - connect_tcp.started host='atoms.dev' port=443 local_address=None timeout=120.0 socket_options=None
2026-04-28 08:34:41,189 - httpcore.connection - DEBUG - connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3f5d50>
2026-04-28 08:34:41,189 - httpcore.connection - DEBUG - start_tls.started ssl_context=<ssl.SSLContext object at 0x7f146dcffec0> server_hostname='atoms.dev' timeout=120.0
2026-04-28 08:34:41,198 - httpcore.connection - DEBUG - start_tls.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x7f146d3f5ba0>
2026-04-28 08:34:41,199 - httpcore.http11 - DEBUG - send_request_headers.started request=<Request [b'GET']>
2026-04-28 08:34:41,199 - httpcore.http11 - DEBUG - send_request_headers.complete
2026-04-28 08:34:41,199 - httpcore.http11 - DEBUG - send_request_body.started request=<Request [b'GET']>
2026-04-28 08:34:41,199 - httpcore.http11 - DEBUG - send_request_body.complete
2026-04-28 08:34:41,199 - httpcore.http11 - DEBUG - receive_response_headers.started request=<Request [b'GET']>
2026-04-28 08:34:41,460 - httpcore.http11 - DEBUG - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Tue, 28 Apr 2026 15:34:41 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'14ac888f642f91b1a364d26da277f704'), (b'X-Trace-Id', b'9ba679fded9644a995667763abd3aba6'), (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'9f3721eb8ec4fbed-LAX')])
2026-04-28 08:34:41,461 - 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:34:41,461 - httpcore.http11 - DEBUG - receive_response_body.started request=<Request [b'GET']>
2026-04-28 08:34:41,461 - httpcore.http11 - DEBUG - receive_response_body.complete
2026-04-28 08:34:41,462 - httpcore.http11 - DEBUG - response_closed.started
2026-04-28 08:34:41,462 - httpcore.http11 - DEBUG - response_closed.complete
2026-04-28 08:34:41,463 - httpcore.connection - DEBUG - close.started
2026-04-28 08:34:41,463 - httpcore.connection - DEBUG - close.complete
2026-04-28 08:35:24,079 - services.database - DEBUG - [DB_OP] Starting database close
2026-04-28 08:35:24,079 - services.database - INFO - Database connections closed
2026-04-28 08:35:24,079 - services.database - DEBUG - [DB_OP] Database close completed in 0.0004s
