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.