> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Мониторинг журналов хоста EC2 в ClickStack

> Мониторинг журналов хоста EC2 в ClickStack

export const TrackedLink = ({href, eventName, children, ...rest}) => {
  const handleClick = () => {
    try {
      if (typeof window !== "undefined" && window.galaxy && eventName) {
        window.galaxy.track(eventName, {
          interaction: "click"
        });
      }
    } catch (e) {}
  };
  return <a href={href} onClick={handleClick} {...rest}>
      {children}
    </a>;
};

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

<Info>
  **Вкратце**

  Собирайте и визуализируйте системные логи EC2 в ClickStack с помощью OpenTelemetry Collector с автоматическим обогащением метаданными EC2 (ID экземпляра, регион, AZ, тип инстанса). Включает демо-набор данных и преднастроенный дашборд.
</Info>

<div id="existing-ec2">
  ## Интеграция с существующим экземпляром EC2
</div>

В этом разделе описано, как установить OpenTelemetry Collector на экземпляры EC2, чтобы собирать системные журналы и отправлять их в ClickStack с автоматическим обогащением метаданными EC2. Эта распределенная архитектура подходит для production и легко масштабируется на несколько экземпляров.

<Info>
  **ClickStack запущен на том же экземпляре EC2?**

  Если ClickStack работает на том же экземпляре EC2, журналы которого вы хотите отслеживать, можно использовать подход all-in-one, аналогичный руководству [Generic Host Logs](/docs/ru/clickstack/integration-examples/host-logs). Подмонтируйте `/var/log` в контейнер ClickStack и добавьте процессор `resourcedetection` в свою пользовательскую конфигурацию, чтобы автоматически получать метаданные EC2. В этом руководстве рассматривается более распространенная для production-развертываний распределенная архитектура.
</Info>

