TDS 服务获取组件 jstack 步骤参考

  使用配置
内容纲要

概要描述

本文主要描述 TDS 服务获取组件 jstack 步骤参考。本文以TDS330获取Foundation Connector为例。

详细说明

目的

获取 TDS 组件(以 Foundation Connector 为例)的jstack,该日志可以用于分析程序卡住等问题的根本原因。

查看相关pod

在服务器后台执行

kubectl get po -owide | grep connector

其中connector替换为需要获取jstack的组件名字,可以模糊查询。

file

上图的pod名foundation-connector-foundation1-79c4f555d7-s7mmv即为我们需要查看的pod名字。

进入pod内部

根据上面获取的pod名进入pod内部。

kubectl exec -it foundation-connector-foundation1-79c4f555d7-s7mmv bash

其中foundation-connector-foundation1-79c4f555d7-s7mmv替换为实际的pod名字。

file

查看JPS进程

在pod内,执行以下命令获取JPS进程号。

jps

file

如上图所示,这个组件的JPS进程号是24。

打jstack追加到文件

复现问题,等程序出现卡住情况时,

在pod内部执行以下命令打jstack并写入文件。

jstack 24 >> /tmp/jstack.log

然后等待1分钟,再次执行

jstack 24 >> /tmp/jstack.log

上面的24是上一步获取的JPS进程号,以实际情况为准。

再等待1分钟再次执行,总共打约5次,这样就收集到了几分钟内连续的5个jstack日志。

file

退出pod并获取文件

首先执行exit退出pod,回到宿主机。

exit

file

然后执行以下命令获取pod内的jstack日志文件。

kubectl cp foundation-connector-foundation1-79c4f555d7-s7mmv:/tmp/jstack.log jstack.log

file

其中foundation-connector-foundation1-79c4f555d7-s7mmv需要改成一开始获取的pod名。

执行完后,jstack日志文件就被放到了宿主机当前目录下了。

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。