Sammanfattningsplugin för exekvering

Skapar en sammanfattning av de begäranden som passerar genom proxyn.

Dricks

Använd ett reporter-plugin-program i konfigurationen för att spara sammanfattningen i en fil.

Skärmbild av en kommandotolk med dev proxy-körningssammanfattningen med information om avlyssnade begäranden.

Skärmbild av en kommandotolk med sammanfattningen av de begäranden som fångas upp av Dev Proxy.

Konfigurationsexempel

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/rc.schema.json",
  "plugins": [
    {
      "name": "ExecutionSummaryPlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
      "configSection": "executionSummaryPlugin"
    }
  ],
  "executionSummaryPlugin": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/executionsummaryplugin.schema.json",
    "groupBy": "url"
  }
}

Konfigurationsegenskaper

Fastighet beskrivning Standard
groupBy Hur proxy ska gruppera informationen i sammanfattningen. Tillgängliga alternativ: url, messageType url

Kommandoradsalternativ

Namn beskrivning Standard
--summary-group-by Hur proxy ska gruppera informationen i sammanfattningen. Tillgängliga alternativ: url, messageType url

Output

ExecutionSummaryPlugin skapar sin rapport när du slutar spela in. Om du vill spara rapporten som JSON lägger du till JsonReporter efter ExecutionSummaryPlugin i konfigurationen. JsonReporter skriver rapporten till en fil med namnet ExecutionSummaryPlugin_JsonReporter.json i den aktuella arbetskatalogen. Om filen redan finns lägger Dev Proxy till en tidsstämpel i filnamnet, till exempel ExecutionSummaryPlugin_JsonReporter_20261105104151.json.

JSON-rapporten är ett objekt som är kapslat tre nivåer djupt. Värdena på den innersta nivån är tal som visar hur många gånger Dev Proxy loggade ett meddelande. Innebörden av varje nivå beror på inställningen groupBy .

Dev Proxy använder följande läsbara kategorinamn i rapporten:

Category beskrivning
Requests intercepted Begäranden som Dev Proxy snappade upp. Inkluderas endast när groupBy är messageType
Requests passed through Begäranden som Dev Proxy har skickat till den ursprungliga servern
Requests mocked Begäranden som ett plugin-program returnerade ett hånfullt svar för
Requests with chaos Begäranden som ett plugin-program simulerade ett fel eller svarstid för
Failures Begäranden som misslyckades
Tips Tips som plugin-program loggade för begäran
Warnings Varningar om att plugin-program loggas för begäran
Unknown Andra meddelanden som loggats för begäran, till exempel tidsstämplar för begäran och meddelanden från plugin-program som hoppade över begäran

Gruppera efter URL

När groupBy är urlhar rapporten följande form:

{
  "<method> <url>": {
    "<category>": {
      "<message>": <count>
    }
  }
}
Level beskrivning
1 HTTP-metoden och URL:en för varje avlyssnad begäran, till exempel GET https://jsonplaceholder.typicode.com/users. Varje metod och URL-kombination visas en gång, oavsett hur många gånger din app kallade den
2 Kategorin för de meddelanden som Dev Proxy loggade för begäran
3 Meddelandet som Dev Proxy loggade, mappat till antalet gånger Dev Proxy loggade den för metoden och URL:en

I följande exempel visas en rapport för en app som anropade GET https://jsonplaceholder.typicode.com/users en gång, som Dev Proxy hånade och GET https://jsonplaceholder.typicode.com/posts två gånger, som Dev Proxy passerade genom. Posterna Unknown förkortas för läsbarhet.

{
  "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
    }
  }
}

Gruppera efter meddelandetyp

När groupBy är messageTypehar rapporten följande form:

{
  "<category>": {
    "<message>": {
      "<method> <url>": <count>
    }
  }
}
Level beskrivning
1 Kategorin för de meddelanden som Dev Proxy loggade
2 Meddelandet som Dev Proxy loggade. Requests intercepted För kategorierna och Requests passed through upprepar den här nivån kategorinamnet
3 HTTP-metoden och URL:en för begäran, mappad till antalet gånger Dev Proxy loggade meddelandet för den metoden och URL:en

I följande exempel visas rapporten för samma begäranden grupperade efter meddelandetyp. Kategorin Unknown förkortas för läsbarhet.

{
  "Requests intercepted": {
    "Requests intercepted": {
      "GET https://jsonplaceholder.typicode.com/users": 1,
      "GET https://jsonplaceholder.typicode.com/posts": 2
    }
  },
  "Unknown": {
    "No matching mock response found": {
      "GET https://jsonplaceholder.typicode.com/posts": 2
    }
  },
  "Requests mocked": {
    "200 https://jsonplaceholder.typicode.com/users": {
      "GET https://jsonplaceholder.typicode.com/users": 1
    }
  },
  "Requests passed through": {
    "Requests passed through": {
      "GET https://jsonplaceholder.typicode.com/posts": 2
    }
  }
}

Dricks

Om du vill checka in en CI-pipeline som begär att Dev Proxy ska fångas upp använder du messageType gruppering och läser objektnycklarna ["Requests intercepted"]["Requests intercepted"] . url Med gruppering läser du nycklarna på den översta nivån. Varje nyckel börjar med HTTP-metoden följt av ett blanksteg och EN URL. Förlita dig inte på innehållet i Unknown kategorin eftersom det innehåller tidsstämplar och andra diagnostikmeddelanden.

Se även

Nästa steg