Чек-лист перед обращением в техподдержку приложения (IIS + MsSQL)

  • Доступен ли физически сервер с IIS?
  • Доступен ли физически сервер с MsSQL?
  • Доступен ли удаленно сервер с IIS (через RDP, SSH, KVM)?
  • Доступен ли удаленно сервер с MsSQL (через RDP, SSH, KVM)?

Ответили «Нет»? → Проблема в инфраструктуре или доступе к серверам.

  • Может ли сервер IIS успешно пропинговать сервер MsSQL по IP-адресу и DNS-имени?
  • Может ли сервер MsSQL успешно пропинговать сервер IIS по IP-адресу и DNS-имени?

Не работает пинг? → Проблема с сетью или настройками фаервола.

  • Разрешен ли на фаерволе сервера MsSQL входящий трафик на порт MsSQL (обычно 1433) с IP-адреса сервера IIS?
  • Разрешен ли на фаерволе сервера IIS исходящий трафик на порт MsSQL сервера БД?
  • Проверены ли корпоративные фаерволы/маршрутизаторы между серверами? Не блокируют ли они порты 1433, 443?
  • ЦПУ (CPU): Не превышена ли постоянная загрузка ЦПУ (Загрузка менее 90% в течение последних 5 мин или во время обнаружения проблемы)? (Проверить через Диспетчер задач, top, htop, Zabbix).
  • Оперативная память (RAM): Достаточно ли свободной оперативной памяти (Загрузка менее 90% в течение последних 5 мин или во время обнаружения проблемы)? (Проверить через Диспетчер задач, free -m, vmstat, Performance Monitor, Zabbix).
  • Есть свободное место на системном диске (обычно C:)? Свободно не менее 10%.
  • Есть свободное место на диске, где установлено ваше приложение? Свободно не менее 10%.
  • Есть свободное место на диске, где расположены базы данных MsSQL (PGDATA)? Свободно не менее 10%.
  • Есть свободное место на диске, где расположены логи приложения, IIS и MsSQL? Свободно не менее 10%.
  • Дисковые операции (I/O): Наблюдается постоянная загрузка дисков или дисковой очереди? (Загрузка более 90% в течение последних 5 минут или во время обнаружения проблемы. Проверить через Диспетчер задач, Performance Monitor, iostat, Zabbix).

Ответили «Нет» на проблемы с ресурсами? → Требуется вмешательство Администратора для оптимизации/расширения ресурсов.

  • Запущена и работает служба W3WP.exe?
  • Запущен и работает сайт/пул приложений (Application Pool), связанный с вашим приложением в IIS Manager?

Не запущен? Попробуйте запустить вручную. Упал сразу? Проверьте логи IIS и Event Viewer на наличие ошибок. Исправьте ошибки.

Ответили «Нет» или службы не запускаются? → Проблема с IIS или конфигурацией сайта на стороне клиента.

Проверьте через services.msc или PowerShell запущены ли службы:

  • служба SQL Server (MSSQLSERVER) — основная служба для экземпляра по умолчанию;
  • служба агента SQL Server (SQLSERVERAGENT) — отвечает за выполнение заданий (бэкапы, сбор статистики и т.д.);
  • служба обозревателя SQL Server (SQLBROWSER) — нужна для подключения к именованным экземплярам;
  • служба SQL Server Reporting Services (SSRS) и SQL Server Integration Services (SSIS) — если используются.

Не запущена? Попробуйте запустить вручную. Упала сразу? Проверьте логи MsSQL (обычно C:\Program Files\Microsoft SQL Server\MSSQL<версия>.<имя_экземпляра>\MSSQL\Log) на наличие ошибок. Исправьте ошибки.

  • Можно ли подключиться к серверу MsSQL с сервера IIS с помощью стандартного клиента используя те же параметры подключения (хост, порт, имя БД, пользователь, пароль), что указаны в конфигурации вашего приложения на IIS?
  • Проверьте пароль. Не менялся ли он недавно? Если менялся, то исправьте в конфигурационном файле client.config в строке подключения.

Не получается подключиться? → Проблема с доступом к БД: неверные параметры, блокировка фаерволом, проблемы с аутентификацией на стороне клиента.

  • Проверьте размер базы данных приложения. Не приблизился ли он к лимитам диска?
  • Проверьте, не переполнены ли диски логами транзакций MsSQL?
  • Работают ли запланированные задачи резервного копирования БД? Не заполняют ли бэкапы диски?

