# Отправка логов разработчикам

{% hint style="info" %}
&#x20;**Анализ логов:** Если вы обнаружили ошибку в софте просьба сообщить о ней в течении **48 часов** для того чтоб мы могли просмотреть логи и определить причину.
{% endhint %}

Для сбора логов мы используем софт **ElasticSearch + LogStash** а также **Grafana + vmagent** для сбора аналитики по работе сервера\
Данные логи не содержат приватных ключей или паролей ваших клиентов или админов и сбор ведется исключительно в целях обнаружения ошибок. \
**Логи хранятся на нашем сервере от 14 дней до 10 месяцев в зависимости от типа логов и доступных ресурсов BoxExchanger для хранения логов.**

## Отключение отправки логов и метрик:

Если вы хотите отключить отправку логов работы вашего сервера на наш сервер вам необходимо выполнить несколько команд на вашем сервере на котором у вас расположен API сервис.&#x20;

{% hint style="info" %}
При отключении логов наша команда не сможет анализировать работу вашего сервера и обнаруживать ошибки без доступа к вашему серверу.
{% endhint %}

{% tabs %}
{% tab title="Docker" %}

1. Войти в папку: `/home/runner/api_server/`
2. Добавить в файл `.env` строки:

   <pre class="language-bash" data-title="# .env"><code class="lang-bash">SEND_LOGS=false
   SEND_METRICS=false
   </code></pre>
3. Отредактировать файл `docker-compose.yml`
4. Удалить сервисы `fluent-bit` , `vmagent`  и `cadvisor`
5. Обновить процессы

   ```bash
   docker compose up -d --remove-orphans
   ```

{% endtab %}

{% tab title="Sources" %}

1. Перейдите в деректорию с исходким кодом `exchanger-api`
2. Отройте файл `.env`&#x20;
3. Добавьте в конце файла строку:

   <pre class="language-bash" data-title="# .env"><code class="lang-bash">SEND_LOGS=false
   SEND_METRICS=false
   </code></pre>
4. Перезапустите сервис `$projectName-logstash` или все сервисы:

   ```bash
   pm2 restart all 
   ```

{% hint style="warning" %}
Сервис который отвечает за отправку логов называется : *$projectName***-logstash**&#x20;

`pm2 status`
{% endhint %}
{% endtab %}
{% endtabs %}

## Использование Self hosted ELK:

{% hint style="warning" %}
**Внимание:** Для использование своих серверов у вас должен быть установлен и сконфигурирован ELK, **обратите особое внимание на безопасность установки вашего окружения ELK.**
{% endhint %}

{% hint style="info" %}
При использовании собственных серверов ELK наша команда не сможет анализировать работу вашего сервера и обнаруживать ошибки без доступа к вашему серверу или ELK.
{% endhint %}

{% tabs %}
{% tab title="Configuration" %}

1. Внесите изменения в файл `/home/runner/api_server/.env` :

   <pre class="language-bash" data-title="# .env"><code class="lang-bash">LOGSTASH_URL="https://logstash.hostname"
   </code></pre>

   Данные параметры должны быть установлены в соотвествии с вашим окружением.&#x20;
2. Перезапустить сервис сбора логов:

   ```bash
   docker restart fluent-bit
   ```

{% endtab %}
{% endtabs %}
