[BUG] Swallowed exceptions in close methods across logging clients
- Dominant language
- Java
- Stars
- 8.8k
- Forks
- 3.1k
- Avg merge
- 7d 1h
- Merged PRs (30d)
- 85
Description
- severity: Medium
- files: `shenyu-plugin/shenyu-plugin-logging/shenyu-plugin-logging-common/.../AbstractLogConsumeClient.java:91`; `.../shenyu-plugin-logging-huawei-lts/.../HuaweiLtsLogCollectClient.java:123`; `.../shenyu-plugin-logging-tencent-cls/.../TencentClsLogCollectClient.java:118`
- description: In `close()`/`close0()`, the catch block logs `LOG.error("... close error.")` but does NOT pass the exception `e` as an argument, so the stack trace is permanently lost.
- impact: Resource close failures are silently swallowed with no stack trace, making debugging impossible.
- suggested_fix: Pass the exception: `LOG.error("... close error.", e)`.
- confidence: High
- related_existing: none
---
_Identified during the 2026-08-02 deep re-scan; full list in [`docs/scan2-2026-08-02/06-medium-tiers.md`](docs/scan2-2026-08-02/06-medium-tiers.md)._
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the close()/close0() catch blocks at AbstractLogConsumeClient.java:91, HuaweiLtsLogCollectClient.java:123, and TencentClsLogCollectClient.java:118. Confirm each close-error log includes the caught exception, then verify that all three logging clients preserve the exception stack trace when closing fails.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100