• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

FIWARE / contract-management / #102

30 Sep 2026 10:28AM UTC coverage: 4.485% (+0.7%) from 3.796%
#102

Pull #28

vramperez
Remove stack trace floods from connection errors

- Micronaut's DefaultHttpClient logged every failed connection at ERROR with a
  ~125 line stack trace, duplicating the one-line WARN of the failed call. It is
  off by default now (LOG_LEVEL_MICRONAUT_HTTP_CLIENT to bring it back)
- The subscription retry warning names the event and the reason instead of
  attaching the stack trace on every retry
- Suppress logback's status dump on startup

Without a reachable TM Forum API this reduces 25s of logs from ~1100 to ~60 lines.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Pull Request #28: Add failure reasons, downstream error descriptions and configurable log output

229 of 453 new or added lines in 31 files covered. (50.55%)

11 existing lines in 7 files now uncovered.

1608 of 35855 relevant lines covered (4.48%)

0.04 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/main/java/org/fiware/iam/exception/ConversionErrorExceptionhandler.java
1
package org.fiware.iam.exception;
2

3
import io.micronaut.context.annotation.Primary;
4
import io.micronaut.context.annotation.Requires;
5
import io.micronaut.core.convert.exceptions.ConversionErrorException;
6
import io.micronaut.http.HttpRequest;
7
import io.micronaut.http.HttpResponse;
8
import io.micronaut.http.HttpStatus;
9
import io.micronaut.http.annotation.Produces;
10
import io.micronaut.http.server.exceptions.ExceptionHandler;
11
import jakarta.inject.Singleton;
12
import lombok.extern.slf4j.Slf4j;
13
import org.fiware.iam.tmforum.productorder.model.ErrorVO;
14

15
@Produces
16
@Singleton
17
@Primary
18
@Requires(classes = {ConversionErrorException.class, ExceptionHandler.class})
19
@Slf4j
×
20
public class ConversionErrorExceptionhandler implements ExceptionHandler<ConversionErrorException, HttpResponse<ErrorVO>> {
×
21

22
    @Override
23
    public HttpResponse<ErrorVO> handle(HttpRequest request, ConversionErrorException exception) {
NEW
24
        log.warn("Rejected {} {} with 400, the request could not be converted: {}", request.getMethod(), request.getUri(), exception.getMessage());
×
25
        return HttpResponse.status(HttpStatus.BAD_REQUEST)
×
26
                .body(new ErrorVO().status(HttpStatus.BAD_REQUEST.toString())
×
27
                        .reason(HttpStatus.BAD_REQUEST.getReason())
×
28
                        .message("Request could not be answered due to faulty input."));
×
29
    }
30
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc