Commit a549d6e532b8224267803d4c7f73a9616f0b7e84
1 parent
eb7fdf20
some more stuff to make this slightly more useful on a freebsd
Showing
2 changed files
with
35 additions
and
20 deletions
| @@ -3,6 +3,7 @@ gather_cpu_info() { | @@ -3,6 +3,7 @@ gather_cpu_info() { | ||
| 3 | 3 | ||
| 4 | has_class "GNU" && { | 4 | has_class "GNU" && { |
| 5 | export NCPUS=$(${NPROC}) | 5 | export NCPUS=$(${NPROC}) |
| 6 | + set_class ${NCPUS}cpus | ||
| 6 | } | 7 | } |
| 7 | 8 | ||
| 8 | has_class "Linux" && { | 9 | has_class "Linux" && { |
| @@ -18,9 +19,14 @@ gather_cpu_info() { | @@ -18,9 +19,14 @@ gather_cpu_info() { | ||
| 18 | } | 19 | } |
| 19 | /CPU(s):/ { print "export NCPUS=" $2 ";" } | 20 | /CPU(s):/ { print "export NCPUS=" $2 ";" } |
| 20 | /Virtualization/ { print "export CPU_VIRT=\"" $2 "\";" }') | 21 | /Virtualization/ { print "export CPU_VIRT=\"" $2 "\";" }') |
| 22 | + | ||
| 23 | + set_class ${NCPUS}cpus ${CPU_VIRT} ${BYTE_ORDER} ${OP_MODES} | ||
| 21 | } | 24 | } |
| 22 | 25 | ||
| 23 | - set_class ${NCPUS}cpus ${CPU_VIRT} ${BYTE_ORDER} ${OP_MODES} | 26 | + has_class "FreeBSD" && { |
| 27 | + export NCPUS=$(${SYSCTL} kern.smp.cpus | cut -d\ -f2) | ||
| 28 | + set_class ${NCPUS}cpus | ||
| 29 | + } | ||
| 24 | } | 30 | } |
| 25 | 31 | ||
| 26 | # vim: set ts=4 sw=4: | 32 | # vim: set ts=4 sw=4: |
| @@ -6,28 +6,37 @@ gather_uptime_info() { | @@ -6,28 +6,37 @@ gather_uptime_info() { | ||
| 6 | export LOAD_5="" | 6 | export LOAD_5="" |
| 7 | export LOAD_15="" | 7 | export LOAD_15="" |
| 8 | 8 | ||
| 9 | - has_class "Linux" && { | ||
| 10 | - eval $(${AWK} -v ncpus=${NCPUS} '{ | ||
| 11 | - print "LOAD_1=\"" $1 "\";LOAD_5=\"" $2 "\";LOAD_15=\"" $3 "\";"; | ||
| 12 | - for(i=1; i<4; i++) { | ||
| 13 | - if($i<=0.0) { | ||
| 14 | - load="LOW" | 9 | + local CALC_LOAD_AWK='{ |
| 10 | + print "LOAD_1=\"" $1 "\";LOAD_5=\"" $2 "\";LOAD_15=\"" $3 "\";"; | ||
| 11 | + for(i=1; i<4; i++) { | ||
| 12 | + if($i<=0.0) { | ||
| 13 | + load="LOW" | ||
| 14 | + } else { | ||
| 15 | + inv_load=ncpus/$i; | ||
| 16 | + if (inv_load > (ncpus/2)) { | ||
| 17 | + load="LOW"; | ||
| 15 | } else { | 18 | } else { |
| 16 | - inv_load=ncpus/$i; | ||
| 17 | - if (inv_load > (ncpus/2)) { | ||
| 18 | - load="LOW"; | ||
| 19 | - } else { | ||
| 20 | - load="MODERATE"; | ||
| 21 | - } | ||
| 22 | - if (inv_load <= 0) load="HIGH"; | 19 | + load="MODERATE"; |
| 23 | } | 20 | } |
| 24 | - | ||
| 25 | - if(i==1) { classes=classes "LOAD_1_" load " " } | ||
| 26 | - if(i==2) { classes=classes "LOAD_5_" load " " } | ||
| 27 | - if(i==3) { classes=classes "LOAD_15_" load " "; } | 21 | + if (inv_load <= 0) load="HIGH"; |
| 28 | } | 22 | } |
| 29 | - print "set_class " classes ";"; | ||
| 30 | - }' </proc/loadavg) | 23 | + |
| 24 | + if(i==1) { classes=classes "LOAD_1_" load " " } | ||
| 25 | + if(i==2) { classes=classes "LOAD_5_" load " " } | ||
| 26 | + if(i==3) { classes=classes "LOAD_15_" load " "; } | ||
| 27 | + } | ||
| 28 | + print "set_class " classes ";"; | ||
| 29 | + }' | ||
| 30 | + | ||
| 31 | + has_class "Linux" && { | ||
| 32 | + eval $(${AWK} -v ncpus=${NCPUS} "${CALC_LOAD_AWK}" </proc/loadavg) | ||
| 33 | + } | ||
| 34 | + | ||
| 35 | + has_class "FreeBSD" && { | ||
| 36 | + local N='\([0-9]*\.[0-9]*\)' | ||
| 37 | + eval $(${SYSCTL} vm.loadavg |\ | ||
| 38 | + ${SED} 's/^.*{ '"${N}"' '"${N}"' '"${N}"'.*/\1 \2 \3/' |\ | ||
| 39 | + ${AWK} -v ncpus=${NCPUS} "${CALC_LOAD_AWK}") | ||
| 31 | } | 40 | } |
| 32 | 41 | ||
| 33 | export UPTIME LOAD_1 LOAD_5 LOAD_15 | 42 | export UPTIME LOAD_1 LOAD_5 LOAD_15 |
Please
register
or
login
to post a comment