﻿# Диагностика и решение проблем в ELMA365 Enterprise

> [HTML Version](enterprise-troubleshooting.html)

С помощью диагностики можно выявить текущее состояние системы, устранить существующие ошибки и оптимизировать работу.

Процесс диагностики и решения проблем состоит из трёх этапов:

1. [Сбор диагностической информации](#collect-diagnostic-info).

2. [Применение новых параметров для ELMA365 Enterprise](#apply-new-parameters-enterprise).

3. [Формирование логов и проверка статуса сервисов](#generate-logs-check-status).

Обратите внимание, что во время процесса диагностики и решения проблем внесения изменений происходят в уже существующий конфигурационный файл \[OBJECT\], который был получен и заполнен при установке ELMA365 Enterprise. Необдуманное изменение параметров в этом файле может привести к потере работоспособности приложения ELMA365.

````
Начало внимание

````
Перед внесением изменений в файл \[OBJECT\] рекомендуем создать его резервную копию.

````
Конец внимание

````
Если файл \[OBJECT\] был утрачен, получите параметры текущей установки ELMA365 и сохраните их в этот файл. Для этого выполните команду:

````
helm get values elma365 \[-n namespace\] > values-elma365.yaml

## ````
Шаг 1. Сбор диагностической информации

Чтобы собрать данные о состоянии системы, включите отладку платформы. Для этого установите параметр \[OBJECT\]** **в режиме \[OBJECT\]:

````
debug: true

## ````
Шаг 2. Применение новых параметров для ELMA365 Enterprise

Вы можете обновить параметры приложения ELMA365 двумя способами: [через интернет](#update-via-internet) или [без доступа к сети](#update-offline).

### Обновление параметров через интернет

1. Определите версию чарта, с помощью которого было установлено или обновлено приложение ELMA365:

````
helm show chart elma365/elma365

````
Пример выполнения команды:

**(change-settings-enterprise-1.png)**

В результате выполнения команды информация о версии чарта будет указана в строке \[OBJECT\]. Сохраните это значение для выполнения следующего шага.

2. Обновите параметры приложения ELMA365. Для этого используйте следующую команду, указав в ней для флага \[OBJECT\] установленную версию чарта вместо \[OBJECT\]:

````
helm upgrade --install elma365 elma365/elma365 -f values-elma365.yaml --version <elma365-chart-version> --timeout=30m --wait \[-n namespace\]

### ````
Обновление параметров без доступа в интернет

Перейдите в каталог с чартом, с помощью которого было установлено или обновлено приложение ELMA365, и выполните команду:

````
helm upgrade --install elma365 ./elma365 -f values-elma365.yaml --timeout=30m --wait \[-n namespace\]

````
Обновление параметров занимает 10-30 минут. Дождитесь его завершения.

## Шаг 3. Формирование логов и проверка статуса сервисов

### Получение логов 

- Если вам нужно собрать логи со всех сервисов приложения, выполните команду:

````
kubectl logs -l tier=elma365 --all-containers \[-n namespace\] > logs.txt

- ````
Для просмотра логов отдельного сервиса вместо \[OBJECT\] укажите нужный сервис:

````
kubectl logs -l app=\[name\] \[-n namespace\]

Начало примера

````
Пример:

````
kubectl logs -l  app=main -n elma365

Конец примера

### ````
Просмотр логов в реальном времени

Чтобы отслеживать логи в реальном времени добавьте опцию \[OBJECT\]:

````
kubectl logs -l app=\[name\] -f \[-n namespace\]

Начало примера

````
Пример:

````
kubectl logs -l app=main -f -n elma365

Конец примера

### ````
Проверка состояния сервисов

Для того чтобы убедиться, что все сервисы работают корректно, выполните команду:

````
kubectl get pod \[-n namespace\]

````
Результат будет сформирован в виде таблицы со списком сервисов. Сервисы должны быть в статусе \[OBJECT\], а задачи в статусе \[OBJECT\].

Для более детального анализа рекомендуем выполнить установку необходимых средств [мониторинга](install-monitoring-tools.md), [логирования](install-loki.md) и анализа [трассировок](install-tempo.md).