Friday, January 7, 2022

MongoDB log ใหญ่เกินไป ทำไง?

ใช้ putty ssh เข้าไปที่ server ที่ลง mongodb ไว้ ถ้าจำไม่ได้ว่า path ของ mongoDB อยู่ไหน ก็ลองใช้คำสั่ง

$ grep -i dbPath /etc/mongod.conf

ถ้าอยากรู้ว่า log file อยู่ไหน ก็เปลี่ยนเป็น

$ grep -i log /etc/mongod.conf

ปกติก็จะอยู่ที่ /var/log/mongodb/


ถ้าเจอว่ามีไฟล์เดียว mongodb.log ขนากหลาย GB แสดงว่าไม่ได้ทำ auto rotate ไว้ ก็เริ่มทำ rotate manual ได้เลย

1.พิมพ์ mongo เพื่อเข้าใช้งาน shell ของ mongodb

2.พิมพ์ use admin เพื่อใช้ database ที่ชื่อ admin

3.พิมพ์ db.adminCommand( { logRotate : 1 } )

เพื่อให้ mongod.log ไฟล์เดิมที่ใหญ่เกินเปลี่ยนชื่อเป็น mongod.log.2018-09-14T11-29-54

แล้วมันจะสร้าง mongod.log ไฟล์ใหม่ว่างๆ เพื่อเขียน log ให้

4.พิมพ์ exit ออกจาก mongodb


มันมีวิธีการตั้งให้ rotate log แบบ auto รายวันด้วย เดี๋ยวมาเขียนต่อ


คำสั่ง basic อื่นๆที่จำเป็น

$ df -h                                    เอาไว้ check disk space

$ free -m                                ดูว่าใช้ RAM ไปเท่าไหร่