Не удалось получить docker stats - Metricbeat и Docker - PullRequest
1 голос
/ 01 мая 2020

Я использую metricbeat в сочетании с Docker для получения метрик из данного контейнера с помощью автоматического обнаружения подсказок.

Не думаю, что он работает должным образом, так как я получаю сообщение об ошибке, в ошибке ключ сообщения:

не удалось получить docker статистика: запрос возвращен Не найдено для маршрута и версии API http://172.20.0.2: 8101 / v1.24 / container / json? limit = 0 , проверьте, поддерживает ли сервер запрашиваемую версию API

Похоже, что он настроен на правильный IP-адрес контейнера после проверки json в elasticsearch.

Вот мое приложение metricbeat и demo в docker compose:

metricbeat:
    container_name: metricbeat
    user: root
    image: mymetricbeat:docker
    volumes:
    # needed to access additional informations about containers
    - "/var/run/docker.sock:/var/run/docker.sock:ro"
    networks:
    - esnet
  myloggingapp:
    container_name: loggingapp
    image: loggingapp:latest
    environment: 
      - ASPNETCORE_URLS=http://+:8101
    labels:
      co.elastic.metrics/enabled: true
      co.elastic.metrics/module: docker
      co.elastic.metrics/metricsets: cpu
      co.elastic.metrics/hosts: '$${data.host}:8101'
      co.elastic.metrics/period: 1m
    networks:
    - esnet

Вот yml:

metricbeat.autodiscover:
  providers:
    - type: docker
      hints.enabled: true                

output.elasticsearch:
  hosts: ["elasticsearch:9200"]
  index: "sample2-%{+YYYY.MM.dd}"

setup.template.name: "sample2"
setup.template.pattern: "sample2-*"

Кроме того, для ключа события есть статистика CPU c правильно, как говорится duration : 2090999, поскольку я изо всех сил пытаюсь понять это.

1 Ответ

0 голосов
/ 01 мая 2020

Есть несколько томов, которые нужно сопоставить. См. Официальные документы по настройке:

https://www.elastic.co/guide/en/beats/metricbeat/current/running-on-docker.html

...