Тип в строке # TYPE говорит, как читать число: как итог с запуска или как состояние сейчас.
Счётчик (counter) только растёт с запуска экспортёра: секунды процессора, прочитанные с диска байты, принятые по сети. У таких имён окончание _total. Число счётчика — итог за всё время работы, и о том, что происходит сейчас, оно само по себе не говорит. Как превратить его в скорость, разбирает следующий урок.
Gauge — текущее значение, оно ходит вверх и вниз: свободная память, нагрузка node_load1, место на диске. Его можно читать как есть.
Память в опыте — gauge. MemFree — память, не занятая ничем, даже кэшем файлов; её всегда мало, потому что ядро держит в свободной памяти кэш. MemAvailable — сколько могут получить программы вместе с кэшем, который ядро отдаст по первому требованию. Так же считает колонка available у free (память и swap). Дежурному нужен ответ по MemAvailable.
Значение какой строки экспортёра через минуту может оказаться меньше, чем сейчас?
-
Прочитанные с диска байты — счётчик: прочитанное не «отменяется», значение только растёт.
-
Это счётчик (
# TYPE … counter, окончание_total): секунды простоя с запуска экспортёра только прибавляются.
MemAvailable — gauge: свободная память растёт и падает вместе с нагрузкой. Счётчики с окончанием _total только растут, пока экспортёр работает; тип каждой метрики — в строке # TYPE.
Главное в шаге
-
Счётчик с окончанием
_totalтолько растёт с запуска — это итог за всё время работы. - Gauge показывает текущее значение и читается как есть.
-
Свободная для программ память —
node_memory_MemAvailable_bytes;MemFreeне считает кэш, который ядро отдаст.