| Бесконечные `cancelRouteItems` в логах | Зацикленный условный переход | Исправить маршрут в Configurator; остановить через REST API |
| `Access denied` при сохранении формы | Фрагментация данных файлов (asf_attachment) | POST `/Synergy/rest/asforms/form/attachments/clear` |
| `Cannot get pdf pages info` + GhostScript exit code 1 | Неподходящая версия GhostScript | Установить версию `9.27~dfsg-2+deb10u5` |
| `NullPointerException` в `arta.reports` + NULL в `compiledbinary` | Битая печатка IReport | Найти и удалить/заменить `.jrxml` в Configurator |
| `ES rejected execution exception` | Переполнение bulk-очередей Elasticsearch | Увеличить `thread_pool.bulk.queue_size` в `elasticsearch.yml` |
| `Access denied for user 'root'@'localhost'` при старте | Тип аутентификации MySQL — `auth_socket` | `ALTER USER ... IDENTIFIED WITH mysql_native_password` |
---
### Шаг 5 — Определение обходного пути
Перед закрытием инцидента обязательно:
```
Найден обходной путь?
│
├── ДА ──► Зафиксировать. Передать заявителю.
│ Параллельно передать дефект в разработку (если подтверждён).
│
└── НЕТ ──► Зафиксировать отсутствие обходного пути.
Оценить критичность.
При критической ошибке — запросить доступ к окружению:
security_ctkdrt@arta.pro
```
---
## Уровень 3-Б — Диагностика консультации
```
Тип консультации?
│
├──► Локализация и диагностика производительности
│ → Применить: Diagnostic Decision Tree (данный документ)
│ Дать архитектурные рекомендации и паттерны использования
│ Разобрать типовые ошибки проектирования
│
├──► Сопровождение обновлений
│ → Проверить совместимость версий компонентов
│ Рекомендации по миграции данных и приложений
│ Диагностика постобновленческих проблем
│
└──► Консультационное обучение
→ Разъяснение технических решений
Демонстрация типовых сценариев
Ссылки на документацию и учебные материалы
```
---
## Итоговая схема принятия решений
```
ВХОДЯЩИЙ ЗАПРОС
│
▼
[1] Есть описание проблемы? ──НЕТ──► ОТКЛОНИТЬ
│ ДА
▼
[2] Это ошибка штатного функционала? ──НЕТ──► [КОНСУЛЬТАЦИЯ]
│ ДА │
▼ ▼
[ИНЦИДЕНТ] Есть часы поддержки?
│ НЕТ ──► Уведомить, приостановить
▼ ДА ──► Диагностика консультации
[3] Предоставлены все данные? ──НЕТ──► Запросить, приостановить
│ ДА
▼
[4] Окружение соответствует требованиям? ──НЕТ──► Проблема инфраструктуры
│ ДА
▼
[5] Локализация по слою:
Инфраструктура / MySQL / ES+Cassandra / JBoss / Core
│
▼
[6] Анализ логов + дампы (thread / heap)
│
▼
[7] Сопоставление с известными проблемами
│
▼
[8] Воспроизводится на чистом стенде? ──НЕТ──► Проблема конфигурации/данных
│ ДА
▼
[9] Зафиксировать дефект + обходной путь ──► ЗАКРЫТЬ / ПЕРЕДАТЬ В РАЗРАБОТКУ
```
---
> **Примечание.** Дерево принятия решений является живым документом и должно дополняться по мере выявления новых типовых проблем и паттернов диагностики.