ExecutionSummaryPlugin: internal log messages leak into the report as an "Unknown" category

Offen
#2,097 0 Kommentare 0 Reaktionen 1 zugewiesene Person Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

@waldekmastykarz arbeitet bereits daran.

Seit 05.11.2026.

  • #2088 von @waldekmastykarz — offen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Beschreibung

bug work in progress

Description

ExecutionSummaryPlugin reports (both groupBy: url and groupBy: messageType) contain an Unknown category filled with internal or noise log entries. These include request timestamps, messages from plugins that skipped the request (for example, No matching mock response found), the request line itself, and processing markers. None of these help a user who's reading the summary.

Cause

GetGroupedByUrlData and GetGroupedByMessageTypeData in DevProxy.Plugins/Reporting/ExecutionSummaryPlugin.cs filter out only MessageType.InterceptedResponse. GetReadableMessageTypeForSummary maps every other unhandled MessageType to "Unknown" (_ => "Unknown"). That includes Normal, Skipped, Processed, FinishedProcessingRequest, and Timestamp. The same mapping exists in ExecutionSummaryPluginReportBase.cs.

Repro (Dev Proxy v4.0.0)

  1. Configure MockResponsePlugin + ExecutionSummaryPlugin + JsonReporter for https://jsonplaceholder.typicode.com/*, with a mock for /users only.
  2. Record, call GET /users once and GET /posts twice, then stop recording.
  3. Inspect ExecutionSummaryPlugin_JsonReporter.json.

groupBy: url output (excerpt):

{
  "GET https://jsonplaceholder.typicode.com/users": {
    "Unknown": {
      "2026-11-05T10:41:13.1151430+00:00": 1,
      "GET https://jsonplaceholder.typicode.com/users": 1
    },
    "Requests mocked": { "200 https://jsonplaceholder.typicode.com/users": 1 }
  },
  "GET https://jsonplaceholder.typicode.com/posts": {
    "Unknown": {
      "No matching mock response found": 2,
      "GET https://jsonplaceholder.typicode.com/posts": 2
    },
    "Requests passed through": { "Passed through": 2 }
  }
}

Expected

Exclude internal message types (Timestamp, Skipped, Processed, FinishedProcessingRequest, and likely Normal) from the summary. Alternatively, map them to meaningful categories so that Unknown doesn't appear in normal runs.

Related

Found while documenting the report shape for dotnet/dev-proxy#2079 (docs PR: MicrosoftDocs/microsoft-cloud-pr#767). Once this is fixed, remove the Unknown row and examples from executionsummaryplugin.md.

Vorherrschende Sprache
C#
Sterne
841
Forks
90
Ø Merge
2 T. 10 Std.
Gemergte PRs (30 T.)
63

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus dotnet/dev-proxy

Alle Issues in dotnet/dev-proxy

Ähnliche Issues

Weitere Issues zu C#

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.