※ 本記事は、Puneeth Prakashによる”Steps to collect JFR recording on WebLogic Kubernetes Operator“を翻訳したものです。
2023年10月25日
ステップ1:
Operatorネームスペースのpodsを取得 :
構文:
kubectl get pods -n <operator_namespace>
コマンド :
bash-3.2$ kubectl get pods -n sample-weblogic-operator-ns
NAME READY STATUS RESTARTS AGE
weblogic-operator-webhook-b96d4b5d6–7cvqs 1/1 Running 0 71s
weblogic-operator-88fc58c65-jfxs6 1/1 Running 0 71s
ステップ2:
kubectl execを使用して、Operator Podコンテナへのシェルを取得 :
構文:
kubectl exec -it <operator_pod> -n <operator_namespace> — /bin/bash
コマンド:
bash-3.2$ kubectl exec -it weblogic-operator-88fc58c65-jfxs6 -n sample-weblogic-operator-ns — /bin/bash
ステップ3:
“jps”コマンドを使用して、実行中のjavaプロセスのリストを取得:
コマンド:
bash-5.1$ jps
209 Jps
15 weblogic-kubernetes-operator.jar
ステップ4:
JCMDユーティリティを使用したJFR記録の開始
構文:
jcmd <pid> JFR.start duration=<in_seconds> filename=<filename.jfr>
コマンド:
bash-5.1$ jcmd 15 JFR.start duration=10s filename=/tmp/my.jfr
15:
Started recording 1. The result will be written to:
/tmp/my.jfr
bash-5.1$ cd /tmp/
bash-5.1$ ls
2023_10_17_03_59_36_15 hsperfdata_oracle hsperfdata_root my.jfr
bash-5.1$ exit
exit
ステップ5:
JFR記録をローカル・マシンにコピー:
構文:
kubectl cp <pod-id>:<path> <local-path> -n <namespace>
コマンド:
bash-3.2$ kubectl -n sample-weblogic-operator-ns cp weblogic-operator-88fc58c65-jfxs6:/tmp/my.jfr ~/Desktop/my.jfr
bash-3.2$
デモ :
