Как безопасно отправить HAR и отчёт об ошибке разработчику

Как собрать короткий отчёт о сбое и приложить HAR без лишних данных. Что проверить перед передачей архива и когда лучше обойтись без него.

Сетевую ошибку проще передать разработчику как короткий отчёт: что нажали, что ожидали, что получили и когда это произошло. HAR — архив HTTP-запросов браузера — добавляйте, если для разбора нужна последовательность обращений, а не только снимок экрана.

Не отправляйте исходный архив автоматически. Даже экспорт с пометкой sanitized требует проверки: задача — сохранить технический след сбоя, исключив пароли, токены и данные клиентов.

Сначала составьте отчёт без архива

Для владельца сайта или менеджера, который передаёт проблему подрядчику, полезен такой шаблон:

  • Где: публичный адрес страницы; секретные параметры ссылки заменены на [REDACTED].
  • Когда: точное время и часовая зона, а не «сегодня утром».
  • Условия: браузер и его версия, устройство, обычная или корпоративная сеть; до входа или после него.
  • Шаги: откуда перешли и какое действие вызвало ошибку.
  • Ожидание и результат: например, «после поиска должен появиться список, но блок остаётся пустым».
  • Симптом: дословный код ошибки или HTTP-статус, если он виден.
  • Повторяемость: каждый раз или эпизодически, на одной странице или нескольких.

Не прикладывайте пароль от кабинета и не просите клиента повторять оплату ради записи. Если ошибка касается заказа, используйте согласованный тестовый сценарий без реального списания и отправки заявок.

Когда HAR нужен, а когда достаточно симптомов

Архив полезен, если страница загрузилась, но отдельный запрос завершился ошибкой, завис или прошёл через неожиданный редирект. Он помогает увидеть последовательность запросов и сопоставить её с действием пользователя.

Если браузер вовсе не открыл сайт и показал ошибку DNS или TLS, начните с точного текста предупреждения и условий подключения. HAR не гарантирует подробностей о таком отказе и не заменяет серверные журналы; отсутствие HTTP-кода нельзя записывать как ответ 500.

Если сообщение уже содержит технический request ID, передайте его вместе со временем через закрытый канал задачи. Дальнейший шаг для команды описан в руководстве как найти запрос в логах сервера.

Как записать короткий HAR в Chrome

  1. Подготовьте безопасный сценарий на тестовых данных. Если сбой возникает после входа, сначала авторизуйтесь, а запись начните уже перед проблемным действием.
  2. Откройте инструменты разработчика и вкладку Network. Очистите список запросов; при переходах между страницами включите Preserve log.
  3. Воспроизведите только нужный эпизод и остановите запись. Не оставляйте в архиве длительную работу в кабинете.
  4. Выберите Export HAR (sanitized). Название и расположение команды могут отличаться в зависимости от версии браузера.

По документации Chrome DevTools, очищенный экспорт исключает, в частности, заголовки Cookie, Set-Cookie и Authorization. Не выбирайте вариант with sensitive data для обычной передачи ошибки.

Не меняйте одновременно кэш, расширения и сеть: иначе запись может описывать уже другие условия. Если нужен сравнительный запуск, сохраните его отдельно и подпишите, что именно изменилось.

Что проверить перед отправкой

Microsoft предупреждает, что браузерные трассировки могут содержать чувствительные сведения, включая токены авторизации. Считайте sanitized первым этапом очистки, а не доказательством безопасности всего файла.

Откройте копию HAR локально в текстовом редакторе. Проверьте не только заголовки, но и адреса запросов, параметры, тела отправленных форм и ответов:

  • Нет ли паролей, ключей API, кодов подтверждения и ссылок восстановления доступа.
  • Не попали ли email, телефоны, адреса, содержимое заказов или переписка.
  • Нет ли токенов в URL, нестандартных заголовках или JSON-полях.
  • Не содержит ли ответ приватный HTML или данные другого пользователя.

Ненужные чувствительные значения замените на [REDACTED], сохранив корректный JSON. Оставьте метод, обезличенный путь, время, длительность и код ответа — именно они нужны для первичного сопоставления; если удалили важный участок, сообщите об этом в отчёте.

Поиск слов password или token не доказывает отсутствие секретов: поля могут называться иначе, а содержимое — быть закодировано. Если вы не можете уверенно проверить архив, отправьте только отчёт и попросите разработчика согласовать безопасный сбор на тестовом стенде.

Скриншот и Copy as cURL тоже нужно очищать

На снимке экрана скройте персональные данные и приватные адреса. Команда Copy as cURL может содержать сведения текущего запроса: не вставляйте её целиком в публичный чат или трекер.

Очищать нужно сам передаваемый файл, а не только его имя. Не загружайте исходный HAR в случайный онлайн-просмотрщик; используйте локальную проверку и согласованный закрытый канал.

Передайте пакет и определите следующий шаг

В задаче укажите, какой шаг попал в архив и какое время в отчёте ему соответствует. Согласуйте получателя, доступ к вложению и срок удаления; после очистки проверьте, что отправляете именно подготовленную копию.

Если секрет уже ушёл постороннему, одного удаления вложения недостаточно: сообщите ответственному за доступы, чтобы он отозвал затронутую сессию или заменил ключ. Не пересылайте архив дальше для обсуждения утечки.

Мониторинг Web-Puls помогает заметить внешнюю недоступность, но не воспроизводит работу пользователя внутри авторизованного кабинета. Если своей команды для разбора нет, можно отправить заявку на диагностику: начните с публичного URL, времени и описания симптомов без секретов; специалист оценит задачу и предложит формат работ.

Мониторинг сайтов

Разбираем конфликт Allow и Disallow на примерах: от выбора группы робота до проверки точного URL. Показываем, как исправить правило и не открыть лишние разделы.

Проверьте свой сайт прямо сейчас

Введите адрес сайта: Web-Puls покажет HTTP-код, время ответа и базовую диагностику. Для постоянного контроля можно подключить мониторинг.

Нужна помощь с диагностикой ошибки?

Опишите симптомы в короткой заявке: URL, код ответа, время появления и что менялось перед сбоем. Специалист поддержки оценит задачу и предложит формат работ.