Инженерная поддержка

Начните диагностику с того места, где возникла проблема

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

Маршрут поддержки готов 5 категорий проблем
Сначала проверьте Статус заказа и целевой узел Сингапур, Япония (Токио), Южная Корея (Сеул), Гонконг
Затем проверьте Локальную сеть, адрес, учётные данные и цепочку инструментов Сохраните команды, исходный текст ошибки и время возникновения
Если проблема не решена Отправьте обезличенный контекст Не отправляйте пароли, закрытые ключи или полные платёжные данные
Точка входа для решения проблемы 5 маршрутов поддержки
Работающие узлы Стабильная работа 365 дней в году
Каналы связи Заявка или адрес поддержки
Точка входа для диагностики

Сначала выберите маршрут по типу проблемы

Один и тот же симптом может быть связан с разными уровнями. Сначала определите, относится ли проблема к заказу, подключению, среде, оплате или безопасности, затем соберите необходимые данные.

Заказ и выдача

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

Узнать значение статуса заказа

Удалённое подключение

Подходит при отсутствии изображения в VNC, тайм-ауте SSH, отклонении учётных данных, изменении отпечатка хоста или временной невозможности подключения после перезапуска.

Проверить подключение

Среда разработки

Подходит при несовпадении версии Xcode, неверном пути к инструментам командной строки, недоступных материалах подписи, отсутствии команд Homebrew или недостаточных правах runner.

Проверить среду сборки

Оплата и продление

Подходит для проверки периода, базовой модели, узла, дополнительного SSD или конфигурации Thunderbolt 5, а также для проверки суммы к оплате перед продлением.

Открыть вопросы по оплате

Инцидент безопасности

Подходит при подозрительной активности аккаунта, несанкционированном доступе или раскрытии секретов. Сначала ограничьте доступ и замените соответствующие учётные данные, затем сохраните необходимые обезличенные записи.

Отправить отчёт о безопасности
Статус заказа

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

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

  1. 01

    Ожидает подтверждения

    Данные заказа или результат платежа проверяются. Убедитесь, что модель, период, узел, дополнительные опции и общая сумма в USD совпадают с отправленными данными.

    Ключевые поля: идентификатор заказа, способ оплаты, время создания
  2. 02

    Настройка

    Физический узел настраивается в соответствии с заказом. На этом этапе адрес подключения или учётные данные могут отображаться не полностью; не пытайтесь многократно подключаться по старому адресу.

    Ключевые поля: целевой узел, статус настройки, последнее изменение статуса
  3. 03

    Доступен для подключения

    Данные для подключения созданы. Используйте адрес, описание аккаунта и способ подключения, отображаемые в консоли, и убедитесь, что клиент обращается к правильному узлу.

    Ключевые поля: адрес подключения, узел, дата окончания
  4. 04

    Срок аренды завершён

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

    Ключевые поля: начало и конец аренды, последняя запись о переносе данных
Каталог узлов и результаты в реальном времени ZoomMini M4 Core и ZoomMini M4 Plus доступны в четырёх узлах: Сингапур, Япония (Токио), Южная Корея (Сеул) и Гонконг. Фактическая доступность и результат заказа определяются данными, которые в реальном времени возвращает консоль.
Диагностика подключения

От доступности сети до восстановления сеанса

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

connection-check.sh
$ ping -c 4 <host>
4 packets transmitted, 4 received

$ ssh -vvv user@<host>
debug1: Connecting to <host>
debug1: Server host key verified

$ nc -vz <host> <port>
Connection succeeded
VNC и изображение

Адрес доступен, но изображения нет

Убедитесь, что статус в консоли — «Доступен для подключения», а клиент использует текущий адрес и выданные учётные данные. Закройте старый сеанс и подключитесь заново; для проверки влияния слабой сети снизьте разрешение, качество цвета и количество динамических эффектов.

Посмотреть способы удалённого подключения
Восстановление после перезапуска

