Subversion Repositories SmartDukaan

Rev

Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
37728 16 d 15 h amit /trunk/ logging: stop three non-defects reporting to the error board as ERROR

log4j2.xml ships ERROR and above to GlitchTip, so the log level IS the filter.
Three sources of ordinary, expected behaviour were logging at ERROR and between
them accounted for 51,244 events -- 43% of the whole board -- none of them a bug.
GlobalExceptionHandler already logs ProfitMandiBusinessException at WARN and is
unchanged; every leak below bypassed it.

1. Session state (27,302 events, 23% of the board). CookiesProcessor and the two
interceptors logged a missing or expired cookie at ERROR. A logged-out or
anonymous visitor is the normal case -- the code already handles it by
redirecting to /login or returning 403 -- and each of these sits in a class
whose surrounding lines already log at DEBUG. These never reach the handler,
which is why its WARN-level treatment never applied. Now DEBUG.

2. Client disconnect (19,349 events). There was no handler for it, so a client
hanging up mid-response fell through to @ExceptionHandler(Exception.class) and
was recorded as an unhandled server bug. Adds an IOException handler to both
GlobalExceptionHandlers that logs a disconnect at DEBUG and everything else at
ERROR with its 500 intact.

⚠ ClientAbortException CANNOT be imported here: catalina is provided by the
container and is not on either module's compileClasspath (verified against
the configuration, not assumed). The match is therefore on the simple class
name plus the "broken pipe"/"connection reset" messages, walked down the cause
chain. A genuine IOException matches none of those and keeps its ERROR.

The handler returns null for a disconnect rather than a body: the connection
that would carry it is already closed, and writing to it is what raised the
exception. Null is the supported way to say "handled, no body" --
HttpEntityMethodProcessor marks the request handled before reading the value.

3. Business exceptions re-logged at ERROR (11 sites). Each catches a
ProfitMandiBusinessException, logs it, and CONTINUES with a fallback -- a
missing wallet history defaults to an empty list, a user not found by primary
email is retried against the secondary. That is an expected outcome being
reported as a failure, and logging it at ERROR pre-empted the handler that
would have logged it at WARN. Now WARN.

Selenium/WebDriver (58,776 events) is deliberately untouched: that is a genuinely
broken ChromeDriver, and muting it would hide Oppo/Realme IMEI activation failing.
It looks like noise only because one broken thing repeated 52,000 times.
 
36989 98 d 8 h vikas /trunk/profitmandi-fofo/src/main/ Changed mail sender password and Duplicate Req interceptor behavior  
36819 119 d 12 h amit /trunk/profitmandi-fofo/src/main/ Fix idempotency dedup to be server-authoritative (content + partner scoped)

PostInterceptor now keys duplicates on sha256(fofoId|method|uri|bodyHash) for
mutating methods only, instead of the client-supplied IdempotencyKey header.
The header was rotated per-request by the frontend (and old/sticky clients),
so identical submissions produced distinct keys and were never deduped - e.g.
a create-offer burst created 147 duplicate rows. Keying on the request body
makes dedup independent of client behaviour; partner scoping prevents cross-
partner collisions; distinct payloads (one-offer-per-partner) are unaffected.
GET/HEAD are now never deduped (removes spurious GET 400s).

common.js: attach IdempotencyKey only to mutating methods; stop rotating the
key on every ajaxComplete (kept reset on ajaxSuccess only). version 355.
 
36510 150 d 12 h amit /trunk/ Fixed Idempotency Key Handling  
35943 216 d 8 h amit /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/ Reduce log noise: demote interceptor/cookie per-request INFO to DEBUG, demote large object dumps and loop logging to DEBUG, fix string concatenation in log statements  
33793 743 d 15 h ranu /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/interceptor/ post interceptor manage log dor double click failure  
33788 744 d 14 h ranu /trunk/ aging maintain  
33761 756 d 12 h ranu /trunk/profitmandi-fofo/src/main/ commit post interceptor if key is not available return true  
33756 756 d 15 h ranu /trunk/profitmandi-fofo/src/main/ post interceptor for every post handling  
32396 1129 d 9 h amit.gupta /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/interceptor/ Fixed front end related issues with add/remove row  
23798 3026 d 17 h amit.gupta /trunk/ Fixed role related changes.  
23784 3043 d 7 h ashik.ali /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/ Role mgmt and non billable items to be scan  
23568 3095 d 10 h govind /trunk/ Fixed changes related to logging. Updated to log4j2  
23346 3159 d 17 h ashik.ali /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/interceptor/  
23173 3193 d 14 h ashik.ali /trunk/profitmandi-fofo/src/ retailer not found redirect change to login, remove wallet history date and invoice search box, remove new grn line, handle missing shipping details with better way  
22927 3248 d 16 h ashik.ali /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/  
22860 3256 d 11 h ashik.ali /trunk/profitmandi-fofo/  
22533 3290 d 10 h ashik.ali /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/  
22217 3347 d 14 h ashik.ali /trunk/profitmandi-fofo/src/main/  
22139 3358 d 3 h amit.gupta /trunk/ Fixed fofo admin  

Show All