Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- sar -u -f /var/log/sa/sa15
- START_TIME=$( date +%s --date 'yesterday 8am' )
- END_TIME=$( date +%s --date 'yesterday 5pm' )
- sadf -p /var/log/sa/sa15 -- -n DEV -q -w -b -u -r |
- awk -v start_time=$START_TIME -v end_time=$END_TIME -v get_latest=$GET_LATEST '
- BEGIN {
- wanted_fields="%user %idle %system %iowait ldavg-1 ldavg-5 ldavg-15 cswch/s kbmemfree kbbuffers kbcached kbswpfree kbswpused bread/s bwrtn/s rxbyt/s txbyt/s"
- num_fields=split(wanted_fields, fields)
- for (i in fields) {
- fieldname = fields[i]
- value[fieldname] = 0.0
- number[fieldname] = 0
- }
- }
- ! /t(sit0|lo)t/ {
- if ($3 > start_time && $3 <= end_time) {
- if (number[$5] < 1) {
- number[$5] = 0
- value[$5] = 0.0
- }
- if (get_latest) {
- value[$5] = $6
- } else {
- value[$5] += $6
- }
- number[$5] += 1
- }
- }
- END {
- "hostname" | getline hostname
- printf("%d hostname=%s start=%d end=%d ", end_time, hostname, start_time, end_time)
- for (i=1; i <= num_fields; i++) {
- fieldname = fields[i]
- printf("%s=", fieldname)
- if (number[fieldname] > 0) {
- if (get_latest) {
- v=value[fieldname]
- } else {
- v=value[fieldname]/number[fieldname]
- }
- printf("%f ", v)
- } else {
- printf("- ")
- }
- }
- }
- ' | tr -d '%/'
Add Comment
Please, Sign In to add comment