Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Cria um resumo das solicitações que passam pelo proxy.
Dica
Use um plug-in repórter em sua configuração para salvar o resumo em um arquivo.
Exemplo de configuração
{
"$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"
}
}
Propriedades de configuração
| Propriedade | Descrição | Padrão |
|---|---|---|
groupBy |
Como o proxy deve agrupar as informações no resumo. Opções disponíveis: url, messageType |
url |
Opções de linha de comando
| Nome | Descrição | Padrão |
|---|---|---|
--summary-group-by |
Como o proxy deve agrupar as informações no resumo. Opções disponíveis: url, messageType |
url |
Output
ExecutionSummaryPlugin cria seu relatório quando você para de gravar. Para salvar o relatório como JSON, adicione o JsonReporter após ExecutionSummaryPlugin em sua configuração. JsonReporter grava o relatório em um arquivo nomeado ExecutionSummaryPlugin_JsonReporter.json no diretório de trabalho atual. Se o arquivo já existir, o Proxy de Desenvolvimento acrescentará um carimbo de data/hora ao nome do arquivo, por exemplo ExecutionSummaryPlugin_JsonReporter_20261105104151.json.
O relatório JSON é um objeto aninhado com três níveis de profundidade. Os valores no nível mais interno são números que mostram quantas vezes o Proxy de Desenvolvimento registrou uma mensagem. O significado de cada nível depende da groupBy configuração.
O Proxy de Desenvolvimento usa os seguintes nomes de categoria legíveis no relatório:
| Category | Descrição |
|---|---|
Requests intercepted |
Solicitações interceptadas pelo Proxy de Desenvolvimento. Incluído somente quando groupBy for messageType |
Requests passed through |
Solicitações que o Proxy de Desenvolvimento passou para o servidor original |
Requests mocked |
Solicitações para as quais um plug-in retornou uma resposta simulada |
Requests with chaos |
Solicitações para as quais um plug-in simulou um erro ou latência |
Failures |
Solicitações que falharam |
Tips |
Dicas que os plug-ins registraram para a solicitação |
Warnings |
Avisos que os plug-ins registraram para a solicitação |
Unknown |
Outras mensagens registradas para a solicitação, como carimbos de data/hora de solicitação e mensagens de plug-ins que ignoraram a solicitação |
Agrupar por URL
Quando groupBy é url, o relatório tem a seguinte forma:
{
"<method> <url>": {
"<category>": {
"<message>": <count>
}
}
}
| Nível | Descrição |
|---|---|
| 1 | O método HTTP e a URL de cada solicitação interceptada, por exemplo GET https://jsonplaceholder.typicode.com/users. Cada método e combinação de URL aparece uma vez, independentemente de quantas vezes seu aplicativo o chamou |
| 2 | A categoria das mensagens que o Proxy de Desenvolvimento registrou para a solicitação |
| 3 | A mensagem que o Proxy de Desenvolvimento registrou, mapeou para o número de vezes que o Proxy de Desenvolvimento o registrou para o método e a URL |
O exemplo a seguir mostra um relatório para um aplicativo chamado GET https://jsonplaceholder.typicode.com/users uma vez, que o Proxy de Desenvolvimento zombou e GET https://jsonplaceholder.typicode.com/posts duas vezes, pelo qual o Proxy de Desenvolvimento passou. As Unknown entradas são abreviadas para legibilidade.
{
"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
}
}
}
Agrupar por tipo de mensagem
Quando groupBy é messageType, o relatório tem a seguinte forma:
{
"<category>": {
"<message>": {
"<method> <url>": <count>
}
}
}
| Nível | Descrição |
|---|---|
| 1 | A categoria das mensagens registradas pelo Proxy de Desenvolvimento |
| 2 | A mensagem que o Proxy de Desenvolvimento registrou. Para as categorias e Requests passed through o Requests intercepted nome da categoria, esse nível repete o nome da categoria |
| 3 | O método HTTP e a URL da solicitação, mapeados para o número de vezes que o Proxy de Desenvolvimento registrou a mensagem para esse método e URL |
O exemplo a seguir mostra o relatório para as mesmas solicitações agrupadas por tipo de mensagem. A Unknown categoria é abreviada para legibilidade.
{
"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
}
}
}
Dica
Para verificar um pipeline de CI que solicita o Proxy de Desenvolvimento interceptado, use o messageType agrupamento e leia as chaves do ["Requests intercepted"]["Requests intercepted"] objeto. Com o url agrupamento, leia as chaves de nível superior. Cada chave começa com o método HTTP seguido por um espaço e a URL. Não confie no conteúdo da Unknown categoria, pois ela inclui carimbos de data/hora e outras mensagens de diagnóstico.