После перезапуска временно невозможно подключиться

Подождите завершения запуска системы, затем обновите статус устройства в консоли. Снова получите адрес подключения, удалите сохранённый клиентом старый сеанс и отдельно проверьте VNC и SSH, чтобы определить, связана ли проблема с графическим сеансом или сетью.

Проверить состояние устройства
01

Проверить доступность сети

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

02

Проверить учётные данные

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

03

Обработать изменение отпечатка SSH

Сначала проверьте в консоли, изменился ли целевой адрес. Убедившись, что адрес верен, удалите соответствующую старую запись из known_hosts; не очищайте весь файл.

04

Отличить проблему клиента от проблемы узла

Повторите проверку с другого доверенного устройства или другим способом подключения. Если SSH работает, а VNC — нет, в первую очередь зафиксируйте версию графического клиента и поведение сеанса.

Среда сборки

Проверяйте зависимости цепочки инструментов по порядку

Сначала проверьте фактически выбранный Xcode, затем подпись, менеджер пакетов и права runner. Пропуск предварительной проверки лишает последующие ошибки диагностической ценности.

  1. 01

    Проверить версию и путь выбранного Xcode

    Выполните xcodebuild -version и xcode-select -pи убедитесь, что они соответствуют требованиям проекта и текущему каталогу разработчика.

  2. 02

    Проверить инструменты командной строки

    Выполните clang --version и swift --version. Если инструмент отсутствует или версия не совпадает, сначала исправьте путь выбранного Xcode и повторите проверку.

  3. 03

    Проверить сертификаты и профили provisioning

    Убедитесь, что пользователь сборки может читать необходимые материалы подписи; проверьте действительность сертификата, идентификатор профиля provisioning и настройки проекта. В логах оставляйте только имена и типы ошибок, не добавляя секреты.

  4. 04

    Проверить путь Homebrew

    В среде Apple Silicon обычно нужно убедиться, что /opt/homebrew/bin добавлен в PATH неинтерактивной оболочки, а среда запуска runner совпадает со средой терминала.

  5. 05

    Проверить минимальные права runner

    Убедитесь, что self-hosted runner имеет необходимые права на рабочий каталог, каталог кэша и каталог артефактов сборки. Не скрывайте проблему отдельного пути расширением прав всей системы.

toolchain-check
$ xcodebuild -version
Xcode <required-version>
Build version <build-version>

$ xcode-select -p
/Applications/Xcode.app/Contents/Developer

$ command -v brew
/opt/homebrew/bin/brew

$ test -w "$RUNNER_WORKDIR"
$ echo $?
0

$ xcodebuild -scheme App build
** BUILD SUCCEEDED **
Не определяйте успех только по последней строке Проверяйте также код выхода команд, фактический путь к артефактам, отчёт о тестах и этапы подписи. Попадание в кэш не означает успешную сборку, а доступность runner не означает наличие прав на рабочий каталог.
Мини-словарь терминов

Точное значение восьми часто используемых терминов

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

Физический узел
Аппаратное устройство Apple Silicon, на котором фактически выполняются рабочие нагрузки macOS; оно также является базовым ресурсом, которому соответствуют адрес подключения и статус работы заказа.
Выделенный
Каждому действующему заказу соответствует отдельный физический компьютер; вычислительные ресурсы, память и локальное хранилище не используются совместно с сеансами других клиентов.
Не виртуальная машина
Рабочая нагрузка выполняется непосредственно на физическом Mac mini, соответствующем заказу, а не на виртуальном вычислительном экземпляре, выделенном из общего хоста.
VNC
Протокол удалённого отображения для доступа к графическому интерфейсу macOS, подходящий для работы с окнами, тестирования интерфейса и визуальной настройки.
SSH
Зашифрованный способ подключения для работы в командной строке, автоматизации, передачи файлов и диагностики; подходит для непрерывной интеграции и сценарных процессов.
self-hosted runner
Автоматизированный исполнитель, размещённый на выделенном Mac в облаке и самостоятельно настроенный командой с нужными правами и инструментами для получения и выполнения задач конвейера.
Срок аренды
Согласованный заказом интервал оказания услуги, выбираемый на день, неделю, месяц или квартал. Подключение, проверка продления и перенос данных должны учитывать именно этот интервал.
Узел
Регион обслуживания, где расположено устройство. В текущий каталог входят Сингапур, Япония (Токио), Южная Корея (Сеул) и Гонконг — всего четыре узла.
Вопросы по оплате

