
1. Автоматический сбор har-файла с помощью расширения devtools.network.getHAR() - Mozilla | MDN
2. Автоматическая отправка exception из консоли со стеком
2.1. Backend
2.1.1. Домен Smb.ClientLog
2.1.1.1. Smb.ClientLog.Persistence, таблица ClientLog.Events для записи логов с клиента
2.1.1.2. Smb.ClientLog.Scheduler для очистки старых записей в таблице ClientLog.Requests по расписанию, раз в 2-3 дня
2.1.1.3. Smb.ClientLog.WebApi
2.1.1.3.1. Формирование записи об Exception и добавление в БД
2.1.1.3.2. Расчет хэша Exception чтобы объединить запись с уже существующими
2.1.1.4. Мониторинг типов Exception с помощью Riverbed
2.1.1.5. Метрики объема данных
2.2. Frontend
3. Автоматическое сохранение данных о http-запросе/ответе в БД
3.1. 2 варианта
3.1.1. Домен Smb.HttpLog
3.1.1.1. Smb.HttpLog.Persistence, таблица HttpLog.Requests для записи данных о http-запросах
3.1.1.2. Smb.HttpLog.Scheduler для очистки старых записей (старее 2-3 дней) в таблице HttpLog.Requests по расписанию, лучше почаще раз в 20 мин.
3.1.1.3. Smb.HttpLog.Contract - пакет для реализации логирования http-запросов в приложениях типа webApi
3.1.1.3.1. 2 варианта
3.1.1.3.2. Создать дополнительный пакет Smb.Common.ServicesFromConfiguration.HttpLog
3.1.1.3.3. Научиться публиковать пакет Smb.HttpLog.Contract в Nexus
3.1.1.3.4. Подумать над маскированием конфиденциальных данных.
3.1.1.4. Подключение пакета Smb.HttpLog.Contract к целевым api
3.1.1.5. Создать новую БД
3.1.1.6. Мониторинг упавших запросов с помощью Riverbed
3.1.1.7. Метрики объема данных
3.1.2. Домен Smb.Gateway
3.1.2.1. Smb.Gateway.Persistence, таблица HttpLog.Requests для записи данных о http-запросах
3.1.2.2. Smb.Gateway.Scheduler для очистки старых записей в таблице HttpLog.Requests по расписанию, раз в 2-3 дня
3.1.2.3. APS.NET Core Middleware, создающее ILogger с подключением Serilog.Sinks.SqlServer как Singleton
3.1.2.3.1. Используем в самом начале Pipeline
3.1.2.3.2. Логирование данных о запросе через Serilog.Sinks.SqlServer напрямую в таблицу
3.1.2.4. Метрики объема данных
3.1.2.5. Мониторинг упавших запросов с помощью Riverbed