Linux查看jar包错误日志及持久化运行jar包

一、查看jar包运行信息命令:ps -ef | grep java

如图,给出了所部署jar包的环境变量,服务名称,服务端口信息。

这样便能得到部署的jar包是否在服务器成功运行及基本信息。

二、查看日志

启动信息无误,查看日志是否有报错。

监控命令:tail -fn 200 XXX (XXX为日志根路径) 查看近200日志信息

根据错误日志信息去解决即可。

附加:线上查看服务日志如何更加方便?

一、标准输出

java -jar your-app.jar 命令是在服务器控制台的标准输出,即默认情况下,日志会输出到当前窗口,这是最简单的启动方式。
二、指定日志输出文件.

上面这种方式查看日志并不方便,需要一直盯着服务器的输出内容来找报错信息。

那是不是将日志信息存入一个文件中查询会更加方便呢?是的,我们可以将日志重定向输出到指定文件中:使用 > 或 >> 符号

例:java -jar chat-1.0-SNAPSHOT.jar > chat.log 2>&1

(2>&1的作用是同时捕获错误输出(stderr),可以将两个输出合并)

进入chat.log,这样我们就能更加方便查看成功与错误日志。

三、指定日志输出文件并持久化运行

虽然2能帮助我们更加方便的查看日志信息,但是还有一个缺点就是服务器关闭后,jar包也会随之停止运行,不能实时检测我们的运行信息。怎么解决?那就是后台运行并持久化日志。

可以使用 nohup 命令可以使程序在后台运行并且不会因为关闭SSH会话而停止,同时日志会写入 nohup.out 文件。

例:nohup java -jar chat-1.0-SNAPSHOT.jar > custom.log 2>&1 &

  • 此时正在运行的服务一方面不会因为我们关闭服务器而关闭
  • 另一方面也能更加方便我们查看该服务日志信息
相关推荐
EMTime6 小时前
Docker运行OpenWRT
运维·docker·容器
lolo大魔王7 小时前
Linux 文件系统超全面详解(原理、结构、挂载、分区、inode、日志、管理命令)
linux·运维·服务器
磊 子8 小时前
详细讲解一下epoll
linux·io·epoll·io多路复用
printfLILEI9 小时前
php中的类与对象以及反序列化
linux·开发语言·php
zyl837219 小时前
Docker 使用手册
运维·docker·容器
古月方枘Fry9 小时前
MGRE实验
运维·服务器
叠叠乐10 小时前
redmi k90 pro max 强解BL,刷海外rom, 并刷入sukisu ultra
linux
stolentime10 小时前
FreeDomain 本地开发环境快速搭建指南
运维·服务器·网络
xiaoye-duck11 小时前
《Linux系统编程》Linux 进程间通信之管道基础解析:从匿名管道原理到基于管道的进程池实现
linux