feat(logging): add NanoShare wide event instrumentation
Build and Push Docker Container / build-and-push (push) Failing after 51s
Build and Push Docker Container / build-and-push (push) Failing after 51s
- Register quart_common wide-event logging during app setup so every HTTP request emits one canonical structured event. - Replace the inline security middleware with reusable quart_common security middleware wiring and move skip path configuration into app constants. - Add NanoShare-specific wide-event context for health checks, auth/error handlers, file list/edit/delete/serve flows and upload outcomes. - Rename runtime logging/project metadata from simple-picoshare to nanoshare where it is emitted in service context. - Update my_helpers and quart_common submodules for Convex/wide-event integration and reusable security middleware support. - Add NanoShare middleware tests covering safe user context, client IP enrichment, missing Convex handling and Convex security lookup failures.
This commit is contained in:
@@ -19,6 +19,9 @@ API_GROUP = os.getenv("API_GROUP", 'NanoShare')
|
||||
|
||||
THE_IP_BOT_MANAGER = TheIPManager()
|
||||
|
||||
SKIP_PATH_PREFIXES = ("/static", "/storage")
|
||||
SKIP_PATHS = ("/favicon.ico",)
|
||||
|
||||
# Blocke IPs (Bots, Hackers)
|
||||
BLOCKED_IPS_ACCESSING_TIMES = int(os.getenv("BLOCKE_IPS_AFTER_ACCESSING_HOWMANY_TIME", 5))
|
||||
BLOCKED_IPS_STORED_TIMEFRAME = int(os.getenv("BLOCKE_IPS_STORE_KEYS_TIMEFRAME", 3600))
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
from quart_common.web.logger import build_logger
|
||||
|
||||
logger = build_logger(name="simple-picoshare")
|
||||
logger = build_logger(name="nanoshare")
|
||||
|
||||
@@ -9,6 +9,7 @@ from my_modules.app.constens import SECRET_KEY, THE_IP_BOT_MANAGER
|
||||
from my_modules.OrphanStorageIdRegistry import OrphanStorageIdRegistry
|
||||
from my_modules.AsyncCache import AsyncCache
|
||||
from my_modules.app.logger import logger
|
||||
from quart_common.web.wide_event import register_wide_event_logging
|
||||
|
||||
from my_helpers.db.convex.ConvexRuntime import ConvexRuntime
|
||||
from my_helpers.db.convex.ConvexWorkerPool import ConvexWorkerPool
|
||||
@@ -26,6 +27,7 @@ app = Quart(__name__,
|
||||
static_folder="../../templates/static",
|
||||
)
|
||||
app.config['MAX_CONTENT_LENGTH'] = 1024 * 1024 * 1024
|
||||
register_wide_event_logging(app, logger)
|
||||
|
||||
app.secret_key = SECRET_KEY
|
||||
|
||||
|
||||
Reference in New Issue
Block a user