TrafficCounter
static class · пространство имён z3n7 · исходник Traffic/TrafficCounter.cs
public static class TrafficCounter
Считает трафик по помеченным шагам прогона проекта и выдаёт отчёт в JSON. Шаги хранятся в project.Context.
Методы
Add
public static void Add(IZennoPosterProjectModel project, string label, string responseText)
Добавляет шаг для трафика вне браузера; считается как размер responseText в UTF-8.
| Параметр | Описание |
|---|---|
label |
Имя шага. |
responseText |
Текст ответа. |
Checkpoint
public static long Checkpoint(Instance instance, IZennoPosterProjectModel project, string label)
Добавляет шаг: суммарный размер тел запросов и ответов из трафика, который вернул ActiveTab.GetTraffic() (заблокированные запросы пропускаются). Ошибки пишутся в лог как предупреждения.
| Параметр | Описание |
|---|---|
label |
Имя шага. |
Возвращает: Число байт, учтённых для этого шага.
Init
public static void Init(Instance instance)
Включает мониторинг трафика и один раз читает записанный к этому моменту трафик.
MergeAndReport
public static string MergeAndReport(IZennoPosterProjectModel project, string existingJson)
Объединяет шаги прежнего отчёта с текущими, сортирует по времени и строит новый отчёт.
| Параметр | Описание |
|---|---|
existingJson |
Отчёт из ReportJson или из этого метода; пустой или нечитаемый игнорируется. |
Возвращает: JSON { total_kb, steps: [{ t, label, kb }] }; t — секунды с 2020-01-01 UTC.
ReportJson
public static string ReportJson(IZennoPosterProjectModel project)
Собирает отчёт из текущих шагов.
Возвращает: JSON { total_kb, steps: [{ t, label, kb }] }; t — секунды с 2020-01-01 UTC.