zoukankan      html  css  js  c++  java
  • PM2报错‘Spawning PM2 daemon with pm2_home...’的解决方案

    问题

    在某次因为SRE升级域名问题,导致了Node服务器代码死循环了,产生的504(Gateway timeout)错误。
    登录到机器上看,正在用pm2查问题的原因中,突然发现错误从504变成的502。
    也就是Node服务彻底挂掉了,准备用PM2重启服务,发现PM2无法启动。
    执行任何PM2命令都提示以下信息:

    $ pm2 list
    [PM2] Spawning PM2 daemon with pm2_home=/home/sankuai/.pm2
    

    现象

    后经查,发现机器的磁盘空间被占满。猜测因为是Node服务因为死循环而日志把机器的磁盘给打满了,导致了PM2的守护进程无法启动。

    $ df -hl
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/vda1        25G   24G   16M 100% /
    tmpfs           937M     0  937M   0% /dev/shm
    /dev/vdc1        99G  1.3G   93G   2% /opt
    
    

    遂进入PM2的默认log日志目录,发现果然如此:

    $ ll
    total 20662092
    -rw-rw-r-- 1 sankuai sankuai 20652240896 Jun 30 11:28 boot-error-0.log
    -rw-rw-r-- 1 sankuai sankuai   505733120 Jun 30 11:28 boot-out-0.log
    

    解决方案

    删除日志文件:

    $ rm boot-error-0.log 
    $ rm boot-out-0.log 
    

    再次查看磁盘空间:恢复正常

    $ df -hl
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/vda1        25G  3.7G   20G  16% /
    tmpfs           937M     0  937M   0% /dev/shm
    /dev/vdc1        99G  1.3G   93G   2% /opt
    

    再次启动PM2,PM2恢复正常:

    $ pm2 list
    ┌──────────┬────┬──────┬──────┬────────┬─────────┬────────┬─────┬─────────────┬──────────┐
    │ App name │ id │ mode │ pid  │ status │ restart │ uptime │ cpu │ mem         │ watching │
    ├──────────┼────┼──────┼──────┼────────┼─────────┼────────┼─────┼─────────────┼──────────┤
    │ boot     │ 0  │ fork │ 4014 │ online │ 0       │ 14m    │ 0%  │ 1001.9 MB   │ disabled │
    └──────────┴────┴──────┴──────┴────────┴─────────┴────────┴─────┴─────────────┴──────────┘
     Use `pm2 show <id|name>` to get more details about an app
    
  • 相关阅读:
    百度云管家开机启动如何取消
    双语小说阅读:《谁动了我的奶酪》
    [Swift]方法
    Swift中的类型属性(静态变量)
    Swift 学习之二十一:?和 !(详解)
    苹果Swift可为Windows/Android开发软件了
    iOS7下滑动返回与ScrollView共存二三事
    swift c++ oc 混编
    RTOS
    STM32 RTC
  • 原文地址:https://www.cnblogs.com/xxcanghai/p/7111517.html
Copyright © 2011-2022 走看看