✏️ 编辑:page_load_time
路径:
/virtual/bigbrother/public_html/edream-c.com/cr/SCRIPTS/page_load_time
大小:2.88 KB · 修改:2013-09-22 08:35:56 · 权限:0755 · 可写
← 返回目录
👁 查看
⬇ 下载
#!/bin/sh # -*- ksh -*- _() { python -c ' import tomuss_init import sys import utilities for i in sys.argv[1:]: print utilities.__(i).encode("latin-1") ' $1 } PLTT=$(_ LABEL_page_load_time_time) PLTN=$(_ LABEL_page_load_time_number) PLT24=$(_ LABEL_page_load_time_24) PLT7=$(_ LABEL_page_load_time_7) PLTA=$(_ LABEL_page_load_time_total) PLTAD=$(_ LABEL_page_load_time_average_day) PLTAW=$(_ LABEL_page_load_time_average_week) PLTMD=$(_ LABEL_page_load_time_median_day) PLTMW=$(_ LABEL_page_load_time_median_week) PLTND=$(_ LABEL_page_load_time_nr_day) PLTNW=$(_ LABEL_page_load_time_nr_week) PLTD=$(_ LABEL_page_load_time_days) do_graph() { grep page_load_time LOGS/TOMUSS/$(date '+%Y').times | awk "$2 "'{ A[int(10 * $2)/10]++ ; } END { max = 0 ; for(i in A) if ( i+0 > max ) max = i+0 ; for(i=0;i<=max;i += 0.1) if ( A[i] == "" ) print i, "0" ; else print i, A[i] ; }' | sort -n > TMP/xxx.page_load_time echo " set terminal png large font arial set output 'TMP/$1.png' set xlabel '$PLTT' set ylabel '$PLTN' set logscale x 2 plot 'TMP/xxx.page_load_time' with histeps title '$3' " | gnuplot } export DAY=86400 export WEEK=$(expr $DAY '*' 7) export MONTH=$(expr $DAY '*' 31) do_graph "xxx.page_load_time" "" "$PLTA" do_graph "xxx.page_load_time_1d" "\$1>$(expr $(date +'%s') - $DAY)" "$PLT24" do_graph "xxx.page_load_time_1w" "\$1>$(expr $(date +'%s') - $WEEK)" "$PLT7" NR_DAYS=140 DATE=$(expr $(date +'%s') - \( $NR_DAYS '*' $DAY \)) grep page_load_time LOGS/TOMUSS/$(date '+%Y').times | python -c ' import sys import itertools d = list([[] for i in range('$NR_DAYS')]) for i in sys.stdin.readlines(): i = i.split(" ") t = float(i[0]) if t < '$DATE': continue d[int((t-'$DATE')/'$DAY')].append(float(i[1])) f = open("TMP/xxx.page_load_timeW", "w") for i in range(0, '$NR_DAYS', 7): dd = sorted(itertools.chain(*d[i:i+7])) nr = len(dd) if nr: f.write("%s %s %s %s\n" % (i, sum(dd)/nr, nr, dd[nr//2])) f.close() f = open("TMP/xxx.page_load_time", "w") for i in range('$NR_DAYS'): if d[i]: d[i].sort() nr = len(d[i]) if nr: f.write("%s %s %s %s\n" % (i, sum(d[i])/nr, nr, d[i][nr//2])) f.close() ' echo " set terminal png large font arial set output 'TMP/xxx.page_load_time_evolution.png' set logscale y set ylabel '$PLTT' set xlabel '$PLTD' plot 'TMP/xxx.page_load_time' using 1:2 with lines title '$PLTAD', 'TMP/xxx.page_load_time' using 1:4 with lines title '$PLTMD', 'TMP/xxx.page_load_time' using 1:3 with lines title '$PLTND' " | gnuplot echo " set terminal png large font arial set output 'TMP/xxx.page_load_time_evolutionW.png' set logscale y set ylabel '$PLTT' set xlabel '$PLTD' plot 'TMP/xxx.page_load_timeW' using 1:2 with lines title '$PLTAW', 'TMP/xxx.page_load_timeW' using 1:4 with lines title '$PLTMW', 'TMP/xxx.page_load_timeW' using 1:3 with lines title '$PLTNW' " | gnuplot
💾 保存
取消
保存为 UTF-8,换行统一为 LF