Repository: dotnet/aspnetcore
File: src/Middleware/Diagnostics/src/ExceptionHandler/ExceptionHandlerOptions.cs (C#)

Code before:
    /// <summary>
    /// This value controls whether the <see cref="ExceptionHandlerMiddleware" /> should
    /// consider a response with a 404 status code to be a valid result of executing the
    /// <see cref="ExceptionHandler"/>. The default value is false and the middleware will
    /// consider 404 status codes to be an error on the server and will therefore rethrow
    /// the original exception.
    /// </summary>
    public bool AllowStatusCode404Response { get; set; }

    /// <summary>
    /// Gets or sets a delegate used to map an exception to an HTTP status code.
    /// </summary>
    /// <remarks>
    /// If <see cref="StatusCodeSelector"/> is <c>null</c>, the default exception status code 500 is used.
    /// </remarks>
    public Func<Exception, int>? StatusCodeSelector { get; set; }

    /// <summary>
    /// Gets or sets a callback that can return <see langword="true" /> be used to suppress diagnostics by <see cref="ExceptionHandlerMiddleware" />.
    /// The default value is to suppress diagnostics if the exception was handled by an <see cref="IExceptionHandler"/> service instance registered in the DI container.
    /// <para>
    /// This callback is only run if the exception was handled by the middleware.
    /// Unhandled exceptions and exceptions thrown after the response has started are always logged.
    /// </para>
    /// <para>
    /// Suppress diagnostics include:
    /// </para>
    /// <list type="bullet">
    ///   <item>
    ///     <description>Logging <c>UnhandledException</c> to <see cref="ILogger"/>.</description>
    ///   </item>
    ///   <item>
    ///     <description>Writing <c>Microsoft.AspNetCore.Diagnostics.HandledException</c> event to <see cref="EventSource" />.</description>
    ///   </item>
    ///   <item>
    ///     <description>Adding <c>error.type</c> tag to the <c>http.server.request.duration</c> metric.</description>
    ///   </item>
    /// </list>
    /// </summary>
    public Func<ExceptionHandlerSuppressDiagnosticsContext, bool>? SuppressDiagnosticsCallback { get; set; }
}


Review comment (suggestion):
```suggestion
    /// Suppressed diagnostics include:
```

Code after:

    /// <summary>
    /// Gets or sets a delegate used to map an exception to an HTTP status code.
    /// </summary>
    /// <remarks>
    /// If <see cref="StatusCodeSelector"/> is <c>null</c>, the default exception status code 500 is used.
    /// </remarks>
    public Func<Exception, int>? StatusCodeSelector { get; set; }

    /// <summary>
    /// Gets or sets a callback that can return <see langword="true" /> to suppress diagnostics in <see cref="ExceptionHandlerMiddleware" />.
    /// <para>
    /// If <see cref="SuppressDiagnosticsCallback"/> is <c>null</c>, the default behavior is to suppress diagnostics if the exception was handled by
    /// an <see cref="IExceptionHandler"/> service instance registered in the DI container.
    /// To always record diagnostics for handled exceptions, set a callback that returns <see langword="false" />.
    /// </para>
    /// <para>
    /// This callback is only run if the exception was handled by the middleware.
    /// Unhandled exceptions and exceptions thrown after the response has started are always logged.
    /// </para>
    /// <para>
    /// Suppressed diagnostics include:
    /// </para>
    /// <list type="bullet">
    ///   <item>
    ///     <description>Logging <c>UnhandledException</c> to <see cref="ILogger"/>.</description>
    ///   </item>
    ///   <item>
    ///     <description>Writing the <c>Microsoft.AspNetCore.Diagnostics.HandledException</c> event to <see cref="EventSource" />.</description>
    ///   </item>
    ///   <item>
    ///     <description>Adding the <c>error.type</c> tag to the <c>http.server.request.duration</c> metric.</description>
    ///   </item>
    /// </list>
    /// </summary>
    public Func<ExceptionHandlerSuppressDiagnosticsContext, bool>? SuppressDiagnosticsCallback { get; set; }
}