Проверьте структуру счёта до продления

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

Как рассчитывается стоимость дня, недели, месяца и квартала?

Заказ оплачивается по одному выбранному при оформлении периоду; разные периоды не объединяются. Перед продлением заново проверьте модель, период, узел, даты начала и окончания аренды и общую сумму.

Как указываются SSD и объединение Thunderbolt 5?

+1TB SSD, +2TB SSD и объединение Thunderbolt 5 указываются отдельно для выбранного периода и не включаются в название базовой модели. Объединение Thunderbolt 5 рассчитывается для каждого устройства; при проверке количества сверяйте связанные устройства.

Какие валюта и способы оплаты доступны?

Все заказы оплачиваются в долларах США (USD). Поддерживаются только USDT-TRC20 и Visa / Mastercard / Amex (через Stripe); фактически доступный шлюз определяется ответом консоли в реальном времени.

Какие поля обязательно проверить перед продлением?

По порядку проверьте идентификатор заказа, базовую модель, выбранный период, целевой узел, дополнительные SSD, количество объединённых устройств Thunderbolt 5, промежуточную сумму в USD, общую сумму к оплате и новую дату окончания аренды. При несовпадении данных отправьте заявку до оплаты.

Что предоставить, если статус не обновился после оплаты?

Укажите идентификатор заказа, способ оплаты, время платежа, текущий статус в консоли и обезличенные данные платёжной операции. Не отправляйте полные данные карты, полные платёжные реквизиты или пароли аккаунта.

Чек-лист заявки

Отправьте данные, с которых можно сразу начать диагностику

В хорошей заявке указано: «какой заказ, какой узел, когда произошло, как воспроизвести и что наблюдается». Перед отправкой обезличьте чувствительные данные.

Обязательный контекст

Структурируйте текст заявки в следующем порядке

  1. 01
    Идентификатор заказа и узел

    Укажите идентификатор заказа из консоли и целевой узел: Сингапур, Япония (Токио), Южная Корея (Сеул) или Гонконг.

  2. 02
    Время возникновения проблемы

    Укажите время первого возникновения и последнего воспроизведения с часовым поясом, а также постоянный или периодический характер проблемы.

  3. 03
    Шаги воспроизведения и ожидаемый результат

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

  4. 04
    Среда и способ подключения

    Укажите локальную систему, версию клиента, VNC или SSH, версии macOS и Xcode, а также использовалась ли прокси-сеть.

  5. 05
    Обезличенные логи

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

Не отправляйте

Секретные данные не нужны для диагностики

Не отправляйте пароли, закрытые ключи, коды восстановления, токены репозиториев, секреты подписи, полные платёжные реквизиты или необезличенные данные клиентов. При подозрении на раскрытие секрета немедленно замените его.

Подробнее о границах защиты данных
Канал отправки

Сохраняйте контекст через заявку в консоли

По вопросам действующих заказов в первую очередь отправляйте заявку из консоли — так проще связать её со статусом заказа. Если войти невозможно, используйте support@zoommini.com и укажите категорию проблемы в теме.

Создать заявку в консоли
Подготовка к отправке

Добавьте контекст заказа, чтобы диагностика началась с полезных данных

Срок обработки зависит от сложности проблемы и необходимых проверок. После отправки статус запроса можно посмотреть в консоли; если войти невозможно, используйте адрес поддержки.