首页 > 其他分享 >记一次由于不当的启动服务方式导致线上报错的排查经历

记一次由于不当的启动服务方式导致线上报错的排查经历

时间:2022-10-15 10:11:22浏览次数:55  
标签:以后 持久 登录 redis 排查 nohup 不当 上报 超时

项目背景:中科方德 / Springboot / JDK1.8 / 达梦数据库7.0

具体问题:登录系统以后任意操作都显示登录过期,请重新登录,再次登录依旧过期,无法做任何操作

排查过程:

看F12登录接口是返回了登陆成功的token,但是任意操作调的接口都直接返回登录过期并且清除掉token导致需要重新登录。

经过查看代码后发现逻辑是登陆时往redis写入一个登录的时间,然后每次操作时根据当前时间作对比,如果小于超时时间则刷新,大于超时时间则提示超时。

测试后发现线上环境无法正常刷新上次操作时间,第一次登陆以后时间就无法修改,导致只要在第一次登陆+超时时长以后的所有操作都认为超时。

经确认以后代码逻辑没有问题,基本确定是redis的原因。

找到对应的key以后手动在redis中修改值报错 MISCONF Redis is configured to save RDB snapshots,百度以后是因为redis持久化失败以后就无法继续修改内存中的值了,可以通过将 stop-writes-on-bgsave-error 设置为 no 来让redis即使持久化失败也可以修改内存的值,修改以后项目恢复正常。

但是这毕竟只是治标不治本,还需要找到redis持久化失败的原因(当然我也不知道为啥这个要持久化,完全没有必要)。

查看以后发现redis持久化所在盘被nohup.out占满了,而服务器上所有的应用系统日志全部输出到了这个nohup.out中。

然而应用系统都放在另一个大磁盘中,日志也不应该输出在这里。

之后根据之前部署人员留下的文档发现,所有应用系统启动的命令都是在/root下执行的,也就导致nohup全部输出到了/root下,导致磁盘爆满。

后续将日志清理掉,所有应用系统编写脚本放在应用目录下并重启,nohup输出到正确位置以后系统恢复正常。

总结:真几把坑

标签:以后,持久,登录,redis,排查,nohup,不当,上报,超时
From: https://www.cnblogs.com/bigVGod/p/16793631.html

相关文章

  • 【Oracle】多表联合查询超时问题排查
    文中使用的Oracle版本为10g。本文内容将涉及大规模SQL联合查询优化内容,本人尽可能讲得容易理解一些,若有看不懂的地方是本人表述不清楚,望各位海涵。此外文章是2016年写的,那时......
  • 系统性能瓶颈排查点
    1、服务器最大连接数[root@ecs-493b-0007config]#ulimit-acorefilesize(blocks,-c)0datasegsize(kbytes,-d)unlimitedschedulingpr......
  • 一周第二次课(3月20日)1.6/1.7 配置IP 1.8 网络问题排查
    1.6/1.7配置IP配置IP的作用:1、使虚拟机可以和外部通信,通过远程连接虚拟机            2、使虚拟机可以上网配置IP的步骤:1、自动获取IP#dhclient ......
  • EasyCVR使用RTMP推流不成功的原因排查及解决
    EasyCVR可支持设备通过国标GB28181、RTMP、RTSP/Onvif、海康SDK、大华SDK、Ehome等协议接入,对外可分发RTSP、RTMP、FLV、HLS、WebRTC等格式的视频流。平台支持海量视频汇聚......
  • JVM 排查工具介绍(三)jmap
    一、基本知识jmap:主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节。 通常该命令是用来导出dump 文件 进行jvm 内存分析二......
  • 每周一坑-生产环境出口流量报警排查
    每周一坑-生产环境出口流量报警排查今天加班到7点,颇坑的,老板应该想把我弄死(这女的专业能力好菜,还不会分析问题,想问题不够全面),一路上他一直引导我如何挖掘问题本质,是个......
  • docker 容器内的 java 进程自动退出排查
    一个简单的javaweb程序,运行在docker容器中,提供对外接口服务现象:使用dockerrun启动容器后可以正常运行,访问一切正常,但是隔了几十分钟后容器自动退出,java日志一切......
  • 基于SSM+Vue汽车故障上报系统Java汽车维修管理系统(源码调试+讲解+文档)
    ......
  • mysql CPU过高排查
    最近发现mysqlCPU使用率高,将排查步骤记录一下一、top命令找到PID为24319二、vmstat1查看一下CPU使用率三、pidstat-u查看一下CPU使用率​四、pidstat-t-p2431......
  • 一次磁盘占用率 100% 的排查记录
    你好,我是悟空。最近遇到一个服务器的问题:磁盘满了,占用率100%~这个问题太常见了,于是先来排查一波是哪些文件占用了大量磁盘。一、排查磁盘占用率100%1.1查看磁盘使用......