2016-11-16 2 views
0

Как часть коллекций показателей производительности, я пытаюсь получить CPU, IO, Memory ... использование системы для конкретного запуска с использованием atop. Для достижения этой цели, я начинаю на вершину для создания файла поверх-данных с помощью следующей командыизвлечение atopsar в текстовый файл с дополнительной информацией

/usr/bin/atop -a -w /venki/atop_temp 2 

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

atopsar -b 20:39:45 -e 20:42:45 -r /venki/atop_temp -S -x -a -m > /venki/atop_mem4 

Это в результате с ниже информация:

sdl00999 2.6.32.54-0.7.TDC.1.R.4-default #1 SMP 2012-04-19 16:07:40 +0200 x86_64 2016/11/15 

-------------------------- analysis date: 2016/11/15 -------------------------- 
20:39:37 memtotal memfree buffers cached dirty slabmem swptotal swpfree _mem_ 

20:39:41  3700M 2386M  9M 353M 0M 121M  309M 302M 
20:39:43  3700M 2385M  9M 353M 0M 121M  309M 302M 
20:39:47  3700M 2385M  9M 353M 2M 121M  309M 302M 
20:39:49  3700M 2385M  9M 353M 2M 121M  309M 302M 

Но мне нужно еще один столбец [Date - 2016/11/16] в начале. мне нужна эта информация, если мой тест пошел на несколько дней [3 дня - мне нужна информация, как, который датируется время]

Может ли один помочь мне в этом

Спасибо-заранее

+0

У вас уже есть эта 'дата анализа: 2016/11/15' в названии. Что с этим не так? – GMichael

+0

мне это нужно, как, столбец в файле, как показано ниже: 2016/11/15 20:39:41 3700M 2386M 9М 353M 0M 121M 302M 309 млн 2016/11/15 20:39:43 3700M 2385M 9М 353M 0M 121M 302M 309 млн 2016/11/15 20:39:47 3700M 2385M 9M 353M 2М 121M 302M 309 млн 20:39:49 3700M 2385M 9M 353M 2М 121M 302M – user3655447

+0

309 млн в реальном времени, я буду иметь 1000-х строк. Для этого мне нужно добавить дату в каждую строку после извлечения. Это будет легко, если он включен в уровень добычи. – user3655447

ответ

0

Вы можете начать со следующего:

atopsar -b 20:39:45 -e 20:42:45 -r /venki/atop_temp -S -x -a -m | awk 'BEGIN {DATE_STAMP=""; } /analysis date: /{DATE_STAMP=$4;} /^[0-9]/ {print DATE_STAMP, $0;}' > /venki/atop_mem4 
+0

Большое спасибо GMichael. Теперь, я закончил с требованием. – user3655447

+0

Никогда не используйте все переменные верхнего регистра в сценариях оболочки или awk, чтобы избежать столкновения со встроенными (и в случае с оболочками также экспортированными) переменными и обфускацией вашего кода, заставив его выглядеть так, будто вы используете встроенные/экспортированные переменные, когда вы этого не сделали. Вы можете удалить раздел BEGIN, то, что он делает, - это поведение по умолчанию, которое вы получите без него. Конечные полуколоны были бы необходимы для программы C, но не для awk, вы также можете удалить их. –