จาก บทความก่อนเรื่อง pm2 ที่ใช้ pm2 ในการแก้ไขปัญหา
viewtopic.php?t=92376
หลักจาก รัน node ผ่าน pm2 ไปสักระยะจะมีการใช้งานพื้นที่สำหรับเก็บ logs ค่อนข้างมาก ทำให้เจอปัญหาพื้นที่เต็ม
viewtopic.php?p=307947#p307947
ตามกระทู้นี้ได้แนะนำวิธีในการแก้ไขปัญหาไว้แล้ว แต่ถ้าแก้วิธีนี้ ยังต้องทำเองแมนนวล ซึ่งจะทำให้เสียเวลา
กระทู้นี้เลย แนะนำต่อวิธีจัดการ logs ใน pm2 โดยใช้
pm2-logrotate
ก่อนอืนต้องติดตั้ง กันก่อนด้วยคำสั่ง (ตัวอย่างคำสั่งใช้บน Linux Ubuntu นะครับ)
โค้ด: เลือกทั้งหมด
pm2 install pm2-logrotate
[PM2][Module] Installing NPM pm2-logrotate module
[PM2][Module] Calling [NPM] to install pm2-logrotate ...
+ [email protected]
added 213 packages from 236 contributors and audited 214 packages in 22.79s
18 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
[PM2][Module] Module downloaded
[PM2][WARN] Applications pm2-logrotate not running, starting...
[PM2] App [pm2-logrotate] launched (1 instances)
Module: pm2-logrotate
$ pm2 set pm2-logrotate:max_size 10M
$ pm2 set pm2-logrotate:retain 30
$ pm2 set pm2-logrotate:compress false
$ pm2 set pm2-logrotate:dateFormat YYYY-MM-DD_HH-mm-ss
$ pm2 set pm2-logrotate:workerInterval 30
$ pm2 set pm2-logrotate:rotateInterval 0 0 * * *
$ pm2 set pm2-logrotate:rotateModule true
Modules configuration. Copy/Paste line to edit values.
[PM2][Module] Module successfully installed and launched
[PM2][Module] Checkout module options: `$ pm2 conf
และจะมีตารางให้เราเห็น app ของ node ที่รันอยู่ทั้งหมดขึ้นมาให้เราดู
และต่อท้ายด้วย Module pm2-logrotate และ Memory ที่ใช้ ตัวอย่างผม ใช้ ram ไป 612.0kb เครื่องใครมีแรมน้อยประเมินการใช้งานก่อนนะ
ต่อมามากำหนดรูปแบบของ Log กัน
ตัวอย่างผม set แค่นี้ก็พอ
โค้ด: เลือกทั้งหมด
pm2 set pm2-logrotate:max_size 50M
pm2 set pm2-logrotate:retain 10
pm2 set pm2-logrotate:compress true
เท่านี้ก็หายห่วง หมดปัญหาพื้นที่เต็มจาก logs ของ pm2 แล้ว
System Admin Linux สามารถศึกษาเรื่องอื่นๆ เพิ่มเติมได้ที่นี่
viewforum.php?f=27
หรือต้องการศึกษาการบทความเกี่ยวกับ Server สำหรับ Hosting ได้ที่นี่
https://www.mindphp.com/บทความ/66-server-hosting.html