linux篇

资源查看

  1. 查看内存剩余空间

    1
    2
    3
    4
    5
    6
    free -m -s 2 -c 20 -t  # 内存剩余空间 以M为输出,两秒更新一次,更新20次
    # 输出
    total used free shared buff/cache available
    Mem: 62838 35817 7814 13366 19206 13099
    Swap: 0 0 0
    Total: 62838 35817 7814
  2. 查看nginx中生效的conf文件所在目录(docker 需s要进入容器)

    1
    2
    3
    4
    nginx -t 
    # 输出
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
  3. 查看磁盘空间大小

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    df -h # -h: human缩写,以易读的方式显示结果(即带单位:比如M/G,如果不加这个参数,显示的数字以B为单位)
    df -i: 以inode模式来显示磁盘使用情况,显示inode信息而非块使用量。
    df --total:显示所有的信息。

    #/opt/app/todeav/config#df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/mapper/VolGroup00-LogVol00
    2.0G 711M 1.2G 38% /
    /dev/mapper/vg1-lv2 20G 3.8G 15G 21% /opt/applog
    /dev/mapper/vg1-lv1 20G 13G 5.6G 70% /opt/app

  4. 查看当前目录所占空间大小

    1
    2
    3
    4
    5
    6
    du -sh  # -h 人性化显示 -s 递归整个目录的大小
    du -ah: 显示目录,其下目录和文件占用的磁盘空间大小,带单位。
    du -c: 显示几个目录或文件占用的磁盘空间大小,还要统计它们的总和。
    du -sh: 查看当前目录总共占的容量,而不单独列出各子项占用的容量。
    du -l:在统计目录占用磁盘空间大小时,把硬链接也统计进来。
    du -lh --max-depth=1:查看当前目录下一级子文件和子目录占用的磁盘容量。
  5. 查看当前目录下所有子文件夹排序后的大小

    1
    du -sh `ls` | sort  # 注意不是单引号`
  6. 内存

    1
    2
    free -h
    free -h:显示内存状态。

打包命令

1
tar -cvf etc.tar /etc # 仅打包,不压缩!-c :打包选项 -v :显示打包进度 -f :使用档案文件

docker 篇

  1. 进入容器

    1
    docker exec -it [containerId|serviceName] /bin/bash
  2. 查看运行容器资源占用情况

    1
    docker stats [contatinerId|serviceName]
  3. 查看容器内日志

    1
    docker logs -f -n 100 [contatinerId|serviceName] | grep -n10 'ERROR' #输出容器运行日志,使用grep查找关键字后10行内容
  4. 拷贝容器里的文件到本地

    1
    docker cp contatinerId:/tmp   /home/tmp
  1. dump docker中

Java 常用排查工具

jstat

官网连接:https://docs.oracle.com/javase/8/docs/technotes/tools/#monitor

jstat 工具允许以固定的监控频次输出JVM的各种监控指标,比如使用-gcutil输出GC和内存占用汇总信息,每隔5秒输出一次,输出100次,可以看到Young GC比较频繁:

1
2
3
4
5
6
jstat -gcutil [pid] [毫秒次]  [多少次]

S0 S1 E O M CCS YGC YGCT FGC FGCT GCT
0.00 0.00 8.00 0.00 17.91 20.19 0 0.000 0 0.000 0.000
0.00 0.00 8.00 0.00 17.91 20.19 0 0.000 0 0.000 0.000
0.00 0.00 8.00 0.00 17.91 20.19 0 0.000 0 0.000 0.000

其中,S0 表示 Survivor0 区占用百分比,S1 表示 Survivor1 区占用百分比,E 表示 Eden 区占用百分比,O 表示老年代占用百分比,M 表示元数据区占用百分比,YGC 表示年轻代回收次数,YGCT 表示年轻代回收耗时,FGC 表示老年代回收次数,FGCT 表示老年代回收耗时。

jstack

将输出的线程栈导入https://fastthread.io/ 进行可视化分析

电子书

Linux Tools Quick Tutorial

Docker 命令实战

Comment and share

  • page 1 of 1
Author's picture

Topsion

Fullstack Developer


Coder


Xi'an China