Согласно http://net-snmp.sourceforge.net/docs/mibs/ucdavis.html#scalar_notcurrent ssCpuUser
, ssCpuSystem
, ssCpuIdle
и т.д. Не рекомендуется использовать в пользу необработанных вариантов (ssCpuRawUser
и т.д.).
Прежние значения (которые не охватывают такие вещи, как nice, wait, kernel, interrupt и т.д.) Возвращали процентное значение:
Процент процессорного времени, потраченного на обработку кода пользовательского уровня, рассчитанный за последнюю минуту.
Этот объект устарел в пользу '
ssCpuRawUser(50)
', который можно использовать для вычисления той же метрики, но за любой требуемый период времени.
Необработанные значения возвращают "сырое" количество тиков, потраченных ЦП:
Количество «тиков» (обычно 1/100) затрачено на обработку кода уровня пользователя.
В многопроцессорной системе счетчики '
ssCpuRaw*
' накапливаются по всем ЦП, поэтому их сумма обычно составляет N * 100 (для N процессоров).
Мой вопрос: как вы превращаете количество тиков в процентах?
То есть, как вы узнаете, сколько тиков в секунду (это обычно - что подразумевается не всегда - 1/100 с, что либо означает 1 каждые 100 секунд, либо тик представляет 1/100-ю секунды).
Я полагаю, вам также нужно знать, сколько процессоров существует, или вам нужно получить все значения процессоров, чтобы сложить их все вместе. Я не могу найти MIB, который дает целочисленное значение для числа процессоров, что делает предыдущий маршрут неудобным. Последний маршрут кажется ненадежным, потому что некоторые цифры перекрываются (иногда). Например, ssCpuRawWait
имеет следующее предупреждение:
Этот объект не будет реализован на хостах, где базовая операционная система не измеряет эту конкретную метрику ЦП. Это время также может быть включено в счетчик '
ssCpuRawSystem(52)
'.
Некоторая помощь будет оценена. Везде, кажется, просто говорят, что% устарел, потому что он может быть получен, но я не нашел нигде, который показывает официальный стандартный способ для выполнения этого вывода.
Второй компонент заключается в том, что эти "отметки" кажутся совокупными, а не в течение некоторого периода времени. Как мне выбрать значения за некоторый период времени?
Основная информация, которую я хочу получить:% пользователя, системы, простоя, приятного (и в идеале воровства, хотя для этого не существует стандартного MIB) "в настоящее время" (в течение последних 1–60-х годов, вероятно, было бы достаточно, с предпочтением меньших временных интервалов).