# Не удается получить информацию о нагрузке на процессор

**URL:** <https://discuss.elastic.co/t/topic/155819>\
**Category:** Вопросы на русском языке\
**Created:** [November 8, 2018, 5:31am UTC](https://discuss.elastic.co/t/topic/155819 "2018-11-08T05:31:55Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![IvanTushin](https://avatars.discourse-cdn.com/v4/letter/i/dbc845/32.png) [@IvanTushin](https://discuss.elastic.co/u/IvanTushin)\
**Post date:** [November 8, 2018, 5:31am UTC](https://discuss.elastic.co/t/topic/155819/1 "2018-11-08T05:31:55Z")

</div>

Добрый день! Подскажите, пожалуйста, у меня почему-то в версии ES 6.4.3 не корректно отображается информация о текущей нагрузке на CPU, а именно на всех нода данный параметр равен -1.

```
"os": {
    "timestamp": 1541654835364,
    "cpu": {
      "percent": -1
    },
    "mem": {
      "total_in_bytes": 68665397248,
      "free_in_bytes": 21675515904,
      "used_in_bytes": 46989881344,
      "free_percent": 32,
      "used_percent": 68
    },
    "swap": {
      "total_in_bytes": 78865944576,
      "free_in_bytes": 38975254528,
      "used_in_bytes": 39890690048
    }
  }

```

Я вижу в документации описание:

> Recent CPU usage for the whole system, or -1 if not supported

Просто интересно, на что опирается данная метрика, что она стала недоступна. ОС Windows. Есть какие-нибудь предположения?

---

<div class="post-metadata">

**Author:** ![Vladimir.Dolzhenko](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vladimir.dolzhenko/32/34352_2.png) [@Vladimir.Dolzhenko](https://discuss.elastic.co/u/Vladimir.Dolzhenko)\
**Post date:** [November 8, 2018, 7:48am UTC](https://discuss.elastic.co/t/topic/155819/2 "2018-11-08T07:48:26Z")

</div>

Для получения нагрузки на процессор используются JMX MBeans, а именно [OperatingSystemMXBean.html#getSystemLoadAverage()](https://docs.oracle.com/javase/7/docs/api/java/lang/management/OperatingSystemMXBean.html#getSystemLoadAverage()), который добавили как [JDK-6336608](https://bugs.openjdk.java.net/browse/JDK-6336608) - и с тех пор, насколько я могу судить никаких изменений не было.

И в случае windows вы получите отрицательное число.

---

<div class="post-metadata">

**Author:** ![IvanTushin](https://avatars.discourse-cdn.com/v4/letter/i/dbc845/32.png) [@IvanTushin](https://discuss.elastic.co/u/IvanTushin)\
**Post date:** [November 8, 2018, 7:56am UTC](https://discuss.elastic.co/t/topic/155819/3 "2018-11-08T07:56:21Z")

</div>

Владимир, я не понял, почему в случае с windows я должен получить отрицательное число?  
У меня сейчас есть работающий кластер на версии 5.6.4 на виндовых серверах, там результат присутствует. На локальной машине с windows результат есть.

---

<div class="post-metadata">

**Author:** ![Vladimir.Dolzhenko](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vladimir.dolzhenko/32/34352_2.png) [@Vladimir.Dolzhenko](https://discuss.elastic.co/u/Vladimir.Dolzhenko)\
**Post date:** [November 8, 2018, 8:02am UTC](https://discuss.elastic.co/t/topic/155819/4 "2018-11-08T08:02:13Z")

</div>

Правильно ли я вас понимаю - что у вас есть результат через тот же самый ES API ?

И какие версии java используются при этом.

---

<div class="post-metadata">

**Author:** ![IvanTushin](https://avatars.discourse-cdn.com/v4/letter/i/dbc845/32.png) [@IvanTushin](https://discuss.elastic.co/u/IvanTushin)\
**Post date:** [November 8, 2018, 8:12am UTC](https://discuss.elastic.co/t/topic/155819/5 "2018-11-08T08:12:22Z")

</div>

Да, на другом кластере результат есть. Речь идет о использовании \_nodes/stats/os.  
Версия Java: jre-8u191.

К тому же, сейчас заметил, что JVM heap size тоже не обновляется на 2х из 4 нод.

---

<div class="post-metadata">

**Author:** ![Vladimir.Dolzhenko](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vladimir.dolzhenko/32/34352_2.png) [@Vladimir.Dolzhenko](https://discuss.elastic.co/u/Vladimir.Dolzhenko)\
**Post date:** [November 8, 2018, 8:24am UTC](https://discuss.elastic.co/t/topic/155819/6 "2018-11-08T08:24:37Z")

</div>

Интересно было бы проверить, что говорят соответсвующие jvm, если вызвать у них соответствующий метод по jmx т.к. ES в этом отношении ничего сверх этого не делает.

---

<div class="post-metadata">

**Author:** ![IvanTushin](https://avatars.discourse-cdn.com/v4/letter/i/dbc845/32.png) [@IvanTushin](https://discuss.elastic.co/u/IvanTushin)\
**Post date:** [November 8, 2018, 8:30am UTC](https://discuss.elastic.co/t/topic/155819/7 "2018-11-08T08:30:07Z")

</div>

Если полная переустановка Java не поможет, попытаюсь посмотреть.

---

<div class="post-metadata">

**Author:** ![IvanTushin](https://avatars.discourse-cdn.com/v4/letter/i/dbc845/32.png) [@IvanTushin](https://discuss.elastic.co/u/IvanTushin)\
**Post date:** [November 8, 2018, 9:45am UTC](https://discuss.elastic.co/t/topic/155819/8 "2018-11-08T09:45:27Z")

</div>

Владимир, переустановка Java не дала результатов. Я не являюсь Java разработчиком, возможно вы знаете какие-нибудь стандартные утилиты которыми можно получить показания этих счетчиков?

---

<div class="post-metadata">

**Author:** ![Vladimir.Dolzhenko](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vladimir.dolzhenko/32/34352_2.png) [@Vladimir.Dolzhenko](https://discuss.elastic.co/u/Vladimir.Dolzhenko)\
**Post date:** [November 8, 2018, 9:56am UTC](https://discuss.elastic.co/t/topic/155819/9 "2018-11-08T09:56:28Z")

</div>

Попробуйте подключится к данным JVM используя либо [JVisualVM](https://docs.oracle.com/javase/7/docs/technotes/tools/share/jvisualvm.html) (входит в стандартную поставку JDK 8 и более новые версии) либо [jconsole](https://docs.oracle.com/javase/7/docs/technotes/guides/management/jconsole.html)

JVisualVM удобней, при помощи него можно достучаться до данных JMX MBean-ов.

---

<div class="post-metadata">

**Author:** ![IvanTushin](https://avatars.discourse-cdn.com/v4/letter/i/dbc845/32.png) [@IvanTushin](https://discuss.elastic.co/u/IvanTushin)\
**Post date:** [November 8, 2018, 11:02am UTC](https://discuss.elastic.co/t/topic/155819/10 "2018-11-08T11:02:19Z")

</div>

Судя по мониторингам, все работает прекрасно

![2018-11-08_13-37-57](https://us1.discourse-cdn.com/elastic/original/3X/4/e/4eceb89bacc6148a7edfb02bd19bb5a680bad8f7.png)

Вообщем история была такая, я пытаюсь перевести на новую версию ES. У меня было 2 машины, там стояли версии 6.4.2 с которыми я проводил тесты, все работало хорошо. Данные о jvm и os я получал. Затем, я решил заменить ssd диски на nvme и обновил версию до 6.4.3. С тех пор эти метрики не работают. Я пробовал даунгрейд до 6.4.2, переустанавливал java - результатов ноль. И все бы ничего, но мы их используем для балансировщика ☹

---

<div class="post-metadata">

**Author:** ![IvanTushin](https://avatars.discourse-cdn.com/v4/letter/i/dbc845/32.png) [@IvanTushin](https://discuss.elastic.co/u/IvanTushin)\
**Post date:** [November 8, 2018, 11:14am UTC](https://discuss.elastic.co/t/topic/155819/11 "2018-11-08T11:14:42Z")

</div>

Судя по MBeans значения SystemCpuLoad не определяются. Значит дело в Java.

 ![2018-11-08_14-12-48](https://us1.discourse-cdn.com/elastic/original/3X/e/8/e8e3f8b3292571a43538c9b6113c7f3f37c153c0.png)

---

<div class="post-metadata">

**Author:** ![Vladimir.Dolzhenko](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/vladimir.dolzhenko/32/34352_2.png) [@Vladimir.Dolzhenko](https://discuss.elastic.co/u/Vladimir.Dolzhenko)\
**Post date:** [November 8, 2018, 12:37pm UTC](https://discuss.elastic.co/t/topic/155819/12 "2018-11-08T12:37:17Z")

</div>

Увы от версии ES здесь мало что зависит - то, что есть в jvm - то мы и можем предоставить - нужно либо копать в сторону реализации функциональности в новых версиях java, либо unix-подобная система.

---

<div class="post-metadata">

**Author:** ![IvanTushin](https://avatars.discourse-cdn.com/v4/letter/i/dbc845/32.png) [@IvanTushin](https://discuss.elastic.co/u/IvanTushin)\
**Post date:** [November 8, 2018, 1:08pm UTC](https://discuss.elastic.co/t/topic/155819/13 "2018-11-08T13:08:52Z")

</div>

Жаль, что такое случилось. В любом случае я могу написать отдельный сервис который будет считывать нужные мне значения. Вам, спасибо, что помогали разбираться)

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [December 6, 2018, 1:08pm UTC](https://discuss.elastic.co/t/topic/155819/14 "2018-12-06T13:08:53Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
