在linux里面怎么监控一个java程序的运行

Python010

在linux里面怎么监控一个java程序的运行,第1张

可以写一个脚本进行监控

可以用  ps   top  jstack 等命令来查看和监控进程

参考1

参考2

我是海腾数据中心的技术小哥,很高兴为您解答问题。

CPU资源时,按照以下步骤进行查找:

(一):通过【 top -p 12377 -H】 查看java进程的有哪些线程的运行情况;

和通过【jstack 12377 >stack.log】生成Java线程的dump详细信息;

先用top命令找出占用资源厉害的java进程id,如图:# top

如上图所示,java的进程id为’52554′,接下来用top命令单独对这个进程中的所有线程作监视:

1top -p 52554 -H

# top视图里面里面可以通过快捷键依次b ,x高亮显示top的列找出需要的线程,默认CPU排序,Sh

java 的WatchService 类提供了一种方式可以检查

try

{

WatchService watchService = FileSystems.getDefault()

.newWatchService()

Path path = Paths.get(pathName)

// 注册监听器

path.register(watchService,

StandardWatchEventKinds.ENTRY_CREATE,

StandardWatchEventKinds.ENTRY_DELETE)

while (true)

{

// 阻塞方式,消费文件更改事件

List<WatchEvent<?>>watchEvents = watchService.take()

.pollEvents()

for (WatchEvent<?>watchEvent : watchEvents)

{

System.out.printf("[%s]文件发生了[%s]事件。%n", watchEvent

.context(), watchEvent.kind())

}

}

}

catch (Exception e)

{

}