Свободное пространство должно быть не менее 10% диска.

Ответили «Нет»? → Проблема с базами данных на стороне клиента.

  • Истек ли срок действия SSL-сертификата, привязанного к сайту в IIS?
  • Корректно ли он привязан к правильному доменному имени?
  • Не вызывает ли ошибок при доступе в браузере?

Ответили «Нет»? → Проблема с SSL сертификатом на стороне клиента.

  • Запущена ли служба nginx.service?
  • Не блокируется ли трафик по 443 порту?
  • Не вносились ли изменения в конфигурацию NGINX?

Ответили «Нет» или службы не запускаются? → Проблема с PROXY/NGINX на стороне клиента.

  • Имеет ли пользователь пула приложений (Application Pool Identity) IIS права на чтение и выполнение (Read & Execute) на папке с файлами вашего приложения?
  • Имеет ли этот пользователь права записи (Write) в папки, куда приложению нужно писать (логи, временные файлы, загрузки и т.д.)?

Ответили «Нет» → Проблема с правами доступа на стороне клиента.

  • Не вносились ли недавно изменения в файлы конфигурации приложения (например, client.config, appsettings.json) на сервере IIS?
  • Не менялись ли параметры подключения к БД, URL-адреса внешних сервисов или другие критические настройки?

Ответили «Нет» → Проверьте конфигурационные файлы. Внесите корректные параметры.

  • Проверены ли логи приложения на предмет явных ошибок? (Ищите слова ERROR, Exception, FATAL, Critical).

Если обнаружили ошибки, исправьте.

  • Проверены ли логи IIS (обычно %SystemDrive%\inetpub\logs\LogFiles\W3WP*) на предмет ошибок HTTP (статусы 5xx, 4xx) при обращении к вашему приложению?

Если обнаружили ошибки, исправьте.

  • Можете ли вы четко описать шаги, как воспроизвести проблему?
  • Проявляется ли проблема постоянно или эпизодически?
  • У всех пользователей или только у некоторых?
  • На всех браузерах/устройствах или только на определенных?
  • Производились ли недавно (до появления проблемы):
  • Обновления ОС на серверах IIS или MsSQL?
  • Обновления серверного ПО (IIS, .NET Runtime, MsSQL)?
  • Установка/обновление антивируса, фаервола, ПО мониторинга?
  • Изменения в сетевой инфраструктуре (маршрутизаторы, коммутаторы, VPN)?
  • Изменения в политиках безопасности домена/серверов?
  • Обновление драйверов оборудования?
  • Физические работы в серверной (обесточивание, перезагрузка оборудования)?
  1. Соберите результаты проверки: По каждому пункту запишите, что проверено и какой результат (Да/Нет, значение метрики, текст ошибки).
  2. Соберите логи:
    • логи приложения за период возникновения проблемы;
    • логи IIS (все файлы за период) для сайта приложения;
    • логи MsSQL (MsSQL-XX-main.log и другие за период) с сервера БД.
  3. Конфигурационные файлы:
    • файл конфигурации БД;
    • файл конфигурации приложения.
  4. Системные журналы (Event Viewer) с обоих серверов (Windows: Приложение и Система; Linux: syslog, journalctl) за период проблемы. Ищите критические ошибки и предупреждения.
  5. Подготовьте точное описание:
    • Что именно не работает? (Конкретная функциональность, ошибка в интерфейсе, полная недоступность).
    • Когда началась проблема?
    • Как воспроизвести проблему? (Четкие шаги).
    • Каковы результаты проверки по этому чек-листу (особенно где были проблемы)?

Вы отвечаете за работоспособность и конфигурацию серверного оборудования, ОС, сети, IIS (как платформы), MsSQL (как СУБД) и базовой инфраструктуры.

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

Предоставление полной информации (описание, шаги воспроизведения, логи, результаты этого чек-листа) с самого начала обращения ускорит решение вашей проблемы.

Если после проверки ВСЕХ пунктов чек-листа проблема не найдена на стороне клиента или явно указывает на ошибку в самом приложении, тогда смело обращайтесь в техническую поддержку, приложив все собранные данные!