Если вы хотите протестировать интеграцию журналов хоста EC2 перед настройкой production-экземпляра, воспользуйтесь нашей предварительно настроенной конфигурацией и примером данных в разделе ["Демо-набор данных"](/docs/ru/clickstack/integration-examples/host-logs/ec2#demo-dataset).

<div id="prerequisites">
  ##### Предварительные требования
</div>

* Запущенный экземпляр ClickStack (может быть развернут в собственной инфраструктуре, в облаке или локально)
* Запущенный экземпляр EC2 (Ubuntu, Amazon Linux или другой дистрибутив Linux)
* У экземпляра EC2 есть сетевой доступ к конечной точке OTLP ClickStack (порт 4318 для HTTP или 4317 для gRPC)
* Есть доступ к службе метаданных экземпляра EC2 (по умолчанию включена)

<Steps>
  <Step title="Убедитесь, что метаданные EC2 доступны" id="verify-metadata">
    На экземпляре EC2 убедитесь, что служба метаданных доступна:

    ```bash theme={null}
    # Get metadata token (IMDSv2)
    TOKEN=$(curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600")

    # Verify instance metadata
    curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/instance-id
    curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/placement/region
    curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/instance-type
    ```

    Вы увидите ID экземпляра, регион и тип инстанса. Если эти команды завершаются ошибкой, проверьте следующее:

    * Сервис метаданных экземпляра включен
    * IMDSv2 не блокируется группами безопасности или сетевыми ACL
    * Вы запускаете эти команды непосредственно из самого экземпляра EC2

    <Note>
      Метаданные EC2 доступны по адресу `http://169.254.169.254` изнутри экземпляра. Процессор OpenTelemetry `resourcedetection` использует эту конечную точку, чтобы автоматически дополнять журналы облачным контекстом.
    </Note>
  </Step>

  <Step title="Убедитесь, что файлы syslog присутствуют" id="verify-syslog">
    Убедитесь, что ваш инстанс EC2 записывает файлы syslog:

    ```bash theme={null}
    # Ubuntu instances
    ls -la /var/log/syslog

    # Amazon Linux / RHEL instances
    ls -la /var/log/messages

    # View recent entries
    tail -20 /var/log/syslog
    # or
    tail -20 /var/log/messages
    ```
  </Step>

  <Step title="Установите OpenTelemetry Collector" id="install-collector">
    Установите дистрибутив OpenTelemetry Collector Contrib на своем экземпляре EC2:

    ```bash theme={null}
    # Download the latest release
    wget https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.114.0/otelcol-contrib_0.114.0_linux_amd64.tar.gz

    # Extract and install
    tar -xvf otelcol-contrib_0.114.0_linux_amd64.tar.gz
    sudo mv otelcol-contrib /usr/local/bin/

    # Verify installation
    otelcol-contrib --version
    ```
  </Step>

  <Step title="Создание конфигурации коллектора" id="create-config">
    Создайте файл конфигурации для OpenTelemetry Collector по пути `/etc/otelcol-contrib/config.yaml`:

    ```bash theme={null}
    sudo mkdir -p /etc/otelcol-contrib
    ```

    Выберите конфигурацию в соответствии с вашим дистрибутивом Linux:

    <Tabs>
      <Tab title="Современные версии Linux (Ubuntu 24.04+)">
        ```yaml theme={null}
        sudo tee /etc/otelcol-contrib/config.yaml > /dev/null << 'EOF'
        receivers:
          filelog/syslog:
            include:
              - /var/log/syslog
              - /var/log/**/*.log
            start_at: end
            operators:
              - type: regex_parser
                regex: '^(?P<timestamp>\S+) (?P<hostname>\S+) (?P<unit>\S+?)(?:\[(?P<pid>\d+)\])?: (?P<message>.*)$'
                parse_from: body
                parse_to: attributes
              
              - type: time_parser
                parse_from: attributes.timestamp
                layout_type: gotime
                layout: '2006-01-02T15:04:05.999999-07:00'
              
              - type: add
                field: attributes.source
                value: "ec2-host-logs"

        processors:
          resourcedetection:
            detectors: [ec2, system]
            timeout: 5s
            override: false
            ec2:
              tags:
                - ^Name
                - ^Environment
                - ^Team
          
          batch:
            timeout: 10s
            send_batch_size: 10000

        exporters:
          otlphttp:
            endpoint: "http://YOUR_CLICKSTACK_HOST:4318"
            headers:
              authorization: "${env:CLICKSTACK_API_KEY}"

        service:
          pipelines:
            logs:
              receivers: [filelog/syslog]
              processors: [resourcedetection, batch]
              exporters: [otlphttp]
        EOF
        ```
      </Tab>

      <Tab title="Старые версии Linux (Amazon Linux 2, RHEL, старые версии Ubuntu)">
        ```yaml theme={null}
        sudo tee /etc/otelcol-contrib/config.yaml > /dev/null << 'EOF'
        receivers:
          filelog/syslog:
            include:
              - /var/log/messages
              - /var/log/**/*.log
            start_at: end
            operators:
              - type: regex_parser
                regex: '^(?P<timestamp>\w+ \d+ \d{2}:\d{2}:\d{2}) (?P<hostname>\S+) (?P<unit>\S+?)(?:\[(?P<pid>\d+)\])?: (?P<message>.*)$'
                parse_from: body
                parse_to: attributes
              
              - type: time_parser
                parse_from: attributes.timestamp
                layout: '%b %d %H:%M:%S'
              
              - type: add
                field: attributes.source
                value: "ec2-host-logs"

        processors:
          resourcedetection:
            detectors: [ec2, system]
            timeout: 5s
            override: false
            ec2:
              tags:
                - ^Name
                - ^Environment
                - ^Team
          
          batch:
            timeout: 10s
            send_batch_size: 10000

        exporters:
          otlphttp:
            endpoint: "http://YOUR_CLICKSTACK_HOST:4318"
            headers:
              authorization: "${env:CLICKSTACK_API_KEY}"

        service:
          pipelines:
            logs:
              receivers: [filelog/syslog]
              processors: [resourcedetection, batch]
              exporters: [otlphttp]
        EOF
        ```
      </Tab>
    </Tabs>

    <br />

    **Замените следующее в конфигурации:**

    * `YOUR_CLICKSTACK_HOST`: Имя хоста или IP-адрес, по которому доступен ClickStack
    * Для локального тестирования можно использовать SSH-туннель (см. [раздел «Устранение неполадок»](#troubleshooting))

    Данная конфигурация:

    * Считывает системные файлы журналов из стандартных путей (`/var/log/syslog` для Ubuntu, `/var/log/messages` для Amazon Linux/RHEL)
    * Разбирает формат syslog для извлечения структурированных полей (временная метка, hostname, unit/service, PID, сообщение)
    * **Автоматически определяет и добавляет метаданные EC2** с помощью процессора `resourcedetection`
    * При наличии также может включать теги EC2 (Name, Environment, Team)
    * Отправляет журналы в ClickStack по OTLP HTTP

    <Info>
      **Обогащение метаданными EC2**

      Процессор `resourcedetection` автоматически добавляет следующие атрибуты в каждый лог:

      * `cloud.provider`: "aws"
      * `cloud.platform`: "aws\_ec2"
      * `cloud.region`: регион AWS (например, "us-east-1")
      * `cloud.availability_zone`: зона доступности (AZ) (например, "us-east-1a")
      * `cloud.account.id`: ID аккаунта AWS
      * `host.id`: ID экземпляра EC2 (например, "i-1234567890abcdef0")
      * `host.type`: тип инстанса (например, "t3.medium")
      * `host.name`: hostname экземпляра
    </Info>
  </Step>

  <Step title="Задайте API-ключ ClickStack" id="set-api-key">
    Экспортируйте API-ключ ClickStack в переменную окружения:

    ```bash theme={null}
    export CLICKSTACK_API_KEY="your-api-key-here"
    ```

    Чтобы это сохранялось после перезагрузки, добавьте это в профиль оболочки:

    ```bash theme={null}
    echo 'export CLICKSTACK_API_KEY="your-api-key-here"' >> ~/.bashrc
    source ~/.bashrc
    ```
  </Step>

  <Step title="Запустите коллектор" id="run-collector">
    Запустите OpenTelemetry Collector:

    ```bash theme={null}
    CLICKSTACK_API_KEY="your-api-key-here" /usr/local/bin/otelcol-contrib --config /etc/otelcol-contrib/config.yaml
    ```

    <Info>
      **Для использования в продакшене**

      Настройте OpenTelemetry Collector для запуска как службу systemd, чтобы он автоматически запускался при загрузке системы и перезапускался при сбоях. Подробности см. в [документации OpenTelemetry Collector](https://opentelemetry.io/docs/collector/deployment/).
    </Info>
  </Step>

  <Step title="Проверка журналов в HyperDX" id="verifying-logs">
    После запуска коллектора войдите в HyperDX и убедитесь, что журналы поступают вместе с метаданными EC2:

    1. Перейдите в представление Search
    2. В поле source выберите `Logs`
    3. Отфильтруйте по `source:ec2-host-logs`
    4. Нажмите на запись в журнале, чтобы развернуть её
    5. Убедитесь, что в атрибутах ресурса отображаются метаданные EC2:
       * `cloud.provider`
       * `cloud.region`
       * `host.id` (ID экземпляра)
       * `host.type` (тип инстанса)
       * `cloud.availability_zone`

    <Image img="https://mintcdn.com/private-7c7dfe99/MFPY913TqoHcFPXJ/images/clickstack/host-logs/ec2/search-view.webp?fit=max&auto=format&n=MFPY913TqoHcFPXJ&q=85&s=b170aaff48ce62f49102c51cbf01c198" alt="Представление Search для журналов EC2" width="1920" height="920" data-path="images/clickstack/host-logs/ec2/search-view.webp" />

    <Image img="https://mintcdn.com/private-7c7dfe99/MFPY913TqoHcFPXJ/images/clickstack/host-logs/ec2/log-view.webp?fit=max&auto=format&n=MFPY913TqoHcFPXJ&q=85&s=3fd22b38090a295e1ed1fce67722470b" alt="Подробная информация о журнале EC2 с метаданными" width="3840" height="1840" data-path="images/clickstack/host-logs/ec2/log-view.webp" />
  </Step>
</Steps>

<div id="demo-dataset">
  ## Демо-набор данных
</div>

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

<Steps>
  <Step title="Скачайте пример набора данных" id="download-sample">
    Скачайте пример файла журнала:

    ```bash theme={null}
    curl -O https://datasets-documentation.s3.eu-west-3.amazonaws.com/clickstack-integrations/host-logs/journal.log
    ```

    Набор данных включает:

    * Последовательность загрузки системы
    * Активность входа по SSH (успешные и неуспешные попытки)
    * Инцидент безопасности (атака методом перебора и реакция fail2ban)
    * Плановое обслуживание (задания cron, anacron)
    * Перезапуски службы (rsyslog)
    * Сообщения ядра и активность межсетевого экрана
    * Сочетание штатных операций и примечательных событий
  </Step>

  <Step title="Создайте тестовую конфигурацию коллектора" id="test-config">
    Создайте файл `ec2-host-logs-demo.yaml` со следующей конфигурацией:

    ```yaml theme={null}
    cat > ec2-host-logs-demo.yaml << 'EOF'
    receivers:
      filelog/journal:
        include:
          - /tmp/host-demo/journal.log
        start_at: beginning
        operators:
          - type: regex_parser
            regex: '^(?P<timestamp>\S+) (?P<hostname>\S+) (?P<unit>\S+?)(?:\[(?P<pid>\d+)\])?: (?P<message>.*)$'
            parse_from: body
            parse_to: attributes
          
          - type: time_parser
            parse_from: attributes.timestamp
            layout: '%Y-%m-%dT%H:%M:%S%z'
          
          - type: add
            field: attributes.source
            value: "ec2-demo"

    processors:
      # Simulate EC2 metadata for demo (no real EC2 instance required)
      resource:
        attributes:
          - key: service.name
            value: "ec2-demo"
            action: insert
          - key: cloud.provider
            value: "aws"
            action: insert
          - key: cloud.platform
            value: "aws_ec2"
            action: insert
          - key: cloud.region
            value: "us-east-1"
            action: insert
          - key: cloud.availability_zone
            value: "us-east-1a"
            action: insert
          - key: host.id
            value: "i-0abc123def456789"
            action: insert
          - key: host.type
            value: "t3.medium"
            action: insert
          - key: host.name
            value: "prod-web-01"
            action: insert

    service:
      pipelines:
        logs/ec2-demo:
          receivers: [filelog/journal]
          processors:
            - resource
            - memory_limiter
            - transform
            - batch
          exporters:
            - clickhouse
    EOF
    ```

    <Note>
      Для демонстрации мы вручную добавляем метаданные EC2 с помощью процессора `resource`. В рабочей среде с реальными инстансами EC2 используйте процессор `resourcedetection`, который автоматически обращается к API метаданных EC2.
    </Note>
  </Step>

  <Step title="Запустите ClickStack с демонстрационной конфигурацией" id="run-demo">
    Запустите ClickStack с демонстрационными журналами и демонстрационной конфигурацией:

    ```bash theme={null}
    docker run --name clickstack-demo \
      -p 8080:8080 -p 4317:4317 -p 4318:4318 \
      -e CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yaml \
      -v "$(pwd)/ec2-host-logs-demo.yaml:/etc/otelcol-contrib/custom.config.yaml:ro" \
      -v "$(pwd)/journal.log:/tmp/host-demo/journal.log:ro" \
      docker.hyperdx.io/hyperdx/hyperdx-all-in-one:latest
    ```
  </Step>

  <Step title="Проверьте журналы в HyperDX" id="verify-demo-logs">
    После запуска collector:

    1. Откройте [HyperDX](http://localhost:8080/) и войдите в свою учетную запись (возможно, сначала потребуется создать ее)
    2. Перейдите в представление поиска и выберите источник `Logs`
    3. Установите временной диапазон **2025-11-10 00:00:00 - 2025-11-13 00:00:00**
    4. Отфильтруйте по `source:ec2-demo`
    5. Разверните запись в журнале, чтобы просмотреть метаданные EC2 в атрибутах ресурса

    <Image img="https://mintcdn.com/private-7c7dfe99/MFPY913TqoHcFPXJ/images/clickstack/host-logs/ec2/search-view-demo.webp?fit=max&auto=format&n=MFPY913TqoHcFPXJ&q=85&s=883b2ec9c6a56bf2dc3d99356c919d47" alt="Представление поиска журналов EC2" width="1920" height="968" data-path="images/clickstack/host-logs/ec2/search-view-demo.webp" />

    <Image img="https://mintcdn.com/private-7c7dfe99/MFPY913TqoHcFPXJ/images/clickstack/host-logs/ec2/log-view-demo.webp?fit=max&auto=format&n=MFPY913TqoHcFPXJ&q=85&s=72ebd17743fbf0d8abba7cd1b9c37a6a" alt="Подробная информация о журнале EC2 с метаданными" width="1920" height="968" data-path="images/clickstack/host-logs/ec2/log-view-demo.webp" />

    <Info>
      **Отображение часового пояса**

      HyperDX отображает временные метки в локальном часовом поясе вашего браузера. Демо-данные охватывают период **2025-11-11 00:00:00 - 2025-11-12 00:00:00 (UTC)**. Широкий временной диапазон гарантирует, что вы увидите демо-журналы независимо от своего местоположения. Когда журналы появятся, вы сможете сузить диапазон до 24 часов для более наглядных визуализаций.
    </Info>

    Вы должны увидеть журналы со смоделированным контекстом EC2, включая:

    * ID экземпляра: `i-0abc123def456789`
    * Регион: `us-east-1`
    * Зона доступности: `us-east-1a`
    * Тип инстанса: `t3.medium`
  </Step>
</Steps>

<div id="dashboards">
  ## Панели мониторинга и визуализация
</div>

Чтобы вам было проще начать мониторинг журналов хоста EC2 в ClickStack, мы предоставляем базовые визуализации с облачным контекстом.

<Steps>
  <Step title="Скачать конфигурацию панели мониторинга" id="download">
    <TrackedLink href={'https://clickhouse-docs-assets.s3.us-east-1.amazonaws.com/examples/host-logs-dashboard.json'} download="host-logs-dashboard.json" eventName="docs.ec2_host_logs_monitoring.dashboard_download">Скачать файл конфигурации панели мониторинга</TrackedLink>.
  </Step>

  <Step title="Импортируйте преднастроенный дашборд" id="import-dashboard">
    1. Откройте HyperDX и перейдите в раздел Dashboards
    2. Нажмите **Import Dashboard** в правом верхнем углу в меню с многоточием

    <Image img="https://mintcdn.com/private-7c7dfe99/MFPY913TqoHcFPXJ/images/clickstack/import-dashboard.webp?fit=max&auto=format&n=MFPY913TqoHcFPXJ&q=85&s=ec4eae8ea8e1f77c9b5897b45339b08b" alt="Кнопка импорта панели мониторинга" width="3024" height="556" data-path="images/clickstack/import-dashboard.webp" />

    3. Загрузите файл `host-logs-dashboard.json` и нажмите **Finish Import**

    <Image img="https://mintcdn.com/private-7c7dfe99/MFPY913TqoHcFPXJ/images/clickstack/host-logs/import-dashboard.webp?fit=max&auto=format&n=MFPY913TqoHcFPXJ&q=85&s=b3bc1c3bbf00fe2f478af7c76d6cc40f" alt="Завершение импорта" width="3808" height="1908" data-path="images/clickstack/host-logs/import-dashboard.webp" />
  </Step>

  <Step title="Просмотрите панель мониторинга" id="created-dashboard">
    Панель мониторинга будет создана со всеми преднастроенными визуализациями:

    <Image img="https://mintcdn.com/private-7c7dfe99/MFPY913TqoHcFPXJ/images/clickstack/host-logs/host-logs-dashboard.webp?fit=max&auto=format&n=MFPY913TqoHcFPXJ&q=85&s=1aad879efd27fe772a4b24780f878b5e" alt="Панель мониторинга журналов EC2" width="3808" height="1908" data-path="images/clickstack/host-logs/host-logs-dashboard.webp" />

    Вы можете фильтровать визуализации на панели мониторинга по контексту EC2:

    * `cloud.region:us-east-1` - показать журналы из конкретного региона
    * `host.type:t3.medium` - фильтровать по типу инстанса
    * `host.id:i-0abc123def456` - журналы с конкретного инстанса

    <Note>
      Для демо-набора данных установите временной диапазон **2025-11-11 00:00:00 - 2025-11-12 00:00:00 (UTC)** (скорректируйте его в соответствии с вашим местным часовым поясом). В импортированной панели мониторинга временной диапазон по умолчанию не задан.
    </Note>
  </Step>
</Steps>

<div id="troubleshooting">
  ## Устранение неполадок
</div>

<div id="no-metadata">
  ### Метаданные EC2 не отображаются в журналах
</div>

**Убедитесь, что сервис метаданных EC2 доступен:**

```bash theme={null}
# Получить токен метаданных
TOKEN=$(curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600")

# Проверить конечную точку метаданных
curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/instance-id
```

Если это не помогло, проверьте следующее:

* Служба метаданных экземпляра включена
* IMDSv2 не блокируется группами безопасности
* Вы запускаете коллектор на самом экземпляре EC2

**Проверьте логи коллектора на наличие ошибок метаданных:**

```bash theme={null}
# Если запущено как systemd-сервис
sudo journalctl -u otelcol-contrib -f | grep -i "ec2\|metadata\|resourcedetection"

# Если запущено на переднем плане, проверьте stdout
```

<div id="no-logs">
  ### Журналы не отображаются в HyperDX
</div>

**Проверьте, что файлы syslog существуют и в них ведётся запись:**

```bash theme={null}
ls -la /var/log/syslog /var/log/messages
tail -f /var/log/syslog
```

**Проверьте, может ли коллектор читать файлы журналов:**

```bash theme={null}
cat /var/log/syslog | head -20
```

**Проверьте сетевую доступность ClickStack:**

```bash theme={null}
# Проверка конечной точки OTLP
curl -v http://YOUR_CLICKSTACK_HOST:4318/v1/logs

# Должен прийти ответ (даже если с ошибкой — это означает, что конечная точка доступна)
```

**Проверьте журналы коллектора на наличие ошибок:**

```bash theme={null}
# Если запущен на переднем плане
# Искать сообщения об ошибках в stdout

# Если запущен как сервис systemd
sudo journalctl -u otelcol-contrib -f | grep -i "error\|failed"
```

<div id="logs-not-parsing">
  ### Некорректный разбор журналов
</div>

**Проверьте формат syslog:**

Для Ubuntu 24.04+:

```bash theme={null}
# Должен отображаться формат ISO8601: 2025-11-17T20:55:44.826796+00:00
tail -5 /var/log/syslog
```

Для Amazon Linux 2 / Ubuntu 20.04:

```bash theme={null}
# Должен отображаться традиционный формат: Nov 17 14:16:16
tail -5 /var/log/messages
```

Если ваш формат отличается, используйте вкладку с подходящей конфигурацией в разделе [Создание конфигурации коллектора](#create-config) для вашего дистрибутива.

<div id="systemd-issues">
  ### Коллектор не запускается как служба systemd
</div>

**Проверьте статус службы:**

```bash theme={null}
sudo systemctl status otelcol-contrib
```

**Просмотр подробных журналов:**

```bash theme={null}
sudo journalctl -u otelcol-contrib -n 50
```

**Распространённые проблемы:**

* API-ключ задан в переменных окружения некорректно
* Ошибки синтаксиса в файле конфигурации
* Проблемы с правами доступа при чтении файлов журнала

<div id="next-steps">
  ## Следующие шаги
</div>

* Настройте [оповещения](/docs/ru/clickstack/features/alerts) о критических системных событиях (сбои сервиса, ошибки аутентификации, предупреждения о проблемах с диском)
* Фильтруйте по атрибутам метаданных EC2 (регион, тип инстанса, ID экземпляра), чтобы отслеживать конкретные ресурсы
* Коррелируйте журналы хоста EC2 с журналами приложений для комплексной диагностики
* Создавайте пользовательские панели мониторинга для мониторинга безопасности (попытки SSH, использование sudo, блокировки межсетевым экраном)

<div id="going-to-production">
  ## Переход в продакшн
</div>

В этом руководстве OpenTelemetry Collector устанавливается непосредственно на экземпляры EC2, что является рекомендуемым вариантом для мониторинга на уровне хоста в продакшн-среде. Для управления коллекторами на множестве экземпляров рассмотрите возможность использования инструментов управления конфигурацией (Ansible, Chef, Puppet) или OpenTelemetry Operator в средах Kubernetes. См. раздел [Отправка данных OpenTelemetry](/docs/ru/clickstack/ingesting-data/opentelemetry) с конфигурацией для продакшн-среды.
