95 lines
2.8 KiB
YAML
95 lines
2.8 KiB
YAML
runcharts:
|
|
- title: SEARCH ENGINE RESPONSE TIME (sec)
|
|
position: [[0, 0], [52, 16]]
|
|
triggers:
|
|
- title: Latency threshold exceeded
|
|
condition: echo "$prev < 0.8 && $cur > 0.8" |bc -l
|
|
actions:
|
|
terminal-bell: true
|
|
sound: true
|
|
visual: true
|
|
script: 'say alert: ${label} latency exceeded ${cur} second'
|
|
scale: 3
|
|
items:
|
|
- label: GOOGLE
|
|
value: curl -o /dev/null -s -w '%{time_total}' https://www.google.com
|
|
- label: YAHOO
|
|
value: curl -o /dev/null -s -w '%{time_total}' https://search.yahoo.com
|
|
- label: BING
|
|
value: curl -o /dev/null -s -w '%{time_total}' https://www.bing.com
|
|
- title: MONGO COLLECTIONS COUNT
|
|
position: [[53, 0], [27, 8]]
|
|
legend:
|
|
enabled: true
|
|
details: false
|
|
scale: 0
|
|
items:
|
|
- label: ACTIVE
|
|
value: mongo --quiet --host=localhost blog --eval "db.getCollection('posts').find({status:'ACTIVE'}).itcount()"
|
|
- label: INACTIVE
|
|
value: mongo --quiet --host=localhost blog --eval "db.getCollection('posts').find({status:'INACTIVE'}).itcount()"
|
|
barcharts:
|
|
- title: EVENTS BY STATUS
|
|
refresh-rate-ms: 1000
|
|
position: [[0, 17], [27, 12]]
|
|
scale: 0
|
|
items:
|
|
- label: NEW
|
|
value: mongo --quiet --host=localhost blog --eval "db.getCollection('posts').find({status:'ACTIVE'}).itcount()"
|
|
- label: TRIGGERED
|
|
value: mongo --quiet --host=localhost blog --eval "db.getCollection('posts').find({status:'INACTIVE'}).itcount()"
|
|
- label: IN_PROCESS
|
|
value: echo 0
|
|
- label: FAILED
|
|
value: mongo --quiet --host=localhost blog --eval "db.getCollection('posts').find({status:'ACTIVE'}).itcount()"
|
|
- label: FINISHED
|
|
value: mongo --quiet --host=localhost blog --eval "db.getCollection('posts').find({status:'INACTIVE'}).itcount()"
|
|
gauges:
|
|
- title: YEAR PROGRESS
|
|
position: [[53, 8], [27, 2]]
|
|
values:
|
|
cur: date +%j
|
|
max: echo 365
|
|
min: echo 0
|
|
- title: DAY PROGRESS
|
|
position: [[53, 10], [27, 2]]
|
|
values:
|
|
cur: date +%H
|
|
max: echo 24
|
|
min: echo 0
|
|
- title: HOUR PROGRESS
|
|
position: [[53, 12], [27, 2]]
|
|
values:
|
|
cur: date +%M
|
|
max: echo 60
|
|
min: echo 0
|
|
- title: MINUTE PROGRESS
|
|
position: [[53, 14], [27, 2]]
|
|
triggers:
|
|
- title: CLOCK BELL EVERY MINUTE
|
|
condition: '[ $label == "cur" ] && [ $cur -eq 0 ] && echo 1 || echo 0'
|
|
actions:
|
|
sound: true
|
|
script: say -v samantha `date +%I:%M%p`
|
|
values:
|
|
cur: date +%S
|
|
max: echo 60
|
|
min: echo 0
|
|
asciiboxes:
|
|
- title: LOCAL TIME
|
|
position: [[53, 17], [27, 5]]
|
|
value: date +%r
|
|
- title: UTC TIME
|
|
position: [[53, 22], [27, 7]]
|
|
value: env TZ=UTC date +%r
|
|
font: 3d
|
|
sparklines:
|
|
- title: CPU usage
|
|
position: [[27, 22], [25, 7]]
|
|
scale: 0
|
|
value: ps -A -o %cpu | awk '{s+=$1} END {print s}'
|
|
- title: Memory pages free
|
|
position: [[27, 17], [25, 5]]
|
|
scale: 0
|
|
value: memory_pressure | grep 'Pages free' | awk '{print $3}'
|