Zabbix의 MongoDB 용 Key 생성 및 Item 설정 방법
# /var/lib/zabbix/.mongo.rc
function authRequired() {
try {
if (db.serverCmdLineOpts().code == 13) {
return true;
}
return false;
}
catch (err) {
return false;
}
}
if (authRequired()) {
try {
rs.slaveOk()
var prev_db = db
db = db.getSiblingDB('')
db.auth('', '')
db = db.getSiblingDB(prev_db)
}
catch (err) {
return;
}
}
userParameter_mongo.conf
UserParameter=mongo.service,ps -ef | grep mongo | grep -v grep | wc -l
UserParameter=mongo.network[*],echo "db.serverStatus().network" | HOME=/var/lib/zabbix mongo | grep $1 | cut -d ":" -f 2 | cut -d "," -f1 | cut -d " " -f 2
UserParameter=mongo.opcounters[*],echo "db.serverStatus().opcounters" | HOME=/var/lib/zabbix mongo | grep $1 | cut -d ":" -f 2 | cut -d "," -f 1 | cut -d " " -f 2
UserParameter=mongo.mem_resident,echo "db.serverStatus().mem" | HOME=/var/lib/zabbix mongo | grep resident | cut -d ":" -f 2 | cut -d "," -f 1 | cut -d " " -f 2
UserParameter=mongo.mem_virtual,echo "db.serverStatus().mem" | HOME=/var/lib/zabbix mongo | grep virtual | cut -d ":" -f 2 | cut -d "," -f 1| cut -d " " -f 2
UserParameter=mongo.mem_mapped,echo "db.serverStatus().mem" | HOME=/var/lib/zabbix mongo | grep '\bmapped\b' | cut -d ":" -f 2 | cut -d "," -f 1 | cut -d " " -f 2
UserParameter=mongo.connection_current,echo "db.serverStatus().connections.current"| HOME=/var/lib/zabbix mongo | sed -n 3p
UserParameter=mongo.connection_available,echo "db.serverStatus().connections.available"| HOME=/var/lib/zabbix mongo | sed -n 3p
UserParameter=mongo.queue_write,echo "db.serverStatus().globalLock.currentQueue.writers" | HOME=/var/lib/zabbix mongo |sed -n 3p
UserParameter=mongo.queue_reader,echo "db.serverStatus().globalLock.currentQueue.readers" | HOME=/var/lib/zabbix mongo |sed -n 3p
UserParameter=mongo.cursors_totalOpen,echo "db.serverStatus().cursors.totalOpen" | HOME=/var/lib/zabbix mongo | sed -n 3p
UserParameter=mongo.cursors_timedOut,echo "db.serverStatus().cursors.timedOut" | HOME=/var/lib/zabbix mongo | sed -n 3p
UserParameter=mongo.backgroundFlush,echo "db.serverStatus().backgroundFlushing.last_ms" | HOME=/var/lib/zabbix mongo | sed -n 3p
UserParameter=mongo.rpstatus,echo "rs.status()"| HOME=/var/lib/zabbix mongo | grep myState| cut -d ":" -f 2 | cut -d "," -f 1 | cut -d " " -f 2
UserParameter=mongo.pagefaults,echo "db.serverStatus().extra_info.page_faults" | HOME=/var/lib/zabbix mongo | sed -n 3p
UserParameter=mongo.oplog_storetime,echo "db.printReplicationInfo()" | HOME=/var/lib/zabbix mongo | sed -n 4p | cut -d "(" -f 2 | cut -d "h" -f 1
name | key |
---|---|
connection available | mongo.connection_available |
connection current | mongo.connection_current |
page faults | mongo.pagefaults |
queue reader | mongo.queue_reader |
queue write | mongo.queue_write |
service | mongo.service |
disk used(%) | vfs.fs.size[/var/lib/mongo, pused] |