Как анализировать журналы пряжи для получения показателей эффективности? - PullRequest
5 голосов
/ 19 февраля 2020

Резюме: мне нужно что-то для yarn logs -applicationId myID | parse.

Я занимаюсь разработкой кода с некоторым уровнем параллелизма, поэтому мне нужна обратная связь о vcores и используемой оперативной памяти ... У меня есть идентификатор приложения каждого теста, поэтому после запуска я могу использовать

 yarn logs -applicationId application_1581298836342_95477 > myYarnLog.txt

, но это большой и сложный журнал, и мне нужно только проверить vcores и используемую память .

Есть синтаксический анализ для myYarnLog.txt, который фильтрует или вычисляет показатели производительности?


PS: «ОЗУ памяти» может быть «Совокупное распределение ресурсов», vcores может быть некоторой статистикой выделения виртуальных ЦП и т. д. c.

Ответы [ 2 ]

1 голос
/ 03 марта 2020

на вашем сайте пряжи. xml аналогично, например, здесь

 yarn.resourcemanager.scheduler.monitor.enable

вам нужен silimar в планировщике емкости файла. xml в качестве ответа здесь

<property>
    <name>yarn.scheduler.capacity.resource-calculator</name>
    <value>org.apache.hadoop.yarn.util.resource.DominantResourceCalculator</value>
</property>
0 голосов
/ 03 марта 2020

Как предположил @TinNguyen, мы можем использовать grep для проверки некоторой информации, например, строк "vcores" ... Возможно, другие читатели могут предложить другие стратегии grep. Итак, этот ответ является вики для объединения всех предложений


Все предложения по синтаксическому анализу разбирают файл вопроса myYarnLog.txt,

 yarn logs -applicationId application_1581298836342_95477 > myYarnLog.txt

Команда и плагины предложения

  • ag. Ключевой фильтр. Пример: ag vcores myYarnLog.txt.
  • grep. Ключевой фильтр. Пример: grep -i vcores myYarnLog.txt.
  • awk. Тьюринг-полный фильтр и форматер. Пример: awk "/vcores/i {print $0}" myYarnLog.txt
  • lnav, «Журнал файлового навигатора», http://lnav.org/features (git). Принимает регулярные выражения и др.

Ключевые предложения

Ключевые слова для фильтрации соответствующей информации для анализа производительности.

Стандартные условия журнала:

  • LogAggregationType . Стандартный атрибут лог-файла. Пример: AGGREGATED.

  • INFO CodeGenerator . Пример: «Код, сгенерированный за 381,632282 мс»

  • INFO MemoryStore . Пример: «Блок broadcast_13_piece0 хранится в виде байтов в памяти (расчетный размер 11,5 КБ, свободных 37,2 ГБ) "

  • ИНФОРМАЦИЯ TorrentBroadcast . Пример: «Чтение широковещательной переменной 13 заняло 91 мс»

  • ...

Generi c термины, используемые в некоторых журналах:

  • vcore . Термин virtual-core , который можно использовать как единое целое. Примеры: «4 vcores» или «5 секунд на vcore».

  • сохраняются как байты в памяти . Пример: строка без тега, скажем, «Блокировать трансляцию_13, сохраненную в виде значений в памяти (приблизительный размер 26,3 КБ, свободно 37,2 ГБ)» *

  • байт, результат отправлен в драйвер . Имеет отношение?

  • ...

Spark-speci c ключевые слова:

  • ShuffleBlockFetcherIterator . Строки со временем запуска / получения и блоки, полезные для awk суммирования.

  • ...

Правила фильтрации

... использование столбцов, составных фильтров, подсчета итогов и т. д. c.

Пример правила awk: /LogAggregationType/ {print "log type: " $2}.


Настройка конфигурации на основе доказательств

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

evidence-based cycle

См. Как изменить конфигурационные файлы на Yarn, Spark и др. c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...