b3a13e972b7521b3c339ac4dea42e76912f89d3b
[myops.git] / web / collect / server / summarize_rpms.sh
1 #!/bin/bash
2
3 PREFIX=/var/www/html/uploadlogs/raw/old
4
5 # get keys
6 key_list="NodeManager
7 "
8 extra="
9 NodeUpdate
10 fprobe-ulog
11 iproute
12 iptables
13 kernel-2
14 util-vserver-pl-0
15 vserver-planetlab-f8-i386
16 vsys
17 vsys-scripts
18 "
19
20 #grep -E "^rpm_versions " * | \
21 #       awk '{  for(o=1;o<=NF;o++){ if ( $o ~ /planetlab/){ print $(o) ; } } }' | \
22 #       awk -F. '{printf("%s.%s.%s\n", $1,$2,$3) }' | sort | uniq -c
23
24
25 DATE=$( date --date "1 hour ago" +%Y-%m-%dT%H )
26 #DATE=$1
27
28 # get count of unique values from keys
29 echo $START Hours ago == $DATE
30 c=`ls $PREFIX/$DATE/*--upload | wc -l`
31 if [[ $c -gt 2 ]] ; then
32     for rpm in $key_list ; do 
33         echo $rpm
34         c=`grep -E -h "^rpm_versions .*$rpm" $PREFIX/$DATE/*--upload | wc -l`
35                 if [[ $c -gt 2 ]] ; then
36                     grep -h -E "^rpm_versions .*$rpm" $PREFIX/$DATE/*--upload | \
37                             awk '{  for(o=1;o<=NF;o++){ if ( $o ~ /planetlab/){ print $(o) ; } } }' | \
38                                     awk -F. '{printf("%s.%s.%s\n", $1,$2,$3) }' | grep $rpm | sort | uniq -c | 
39                                 sed -e 's/\./_/g' -e 's/\//_/g' | awk 'BEGIN{total=0} { total += $1 ; print $0 } END { print total, "total"}' | \
40                                 while read value value_name ; do 
41                                         /root/load-graphite.py --target "myops.rpms.$rpm.$value_name" --date $DATE  --value $value
42                                         sleep .2
43                                 done
44                     not_found=`grep -h -E "^rpm_versions .*" $PREFIX/$DATE/*--upload | grep -v "$rpm" | wc -l`
45                     /usr/share/myops/web/collect/server/load-graphite.py --target "myops.rpms.$rpm.notfound" --date $DATE  --value $not_found
46                 fi
47     done
48 fi
49