開発時によく使用されるlinuxコマンド(主にJava開発)を記録します.
あまり話さないで、最近学んだ命令を記録します.
1.ログ分析、比較
当社のサーバーはすべてクラウド上にありますが、分析ログの次の文は統計ログに同じ内容が現れる行数である場合があります.
私达の日志は绝えず出力して、私はただ最后の何行を见たいだけです
2.Java開発関連
1.javaプロセス関連
2.プロセスのいくつかの情報を表示する1.クラス・ロード
2.gcの場合
簡単なプログラムを走って次のような情報があります.
3.各世代の使用状況を表示
同じようにその簡単なプログラム
4.スレッドに関する問題の分析
5.ポート使用量の表示
1.ログ分析、比較
当社のサーバーはすべてクラウド上にありますが、分析ログの次の文は統計ログに同じ内容が現れる行数である場合があります.
find -name " " | xargs cat | grep -E " ( )" | wc -l
/**
xargs: xargs , , 。
cat: cat 。
grep: , -E
wc: wc 。-l
*/
私达の日志は绝えず出力して、私はただ最后の何行を见たいだけです
tail [ ] [ ]
// 10
eg: tail -n 10 notes.log
2.Java開発関連
1.javaプロセス関連
// java
ps -ef | grep java
//
kill pid
2.プロセスのいくつかの情報を表示する1.クラス・ロード
jstat -class -t pid
2.gcの場合
jstat -gc -t pid
簡単なプログラムを走って次のような情報があります.
Timestamp S0C S1C S0U S1U EC EU OC OU MC MU CCSC CCSU YGC YGCT FGC FGCT GCT
274.5 5120.0 5120.0 0.0 0.0 33280.0 7744.2 87552.0 0.0 4480.0 780.7 384.0 76.6 0 0.000 0 0.000 0.000
:
/**
S0C:S0(From) (KB)
S1C:S1(To) (KB)
S0U:S0(From) (KB)
S1U:S1(To) (KB)
EC:Eden (KB)
EU:Eden (KB)
OC: (KB)
OU: (KB)
MC: (KB)
MU: (KB)
CCSC: (KB)
CCSU: (KB)
PC: (KB)
PU: (KB)
YGC: GC
YGCT: GC
FGC:Full GC
FGCT:Full GC
GCT:GC
*/
3.各世代の使用状況を表示
jstat -gccapacity -t pid
同じようにその簡単なプログラム
Timestamp NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC
647.4 43520.0 698880.0 43520.0 5120.0 5120.0 33280.0 87552.0 1398272.0 87552.0 87552.0 0.0 1056768.0 4480.0 0.0 1048576.0 384.0 0 0
/**
-gc , , 、 。
* NGCMN: (KB)
* NGCMX: (KB)
* NGC: (KB)
* OGCMN: (KB)
* OGCMX: (KB)
* PGCMN: (KB)
* PGCMX: (KB)
* -gccause: ( gcutil),
* */
4.スレッドに関する問題の分析
//jstack jvm
jstack pid
// ,
jmap -dump:format=b,file=heap.hprof pid
//
jhat heap.hprof
5.ポート使用量の表示
lsof -i:8000
:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nodejs 26993 root 10u IPv4 37999514 0t0 TCP *:8000 (LISTEN)