import { Controller, Get, InternalServerErrorException, Logger, } from "@nestjs/common"; import { ApiTags, ApiOperation, ApiResponse } from "@nestjs/swagger"; @ApiTags("test") @Controller("test") export class TestErrorController { private readonly logger = new Logger(TestErrorController.name); @Get("error") @ApiOperation({ summary: "Test endpoint that always throws an error" }) @ApiResponse({ status: 500, description: "Internal Server Error" }) triggerError(): never { this.logger.debug("About to throw a test error"); this.logger.error( "Test error triggered", new Error("This is a test error").stack, ); throw new InternalServerErrorException("This is a test error"); } @Get("levels") @ApiOperation({ summary: "Test different log levels" }) @ApiResponse({ status: 200, description: "Logs different levels" }) testLogLevels() { this.logger.debug("This is a debug message"); this.logger.log("This is an info message"); this.logger.warn("This is a warning message"); this.logger.error("This is an error message"); return { message: "All log levels tested" }; } }