Clod Clash

Отчёт для поддержки

Как отдать поддержке нужное, не отдав лишнего.

Отчёт одной кнопкой

Настройки → Основные → «Отчёт для поддержки» (значок копирования); тот же отчёт кладёт кнопка «Скопировать логи для поддержки» в любом уведомлении об ошибке. В буфер обмена кладётся готовый текст: версия приложения и системы, режим работы ядра, настройки подключения, состояние подписки (имя, трафик, срок, какие заголовки прислала панель), что фильтр заглушек выбросил в последний раз и хвосты логов приложения и ядра.

Его можно вставить в чат поддержки не глядя:

  • от любого адреса остаётся только схема и хост — путь, запрос и user:pass@ заменены на ***;
  • значения после secret, token, password, uuid, authorization, x-hwid и похожих ключей замаскированы, как и всё после Bearer/Basic;
  • длинные случайные строки и hex-последовательности вырезаны;
  • домашний каталог заменён на ~, имени пользователя в путях нет;
  • строки ядра о соединениях (куда вы ходили) в отчёт не попадают; от ошибок соединений остаются только узел, порт и текст ошибки, без адресов.

Намеренно остаётся домен провайдера — без него отчёт бесполезен — и цифры состояния подписки.

Архив логов

Если поддержке нужен полный лог, а не хвост: «Выгрузить логи в архив» в Продвинутые настройки → Обслуживание. Приложение спросит, куда сохранить .zip, и положит в него отчёт и файлы логов приложения и ядра (от больших — последние 8 МБ) — каждый уже пропущен через ту же маскировку, строки о соединениях выброшены, а от их ошибок остались узел, порт и текст ошибки.

Маскировка стоит и в самом журнале: файлы логов на диске уже пишутся без токенов и адресов подписки.

Идентификатор устройства

В подсказке рядом с переключателем Настройки → Основные → «Идентификация устройства» видно ровно то, что уходит панели: x-hwid, x-device-os, x-ver-os, x-device-model и User-Agent. Идентификатор отправляется только на адреса подписки — основной и запасной.

Он считается из машинного идентификатора системы:

СистемаИсточник
WindowsHKLM\SOFTWARE\Microsoft\Cryptography\MachineGuid
macOSIOPlatformUUID
Linux/etc/machine-id, если нет — /var/lib/dbus/machine-id

Значение солится и хешируется SHA-256, наружу уходят первые 32 hex-символа. Сам машинный идентификатор и имя компьютера никуда не отправляются. Результат запоминается, поэтому не меняется при обновлении приложения. Если системного идентификатора нет, берётся случайный и тоже запоминается.

Выключенная идентификация убирает все четыре x-* разом; User-Agent уходит всегда — по нему панель узнаёт клиент. Панель с лимитом устройств тогда может отказать — приложение предложит включить идентификацию обратно.

On this page