เราเพิ่งแสดงวิธีติดตั้ง MongoDB ใน Ubuntu 18.04 ไม่กี่วันมา เมื่อคุณ Deploy Database สำเร็จแล้ว คุณต้อง Monitor Performance ของมันขณะที่มันกำลังรัน นี่เป็นหนึ่งในงานสำคัญที่สุดภายใต้ Database Administration
โชคดีที่ MongoDB มี Methods ต่างๆ สำห Retrieve Performance และ Activity ของมัน ในบทความนี้ เราจะดู Monitoring Utilities และ Database Commands สำห Report Statistics เกี่ยวกับ State ของ Running MongoDB Instance
1. Mongostat
Mongostat มีฟังก์ชันคล้าย vmstat Monitoring Tool ที่มีบน Unix-like OS ทั้งหมด เช่น Linux, FreeBSD, Solaris และ MacOS Mongostat ใช้เพื่อได้ Quick Overview ของ Database Status มันให้ Dynamic Real-time View ของ Running mongod หรือ mongos Instance ดึง Counts ของ Database Operations ตาม Type เช่น Insert, Query, Update, Delete และอื่นๆ
คุณสามารถรัน mongostat ได้ดังนี้ โปรดทราบว่าหากคุณ Enable Authentication ให้ใส่ User Password ใน Single Quotes เพื่อหลีกเลี่ยง Error โดยเฉพาะหากมี Special Characters
$ mongostat -u "root" -p '=@!#@%$admin1' --authenticationDatabase "admin"
สำห mongostat Usage Options เพิ่มเติม พิมพ์คำสั่ง:
$ mongostat --help
2. Mongotop
Mongotop ยังให้ Dynamic Real-time View ของ Running MongoDB Instance มัน Track เวลาที่ MongoDB Instance ใช้ Read และ Write Data ส่งค่ากลับทุกวินาที โดย Default
$ mongotop -u "root" -p '=@!#@%$admin1' --authenticationDatabase "admin"
สำห mongotop Usage Options เพิ่มเติม พิมพ์คำสั่ง:
$ mongotop --help
3. serverStatus Command
ก่อนอื่น คุณต้องรันคำสั่งต่อไปนี้เพื่อ Login เข้า mongo Shell
$ mongo -u "root" -p '=@!#@%$admin1' --authenticationDatabase "admin"
จากนั้นรันคำสั่ง serverStatus ซึ่งให้ Overview ของ Database State โดย Collect Statistics เกี่ยวกับ Instance
>db.runCommand( { serverStatus: 1 } )
OR
>db.serverStatus()
4. dbStats Command
คำสั่ง dbStats ส่งคืน Storage Statistics สำห Database เฉพาะ เช่น Amount of Storage Used, Quantity of Data ใน Database และ Object, Collection, Index Counters
>db.runCommand({ dbStats: 1 } )
OR
>db.stats()
5. collStats
collStats Command ใช้ Collect Statistics คล้าย dbStats แต่ที่ Collection Level แต่ Output รวมถึง Count of Objects ใน Collection, Size ของ Collection, Disk Space ที่ Collection ใช้ และ Information เกี่ยวกับ Indexes
>db.runCommand( { collStats : "aurthors", scale: 1024 } )
6. replSetGetStatus Command
replSetGetStatus Command Output Status ของ Replica Set จากมุมมองของ Server ที่ Process Command คำสั่งนี้ต้องรันต่อ admin Database ในรูปแบบ:
>db.adminCommand( { replSetGetStatus : 1 } )
นอกจาก Utilities และ Database Commands ข้างต้น คุณยังสามารถใช้ Third-party Monitoring Tools ที่รองรับได้ ทั้งโดยตรง หรือผ่าน Plugins ของพวกเขา รวมถึง mtop, munin และ nagios
สำหข้อมูลเพิ่มเติม โปรดอ้างอิง: Monitoring for MongoDB Documentation
ขอจบเท่านี้คราวนี้! ในบทความนี้ เราครอบคลุม Monitoring Utilities และ Database Commands ที่มีประโยชน์สำห Report Statistics เกี่ยวกับ State ของ Running MongoDB Instance ใช้ฟอร์มความคิดเห็นด้านล่างถามคำถามหรือแชร์ความคิดกับเราได้เลย