ExecutionSummaryPlugin

Vytvoří souhrn požadavků, které procházejí přes proxy server.

Návod

Pomocí modulu plug-in reporteru v konfiguraci uložte souhrn do souboru.

Snímek obrazovky s příkazovým řádkem se souhrnem spuštění dev proxy serveru s informacemi o zachycených požadavcích

Snímek obrazovky s příkazovým řádkem se souhrnem požadavků zachycených dev proxy serverem

Příklad konfigurace

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

Vlastnosti konfigurace

Vlastnost Popis Výchozí
groupBy Jak má proxy seskupovat informace v souhrnu. Dostupné možnosti: url, messageType url

Možnosti příkazového řádku

Název Popis Výchozí
--summary-group-by Jak má proxy seskupovat informace v souhrnu. Dostupné možnosti: url, messageType url

Output

ExecutionSummaryPlugin vytvoří sestavu při zastavení nahrávání. Pokud chcete sestavu uložit jako JSON, přidejte do konfigurace objekt JsonReporter za ExecutionSummaryPlugin. JsonReporter zapíše sestavu do souboru pojmenovaného ExecutionSummaryPlugin_JsonReporter.json v aktuálním pracovním adresáři. Pokud soubor již existuje, dev proxy připojí časové razítko k názvu souboru, například ExecutionSummaryPlugin_JsonReporter_20261105104151.json.

Sestava JSON je objekt vnořený do tří úrovní. Hodnoty na vnitřní úrovni jsou čísla, která ukazují, kolikrát dev proxy zaprotokoloval zprávu. Význam jednotlivých úrovní závisí na groupBy nastavení.

Dev Proxy používá v sestavě následující čitelné názvy kategorií:

Kategorie Popis
Requests intercepted Požadavky, které dev proxy zachytil. Zahrnuto pouze v případech, kdy groupBy je messageType
Requests passed through Požadavky, které dev Proxy předává na původní server
Requests mocked Požadavky, pro které modul plug-in vrátil napodobenou odpověď
Requests with chaos Požadavky, pro které modul plug-in simuloval chybu nebo latenci
Failures Požadavky, které selhaly
Tips Tipy, které moduly plug-in protokolovaly pro žádost
Warnings Upozornění, že moduly plug-in zaprotokolované pro požadavek
Unknown Jiné zprávy zaprotokolované pro požadavek, jako jsou časová razítka požadavků a zprávy z modulů plug-in, které požadavek přeskočily

Seskupte podle adresy URL

Pokud groupBy je url, sestava má následující tvar:

{
  "<method> <url>": {
    "<category>": {
      "<message>": <count>
    }
  }
}
Level Popis
1 Metoda HTTP a adresa URL každého zachyceného požadavku, například GET https://jsonplaceholder.typicode.com/users. Každá kombinace metod a adres URL se zobrazí jednou bez ohledu na to, kolikrát ji vaše aplikace volala.
2 Kategorie zpráv, které dev Proxy protokoloval pro požadavek
3 Zpráva, že dev Proxy protokoloval, namapovaný na počet, kolikrát ho dev proxy protokoloval pro metodu a adresu URL

Následující příklad ukazuje sestavu pro aplikaci, která volala jednou, kterou dev proxy napodobenil GET https://jsonplaceholder.typicode.com/users , a GET https://jsonplaceholder.typicode.com/posts dvakrát, kterým vývojový proxy server prošel. Položky Unknown jsou zkráceny pro čitelnost.

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

Seskupte podle typu zprávy

Pokud groupBy je messageType, sestava má následující tvar:

{
  "<category>": {
    "<message>": {
      "<method> <url>": <count>
    }
  }
}
Level Popis
1 Kategorie zpráv, které dev proxy protokoloval
2 Zpráva, že dev proxy server protokoloval. U kategorií Requests intercepted a Requests passed through kategorií tato úroveň opakuje název kategorie.
3 Metoda HTTP a adresa URL požadavku, namapované na počet, kolikrát dev proxy protokoloval zprávu pro tuto metodu a adresu URL

Následující příklad ukazuje sestavu pro stejné žádosti seskupené podle typu zprávy. Kategorie Unknown je zkrácena pro čitelnost.

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

Návod

Pokud chcete zkontrolovat kanál CI, který vyžaduje zachycený vývojový proxy server, použijte messageType seskupování a čtení klíčů objektu ["Requests intercepted"]["Requests intercepted"] . url Seskupováním si přečtěte klíče nejvyšší úrovně. Každý klíč začíná metodou HTTP následovanou mezerou a adresou URL. Nespoléhejte na obsah Unknown kategorie, protože obsahuje časová razítka a další diagnostické zprávy.

Viz také

Další krok