Difference between revisions of "OS: Build in Monitoring Tool"

From OnnoWiki
Jump to navigation Jump to search
 
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
Sumber: http://www.cyberciti.biz/tips/top-linux-monitoring-tools.html
 
Sumber: http://www.cyberciti.biz/tips/top-linux-monitoring-tools.html
  
Apakah anda butuh melihat performance server Linux?  
+
Apakah anda butuh melihat performance Linux?  
 
coba gunakan built-in command dan beberapa tool tambahan berikut.  
 
coba gunakan built-in command dan beberapa tool tambahan berikut.  
 
Kebanyakan distribusi linux di persenjatai oleh banyak sekali tool untuk
 
Kebanyakan distribusi linux di persenjatai oleh banyak sekali tool untuk
Line 54: Line 54:
 
  z Turn on or off color/mono
 
  z Turn on or off color/mono
  
 +
 +
==htop==
 +
 +
seperti top, tapi agak lebih "user friendly". Instalasi htop menggunakan perintah
 +
 +
sudo apt-get install htop
 +
 +
menjalankan htop menggunakan perintah
 +
 +
htop
 +
 +
==psacct atau acct==
 +
 +
* ac command prints the statistics of user logins/logouts (connect time) in hours.
 +
* lastcomm command prints the information of previously executed commands of user.
 +
* accton commands is used to turn on/off process for accounting.
 +
* sa command summarizes information of previously executed commands.
 +
* last and lastb commands show listing of last logged in users.
 +
 +
 +
apt install acct
 +
 +
restart
 +
 +
/etc/init.d/acct status
 +
/etc/init.d/acct start
 +
/etc/init.d/acct status
 +
 +
accounting
 +
 +
ac
 +
ac -d
 +
ac -p
 +
ac onno
 +
ac -d onno
 +
 +
execute command
 +
 +
sa
 +
sa -u
 +
sa -m
 +
sa -c
 +
 +
last command
 +
 +
lastcomm onno
 +
lastcomm ls
  
 
==ps==
 
==ps==
Line 61: Line 108:
 
Hal ini dapat memberikan informasi lebih rinci tentang proses yang terjadi daripada top, tapi tidak dinamis.
 
Hal ini dapat memberikan informasi lebih rinci tentang proses yang terjadi daripada top, tapi tidak dinamis.
  
Untuk informasi rinci tentang penggunaan ps, lihat halaman manual: man ps.
+
Untuk memilih semua proses gunakan -A atau -e:
 +
 
 +
ps -A
 +
ps -e
 +
 
 +
Contoh keluaran
 +
 
 +
  PID TTY          TIME CMD
 +
    1 ?        00:00:00 init
 +
    2 ?        00:00:00 kthreadd
 +
    3 ?        00:00:05 ksoftirqd/0
 +
    6 ?        00:00:00 migration/0
 +
    7 ?        00:00:00 watchdog/0
 +
    8 ?        00:00:00 migration/1
 +
...
 +
...
 +
12400 ?        00:00:00 btrfs-worker-2
 +
12403 ?        00:00:00 btrfs-endio-met
 +
12508 ?        00:00:00 kworker/0:0
 +
12723 ?        00:00:00 kworker/1:0
 +
13329 ?        00:00:00 kworker/1:2
 +
13541 pts/2    00:00:00 ps
 +
 
 +
ps tidak berbeda jauh dengan top tapi memberikan lebih banyak informasi.
 +
Untuk memberikan Long Format output:
 +
 
 +
ps -Al
 +
 
 +
Untuk mengaktifkan extra full mode, ini akan memperlihatkan command line argumen yang dikirimkan ke proses
 +
 
 +
ps -AlF
 +
 
 +
Untuk melihat thread ( LWP dan NLWP)
 +
 
 +
ps -AlFH
 +
 
 +
Untuk melihat thread setelah di proses
 +
 
 +
ps -AlLm
 +
 
 +
Untuk melihat semua proses yang ada di server
 +
 
 +
ps ax
 +
ps axu
 +
 
 +
Print proses tree
 +
 
 +
ps -ejH
 +
ps axjf
 +
pstree
 +
 
 +
Print informasi security
 +
 
 +
ps -eo euser,ruser,suser,fuser,f,comm,label
 +
ps axZ
 +
ps -eM
 +
 
 +
 
 +
Lihat semua proses yang jalan sebagai User www-data
 +
 
 +
ps -U www-data -u www-data u
 +
 
 +
Set output dalam format yang user-defined
 +
 
 +
ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
 +
ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
 +
ps -eopid,tt,user,fname,tmout,f,wchan
 +
 
 +
Display hanya proses ID dari firefox
 +
 
 +
ps -C firefox -o pid=
 +
ps -C soffice.bin -o pid=
 +
pgrep firefox
 +
pgrep soffice.bin
 +
 
 +
Tampilkan nama dari PID 55977
 +
 
 +
ps -p 55977 -o comm=
 +
 
 +
Tampilkan top 10 proses yang mengkonsumsi memory
 +
 
 +
ps -auxf | sort -nr -k 4 | head -10
 +
 
 +
Tampilkan top 10 proses yang mengkonsumsi CPU
 +
 
 +
ps -auxf | sort -nr -k 3 | head -10
 +
 
 +
 
 +
==pstree==
 +
 
 +
 +
 
 +
pstree is a small, command line (i.e., all-text mode) program that displays the processes (i.e., executing instances of programs) on the system in the form of a tree diagram. It differs from the much more commonly used (and more complex) ps program in a number of respects, including that the latter shows the processes in a list rather than a tree diagram but provides more detailed information about them.
 +
 
 +
Tree Diagrams
 +
 
 +
A tree diagram is a way of showing the ancestral relationships among processes (or other entities) by connecting them with short lines that indicate for each process the process from which it originated (i.e., its parent) and any processes that it created (i.e., its children). This type of diagram differs from the usual image of a tree in that the root is at the top and the branches point downwards.
 +
 
 +
Similar inverted tree diagrams are commonly used to illustrate the hierarchical filesystems of Linux and other Unix-like operating systems, which begin with the root directory (represented by a forward slash) off from which branch the second tier directories such as /bin, /boot, /etc, /home, /mount and /sbin.
 +
 
 +
One of the advantages of pstree as compared with ps is that it makes it easier to terminate a series of related processes (i.e., all of the descendants of a particular process). This is because pstree makes it immediately clear which process is the parent, and all that is necessary is to terminate the parent in order to extinguish all of its descendant processes. That is, it is not necessary to manually search through a list to find and individually terminate each process as would be necessary using ps. The kill command is commonly used to terminate a crashed or otherwise misbehaving program or process.  
  
==vmstat==
+
Syntax
  
vmstat (Statistik Virtual Memory) mengeluarkan laporan seketika tentang proses dalam sistem, memori, paging, block I/O, interupsi dan aktivitas CPU.
+
The basic syntax for pstree is:
  
Meskipun tidak dinamis seperti top, kita dapat menentukan interval sampling, yang memungkinkan kita mengamati aktivitas sistem mendekati real time.
+
    pstree [options] [pid or username]
  
Untuk informasi rinci tentang penggunaan vmstat, lihat halaman manual: vmstat man.
+
The square brackets indicate that the items in them are optional. If pstree is used without any options or arguments, that is, by typing
  
==sar==
+
    pstree
  
sar (Sistem Reporter Activity) mengumpulkan dan melaporkan informasi tentang aktivitas sistem saat ini . Output standar meliputi utilisasi CPU hari ini dengan interval sepuluh menit dari awal hari:
+
and then pressing the ENTER key, the result is a tree diagram that shows all of the processes currently on the system.
  
12:00:01 AM    CPU    %user    %nice  %system  %iowait    %steal    %idle
 
12:10:01 AM    all      0.10      0.00      0.15      2.96      0.00    96.79
 
12:20:01 AM    all      0.09      0.00      0.13      3.16      0.00    96.61
 
12:30:01 AM    all      0.09      0.00      0.14      2.11      0.00    97.66
 
...
 
  
Alat ini merupakan alternatif yang berguna untuk mencoba untuk membuat laporan berkala tentang aktivitas sistem dari top.
 
  
Untuk informasi rinci tentang penggunaan sar, lihat halaman manual: man sar.
+
init─┬─NetworkManager─┬─dhclient
 +
      │                ├─dnsmasq
 +
      │                └─3*[{NetworkManager}]
 +
      ├─accounts-daemon───2*[{accounts-daemon}]
 +
      ├─acpid
 +
      ├─apache2───5*[apache2]
 +
      ├─at-spi-bus-laun─┬─dbus-daemon
 +
      │                └─3*[{at-spi-bus-laun}]
 +
      ├─at-spi2-registr───{at-spi2-registr}
 +
      ├─avahi-daemon───avahi-daemon
 +
      ├─bamfdaemon───3*[{bamfdaemon}]
 +
      ├─bluetoothd
 +
      ├─colord───{colord}
 +
      ├─console-kit-dae───64*[{console-kit-dae}]
 +
      ├─cron
 +
      ├─cups-browsed
 +
      ├─cupsd───dbus
  
 +
==vmstat==
  
 +
vmstat (Statistik Virtual Memory) mengeluarkan laporan seketika tentang proses dalam sistem, memori, paging, block I/O, interupsi dan aktivitas CPU.
  
 +
Meskipun tidak dinamis seperti top, kita dapat menentukan interval sampling, yang memungkinkan kita mengamati aktivitas sistem mendekati real time.
  
 +
vmstat 3
  
 +
Contoh output:
  
 +
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 +
  r  b  swpd  free  buff  cache  si  so    bi    bo  in  cs us sy id wa
 +
  3  0 160988  93024  64376 609380    1    2    42    47  11  129 21  1 76  1
 +
  2  0 160988  75440  52892 640592    0    0 19168    0  963  760 91  4  0  5
 +
  2  0 160988  75208  38260 658948    0    0 16316  198  887  661 85  3  2 11
 +
  1  1 160988  75304  31272 663872    0    0 16584    4 1055 1014 92  5  0  4
 +
  1  1 160988  76816  30100 667352    0    0    4 55416 1349 3649 51  8  0 41
  
 +
Dapatkan penggunaan memory
  
 +
vmstat -m
  
 +
Dapatkan informasi tentang penggunaan page memory yang aktif / tidak aktif.
  
=> Related: How do I Find Out Linux CPU Utilization?
+
vmstat -a
  
#2: vmstat - System Activity, Hardware and System Information
 
  
The command vmstat reports information about processes, memory, paging, block IO, traps, and cpu activity.
+
==sar==
# vmstat 3
 
Sample Outputs:
 
  
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
+
sar (Sistem Reporter Activity) mengumpulkan dan melaporkan informasi tentang aktivitas sistem saat ini. sar dapat di instalasi melalui perintah
r  b  swpd  free  buff  cache  si  so    bi    bo  in  cs us sy id wa st
 
0  0      0 2540988 522188 5130400    0    0    2    32    4    2  4  1 96  0  0
 
1  0      0 2540988 522188 5130400    0    0    0  720 1199  665  1  0 99  0  0
 
0  0      0 2540956 522188 5130400    0    0    0    0 1151 1569  4  1 95  0  0
 
0  0      0 2540956 522188 5130500    0    0    0    6 1117  439  1  0 99  0  0
 
0  0      0 2540940 522188 5130512    0    0    0  536 1189  932  1  0 98  0  0
 
0  0      0 2538444 522188 5130588    0    0    0    0 1187 1417  4  1 96  0  0
 
0  0      0 2490060 522188 5130640    0    0    0    18 1253 1123  5  1 94  0  0
 
  
Display Memory Utilization Slabinfo
+
apt-get install sysstat
  
# vmstat -m
+
Dan edit file
Get Information About Active / Inactive Memory Pages
 
  
# vmstat -a
+
vi /etc/default/sysstat
=> Related: How do I find out Linux Resource utilization to detect system bottlenecks?
 
  
#3: w - Find Out Who Is Logged on And What They Are Doing
+
agar
  
w command displays information about the users currently on the machine, and their processes.
+
ENABLED="true"
# w username
 
# w vivek
 
Sample Outputs:
 
  
17:58:47 up 5 days, 20:28,  2 users,  load average: 0.36, 0.26, 0.24
+
Kemudian restart sysstat
USER    TTY      FROM              LOGIN@  IDLE  JCPU  PCPU WHAT
 
root    pts/0    10.1.3.145      14:55    5.00s  0.04s  0.02s vim /etc/resolv.conf
 
root    pts/1    10.1.3.145      17:43    0.00s  0.03s  0.00s w
 
  
#4: uptime - Tell How Long The System Has Been Running
+
/etc/init.d/sysstat restart
  
The uptime command can be used to see how long the server has been running. The current time, how long the system has been running, how many users are currently logged on, and the system load averages for the past 1, 5, and 15 minutes.
+
setelah data di koleksi.
# uptime
+
Untuk melihat network counter, ketik
Output:
 
  
  18:02:41 up 41 days, 23:42,  1 user,  load average: 0.00, 0.00, 0.00
+
  sar -n DEV | more
  
1 can be considered as optimal load value. The load can change from system to system. For a single CPU system 1 - 3 and SMP systems 6-10 load value might be acceptable.
+
Untuk melihat network counter dari sa24
  
#5: ps - Displays The Processes
+
sar -n DEV -f /var/log/sa/sa24 | more
  
ps command will report a snapshot of the current processes. To select all processes use the -A or -e option:
+
Kita juga dapat melihat penggunan secara real time menggunakan sar
# ps -A
 
Sample Outputs:
 
  
  PID TTY          TIME CMD
+
sar 2 5
    1 ?        00:00:02 init
 
    2 ?        00:00:02 migration/0
 
    3 ?        00:00:01 ksoftirqd/0
 
    4 ?        00:00:00 watchdog/0
 
    5 ?        00:00:00 migration/1
 
    6 ?        00:00:15 ksoftirqd/1
 
....
 
.....
 
4881 ?        00:53:28 java
 
4885 tty1    00:00:00 mingetty
 
4886 tty2    00:00:00 mingetty
 
4887 tty3    00:00:00 mingetty
 
4888 tty4    00:00:00 mingetty
 
4891 tty5    00:00:00 mingetty
 
4892 tty6    00:00:00 mingetty
 
4893 ttyS1    00:00:00 agetty
 
12853 ?        00:00:00 cifsoplockd
 
12854 ?        00:00:00 cifsdnotifyd
 
14231 ?        00:10:34 lighttpd
 
14232 ?        00:00:00 php-cgi
 
54981 pts/0    00:00:00 vim
 
55465 ?        00:00:00 php-cgi
 
55546 ?        00:00:00 bind9-snmp-stat
 
55704 pts/1    00:00:00 ps
 
  
ps is just like top but provides more information.
+
Contoh keluaran
Show Long Format Output
 
  
# ps -Al
+
Linux 3.2.0-29-generic (openbts28) 03/23/2013 _x86_64_ (2 CPU)
To turn on extra full mode (it will show command line arguments passed to process):
+
# ps -AlF
+
09:59:20 AM    CPU    %user    %nice  %system  %iowait    %steal    %idle
To See Threads ( LWP and NLWP)
+
09:59:22 AM    all    50.63      0.00      1.51      0.00      0.00    47.86
 +
09:59:24 AM    all    51.00      0.00      1.75      0.75      0.00    46.50
 +
09:59:26 AM    all    50.63      0.00      2.26      0.00      0.00    47.12
 +
09:59:28 AM    all    49.62      0.00      2.52      0.00      0.00    47.86
 +
09:59:30 AM    all    50.38      0.00      2.02      1.26      0.00    46.35
 +
Average:        all    50.45      0.00      2.01      0.40      0.00    47.14
  
# ps -AlFH
+
Alat ini merupakan alternatif yang berguna untuk mencoba untuk membuat laporan berkala tentang aktivitas sistem dari top.
To See Threads After Processes
 
  
# ps -AlLm
+
==w==
Print All Process On The Server
 
  
# ps ax
+
Perintah w menampilkan informasi tentang user yang saat ini sedang on di mesin, dan proses yang mereka gunakan.
# ps axu
 
Print A Process Tree
 
  
# ps -ejH
+
Perintah yang dapat digunakan
# ps axjf
 
# pstree
 
Print Security Information
 
  
# ps -eo euser,ruser,suser,fuser,f,comm,label
+
w
# ps axZ
+
w username
# ps -eM
 
See Every Process Running As User Vivek
 
  
# ps -U vivek -u vivek u
+
Contoh keluaran
Set Output In a User-Defined Format
 
  
# ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
 
# ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
 
# ps -eopid,tt,user,fname,tmout,f,wchan
 
Display Only The Process IDs of Lighttpd
 
  
# ps -C lighttpd -o pid=
+
  09:06:42 up 14:46,  3 users,  load average: 1.04, 1.08, 1.05
OR
+
USER    TTY      FROM              LOGIN@  IDLE  JCPU  PCPU WHAT
# pgrep lighttpd
+
onno    tty7                      Fri18  14:46m 11:55  0.28s gnome-session --session=ubuntu
OR
+
onno    pts/1    :0              Fri18    1:08m  1.38s  1.38s bash
# pgrep -u vivek php-cgi
+
onno    pts/2    :0              06:05    0.00s  0.48s 25.80s gnome-terminal
Display The Name of PID 55977
 
  
# ps -p 55977 -o comm=
+
==uptime==
Find Out The Top 10 Memory Consuming Process
 
  
# ps -auxf | sort -nr -k 4 | head -10
+
Perintah uptime dapat digunakan untuk melihat berapa lama sistem telah berjalan, waktu sekarang di komputer, berapa user yang sedang log on, beban sistem 1, 5 dan 15 menit terakhir.
Find Out top 10 CPU Consuming Process
 
  
# ps -auxf | sort -nr -k 3 | head -10
+
uptime
  
#6: free - Memory Usage
+
hasilnya kurang lebih
  
The command free displays the total amount of free and used physical and swap memory in the system, as well as the buffers used by the kernel.
+
08:47:21 up 14:27,  3 users,  load average: 1.16, 1.09, 1.07
# free
 
Sample Output:
 
  
            total      used      free    shared    buffers    cached
+
Load akan berubah dari satu sistem ke sistem lain. Untuk sistem dengan 1 CPU maka load 1-3 cukup optimal. Untuk sebuah sistem SMP maka load 6-10 masih dapat di terima.
Mem:      12302896    9739664    2563232          0    523124    5154740
 
-/+ buffers/cache:    4061800    8241096
 
Swap:      1052248          0    1052248
 
  
=> Related: :
 
  
    Linux Find Out Virtual Memory PAGESIZE
+
==free==
    Linux Limit CPU Usage Per Process
 
    How much RAM does my Ubuntu / Fedora Linux desktop PC have?
 
  
#7: iostat - Average CPU Load, Disk Activity
+
Perintah ini menampilkan jumlah memory yang digunakan secara fisik dan swap memory yang ada di sistem, juga buffer yang digunakan oleh kernel.
  
The command iostat report Central Processing Unit (CPU) statistics and input/output statistics for devices, partitions and network filesystems (NFS).
+
free
# iostat
 
Sample Outputs:
 
  
Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/2009
+
Contoh output
avg-cpu:  %user  %nice %system %iowait  %steal  %idle
 
          3.50    0.09    0.51    0.03    0.00  95.86
 
Device:            tps  Blk_read/s  Blk_wrtn/s  Blk_read  Blk_wrtn
 
sda              22.04        31.88      512.03  16193351  260102868
 
sda1              0.00        0.00        0.00      2166        180
 
sda2            22.04        31.87      512.03  16189010  260102688
 
sda3              0.00        0.00        0.00      1615          0
 
  
=> Related: : Linux Track NFS Directory / Disk I/O Stats
+
              total      used      free    shared    buffers    cached
 +
Mem:       2011972    1847148    164824          0      47088    592660
 +
-/+ buffers/cache:    1207400    804572
 +
Swap:      779148    162108    617040
  
#8: sar - Collect and Report System Activity
+
==iostat==
  
The sar command is used to collect, report, and save system activity information. To see network counter, enter:
+
Perintah iostat melaporkan statistik CPU dan input/output dari device, partisi maupun network file system (NFS)
# sar -n DEV | more
 
To display the network counters from the 24th:
 
# sar -n DEV -f /var/log/sa/sa24 | more
 
You can also display real time usage using sar:
 
# sar 4 5
 
Sample Outputs:
 
  
Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/2009
+
iostat
06:45:12 PM      CPU    %user    %nice  %system  %iowait    %steal    %idle
 
06:45:16 PM      all      2.00      0.00      0.22      0.00      0.00    97.78
 
06:45:20 PM      all      2.07      0.00      0.38      0.03      0.00    97.52
 
06:45:24 PM      all      0.94      0.00      0.28      0.00      0.00    98.78
 
06:45:28 PM      all      1.56      0.00      0.22      0.00      0.00    98.22
 
06:45:32 PM      all      3.53      0.00      0.25      0.03      0.00    96.19
 
Average:          all      2.02      0.00      0.27      0.01      0.00    97.70
 
  
=> Related: : How to collect Linux system utilization data into a file
+
Agar dapat jalan dengan baik kita perlu install
  
#9: mpstat - Multiprocessor Usage
+
apt install sysstat
  
The mpstat command displays activities for each available processor, processor 0 being the first one. mpstat -P ALL to display average CPU utilization per processor:
 
# mpstat -P ALL
 
Sample Output:
 
  
Linux 2.6.18-128.1.14.el5 (www03.nixcraft.in) 06/26/2009
+
Contoh output
06:48:11 PM  CPU  %user  %nice    %sys %iowait    %irq  %soft  %steal  %idle    intr/s
 
06:48:11 PM  all    3.50    0.09    0.34    0.03    0.01    0.17    0.00  95.86  1218.04
 
06:48:11 PM    0    3.44    0.08    0.31    0.02    0.00    0.12    0.00  96.04  1000.31
 
06:48:11 PM    1    3.10    0.08    0.32    0.09    0.02    0.11    0.00  96.28    34.93
 
06:48:11 PM    2    4.16    0.11    0.36    0.02    0.00    0.11    0.00  95.25      0.00
 
06:48:11 PM    3    3.77    0.11    0.38    0.03    0.01    0.24    0.00  95.46    44.80
 
06:48:11 PM    4    2.96    0.07    0.29    0.04    0.02    0.10    0.00  96.52    25.91
 
06:48:11 PM    5    3.26    0.08    0.28    0.03    0.01    0.10    0.00  96.23    14.98
 
06:48:11 PM    6    4.00    0.10    0.34    0.01    0.00    0.13    0.00  95.42      3.75
 
06:48:11 PM    7    3.30    0.11    0.39    0.03    0.01    0.46    0.00  95.69    76.89
 
  
=> Related: : Linux display each multiple SMP CPU processors utilization individually.
+
Linux 3.2.0-29-generic (openbts28) 03/23/2013 _x86_64_ (2 CPU)
 +
 +
avg-cpu: %user  %nice %system %iowait  %steal  %idle
 +
          21.76    0.14    1.04    1.28    0.00  75.79
 +
 +
Device:           tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
 +
sda              4.41        56.67        52.68    3183588    2959436
 +
sdb              4.44        28.00        43.68    1572868    2454036
  
#10: pmap - Process Memory Usage
+
==mpstat==
  
The command pmap report memory map of a process. Use this command to find out causes of memory bottlenecks.
+
Perintah mpstat menampilkan aktifitas masing-masing processor yang tersedia. Processor 0 sebagai yang pertama. Untuk menampilkan rata-rata pengunakan CPU per processor, ketik:
# pmap -d PID
 
To display process memory information for pid # 47394, enter:
 
# pmap -d 47394
 
Sample Outputs:
 
  
47394:  /usr/bin/php-cgi
+
  mpstat -P ALL
Address          Kbytes Mode  Offset          Device    Mapping
 
0000000000400000    2584 r-x-- 0000000000000000 008:00002 php-cgi
 
0000000000886000    140 rw--- 0000000000286000 008:00002 php-cgi
 
00000000008a9000      52 rw--- 00000000008a9000 000:00000  [ anon ]
 
0000000000aa8000      76 rw--- 00000000002a8000 008:00002 php-cgi
 
000000000f678000    1980 rw--- 000000000f678000 000:00000  [ anon ]
 
000000314a600000    112 r-x-- 0000000000000000 008:00002 ld-2.5.so
 
000000314a81b000      4 r---- 000000000001b000 008:00002 ld-2.5.so
 
000000314a81c000      4 rw--- 000000000001c000 008:00002 ld-2.5.so
 
000000314aa00000    1328 r-x-- 0000000000000000 008:00002 libc-2.5.so
 
000000314ab4c000    2048 ----- 000000000014c000 008:00002 libc-2.5.so
 
.....
 
......
 
..
 
00002af8d48fd000      4 rw--- 0000000000006000 008:00002 xsl.so
 
00002af8d490c000      40 r-x-- 0000000000000000 008:00002 libnss_files-2.5.so
 
00002af8d4916000    2044 ----- 000000000000a000 008:00002 libnss_files-2.5.so
 
00002af8d4b15000      4 r---- 0000000000009000 008:00002 libnss_files-2.5.so
 
00002af8d4b16000      4 rw--- 000000000000a000 008:00002 libnss_files-2.5.so
 
00002af8d4b17000 768000 rw-s- 0000000000000000 000:00009 zero (deleted)
 
00007fffc95fe000      84 rw--- 00007ffffffea000 000:00000  [ stack ]
 
ffffffffff600000    8192 ----- 0000000000000000 000:00000  [ anon ]
 
mapped: 933712K    writeable/private: 4304K    shared: 768000K
 
  
The last line is very important:
+
Contoh output:
  
    mapped: 933712K total amount of memory mapped to files
+
Linux 3.2.0-29-generic (openbts28) 03/23/2013 _x86_64_ (2 CPU)
    writeable/private: 4304K the amount of private address space
+
    shared: 768000K the amount of address space this process is sharing with others
+
10:04:53 AM  CPU    %usr  %nice    %sys %iowait    %irq  %soft  %steal  %guest  %idle
 +
10:04:53 AM  all  22.02    0.14    1.03    1.27    0.00    0.02    0.00    0.00  75.52
 +
10:04:53 AM    0  22.14    0.18    1.07    1.26    0.00    0.03    0.00    0.00  75.32
 +
10:04:53 AM    1  21.89    0.09    1.00    1.28    0.00    0.01    0.00    0.00  75.72
  
=> Related: : Linux find the memory used by a program / process using pmap command
+
mpstat merupakan bagian dari sysstat install menggunakan
  
#11 and #12: netstat and ss - Network Statistics
+
sudo apt-get install sysstat
  
The command netstat displays network connections, routing tables, interface statistics, masquerade connections, and multicast memberships. ss command is used to dump socket statistics. It allows showing information similar to netstat. See the following resources about ss and netstat commands:
+
==pmap==
  
    ss: Display Linux TCP / UDP Network and Socket Information
+
Perintah pmap melaporkan memory map dari sebuah proses. Gunakan perintah ini untuk melihat bottleneck di memory. Ketik
    Get Detailed Information About Particular IP address Connections Using netstat Command
 
  
#13: iptraf - Real-time Network Statistics
+
pmap -d PID
  
The iptraf command is interactive colorful IP LAN monitor. It is an ncurses-based IP LAN monitor that generates various network statistics including TCP info, UDP counts, ICMP and OSPF information, Ethernet load info, node stats, IP checksum errors, and others. It can provide the following info in easy to read format:
+
Untuk menampilkan informasi memory proses untuk PID # 15070, ketik:
  
     Network traffic statistics by TCP connection
+
pmap -d 15070
     IP traffic statistics by network interface
+
 
    Network traffic statistics by protocol
+
Contoh output:
    Network traffic statistics by TCP/UDP port and by packet size
+
 
    Network traffic statistics by Layer2 address
+
15070:  /usr/lib/libreoffice/program/soffice.bin --writer --splash-pipe=6
 +
Address          Kbytes Mode  Offset          Device    Mapping
 +
0000000000400000      4 r-x-- 0000000000000000 008:00002 soffice.bin
 +
0000000000600000      4 r---- 0000000000000000 008:00002 soffice.bin
 +
0000000000601000      4 rw--- 0000000000001000 008:00002 soffice.bin
 +
0000000001d4d000  19612 rw--- 0000000000000000 000:00000  [ anon ]
 +
00007fc830000000     140 rw--- 0000000000000000 000:00000  [ anon ]
 +
00007fc830023000  65396 ----- 0000000000000000 000:00000  [ anon ]
 +
00007fc834718000      32 r-x-- 0000000000000000 008:00002 libmcnttype.so
 +
00007fc834720000    2044 ----- 0000000000008000 008:00002 libmcnttype.so
 +
00007fc83491f000      4 r---- 0000000000007000 008:00002 libmcnttype.so
 +
00007fc834920000      4 rw--- 0000000000008000 008:00002 libmcnttype.so
 +
00007fc834921000      72 r-x-- 0000000000000000 008:00002 gnome-keyring-pkcs11.so
 +
00007fc834933000    2044 ----- 0000000000012000 008:00002 gnome-keyring-pkcs11.so
 +
00007fc834b32000      8 r---- 0000000000011000 008:00002 gnome-keyring-pkcs11.so
 +
00007fc834b34000      4 rw--- 0000000000013000 008:00002 gnome-keyring-pkcs11.so
 +
...
 +
...
 +
00007fc872ccd000      4 r-xs- 0000000000000000 008:00002 .execoooxQzg4m (deleted)
 +
00007fc872cce000      4 rw-s- 0000000000000000 008:00002 .execoooxQzg4m (deleted)
 +
00007fc872ccf000      4 rw--- 0000000000000000 000:00000  [ anon ]
 +
00007fc872cd0000      12 r---- 0000000000000000 008:00002 user
 +
00007fc872cd3000      4 r--s- 0000000000000000 008:00002 user
 +
00007fc872cd4000      80 rw--- 0000000000000000 000:00000  [ anon ]
 +
00007fc872ce8000      4 r---- 0000000000022000 008:00002 ld-2.15.so
 +
00007fc872ce9000      8 rw--- 0000000000023000 008:00002 ld-2.15.so
 +
00007fff36b4d000     132 rw--- 0000000000000000 000:00000  [ stack ]
 +
00007fff36bff000      4 r-x-- 0000000000000000 000:00000  [ anon ]
 +
ffffffffff600000      4 r-x-- 0000000000000000 000:00000  [ anon ]
 +
mapped: 1105764K    writeable/private: 97360K    shared: 15184K
  
Fig.02: General interface statistics: IP traffic statistics by network interface
+
Kalimat terakhir sangat penting:
  
Fig.02: General interface statistics: IP traffic statistics by network interface
+
* mapped: 1105764K total memory yang di map ke file.
Fig.03 Network traffic statistics by TCP connection
+
* writeable/private: 97360K jumlah alamat memory private.
 +
* shared: 15184K jumlah alamat memory dari proses ini yang di sharing dengan proses yang lain.
  
Fig.03 Network traffic statistics by TCP connection
+
==netstat==
  
#14: tcpdump - Detailed Network Traffic Analysis
+
Perintah netstat menampilkan informasi tentang sambungan jaringan, tabel routing, statistik interface, sambungan masquerade, dan keanggotaan multicast. Contoh penggunaannya:
  
The tcpdump is simple command that dump traffic on a network. However, you need good understanding of TCP/IP protocol to utilize this tool. For.e.g to display traffic info about DNS, enter:
+
netstat -nr
# tcpdump -i eth1 'udp port 53'
 
To display all IPv4 HTTP packets to and from port 80, i.e. print only packets that contain data, not, for example, SYN and FIN packets and ACK-only packets, enter:
 
# tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
 
To display all FTP session to 202.54.1.5, enter:
 
# tcpdump -i eth1 'dst 202.54.1.5 and (port 21 or 20'
 
To display all HTTP session to 192.168.1.5:
 
# tcpdump -ni eth0 'dst 192.168.1.5 and tcp and port http'
 
Use wireshark to view detailed information about files, enter:
 
# tcpdump -n -i eth1 -s 0 -w output.txt src or dst port 80
 
  
#15: strace - System Calls
+
Contoh output:
  
Trace system calls and signals. This is useful for debugging webserver and other server problems. See how to use to trace the process and see What it is doing.
+
Kernel IP routing table
 +
Destination    Gateway        Genmask        Flags  MSS Window  irtt Iface
 +
0.0.0.0        192.168.0.222  0.0.0.0        UG        0 0          0 eth0
 +
169.254.0.0    0.0.0.0        255.255.0.0    U        0 0          0 eth0
 +
192.168.0.0    0.0.0.0        255.255.255.0  U        0 0          0 eth0
 +
192.168.13.0    192.168.0.33    255.255.255.0  UG        0 0          0 eth0
  
#16: /Proc file system - Various Kernel Statistics
+
Melihat IP dan socket yang saling terhubung
  
/proc file system provides detailed information about various hardware devices and other Linux kernel information. See Linux kernel /proc documentations for further details. Common /proc examples:
+
netstat -an
# cat /proc/cpuinfo
 
# cat /proc/meminfo
 
# cat /proc/zoneinfo
 
# cat /proc/mounts
 
  
17#: Nagios - Server And Network Monitoring
+
Contoh output
  
Nagios is a popular open source computer system and network monitoring application software. You can easily monitor all your hosts, network equipment and services. It can send alert when things go wrong and again when they get better. FAN is "Fully Automated Nagios". FAN goals are to provide a Nagios installation including most tools provided by the Nagios Community. FAN provides a CDRom image in the standard ISO format, making it easy to easilly install a Nagios server. Added to this, a wide bunch of tools are including to the distribution, in order to improve the user experience around Nagios.
+
Active Internet connections (servers and established)
 +
Proto Recv-Q Send-Q Local Address          Foreign Address        State     
 +
tcp        0      0 0.0.0.0:873            0.0.0.0:*              LISTEN   
 +
tcp        0      0 127.0.0.1:3306          0.0.0.0:*              LISTEN   
 +
tcp        0      0 0.0.0.0:139            0.0.0.0:*              LISTEN   
 +
tcp        0      0 0.0.0.0:10000          0.0.0.0:*              LISTEN   
 +
tcp        0      0 0.0.0.0:80              0.0.0.0:*              LISTEN   
 +
tcp        0      0 0.0.0.0:22              0.0.0.0:*              LISTEN   
 +
tcp        0      0 127.0.0.1:631          0.0.0.0:*              LISTEN   
 +
tcp        0      0 0.0.0.0:25              0.0.0.0:*              LISTEN   
 +
tcp        0      0 0.0.0.0:445            0.0.0.0:*              LISTEN   
 +
tcp        0      0 192.168.0.3:59669      173.194.38.149:443      ESTABLISHED
 +
tcp        0      0 192.168.0.3:34229      69.171.235.16:80        ESTABLISHED
 +
tcp        0      0 192.168.0.3:33922      69.171.235.16:80        ESTABLISHED
 +
tcp        0      0 192.168.0.3:34049      69.171.235.16:80        ESTABLISHED
 +
tcp        0      0 192.168.0.3:34252      69.171.235.16:80        ESTABLISHED
 +
tcp        0      0 192.168.0.3:34097      69.171.235.16:80        ESTABLISHED
 +
tcp        0      0 192.168.0.3:50100      192.168.0.7:9090        ESTABLISHED
 +
tcp        0      0 192.168.0.3:38858      111.95.240.27:443      ESTABLISHED
 +
tcp        0      0 192.168.0.3:34076      69.171.235.16:80        ESTABLISHED
  
18#: Cacti - Web-based Monitoring Tool
+
==ss==
  
Cacti is a complete network graphing solution designed to harness the power of RRDTool's data storage and graphing functionality. Cacti provides a fast poller, advanced graph templating, multiple data acquisition methods, and user management features out of the box. All of this is wrapped in an intuitive, easy to use interface that makes sense for LAN-sized installations up to complex networks with hundreds of devices. It can provide data about network, CPU, memory, logged in users, Apache, DNS servers and much more. See how to install and configure Cacti network graphing tool under CentOS / RHEL.
+
Perintah ss digunakan untuk dump statistik socket. ss memungkinkan untuk melihat informasi yang mirip dengan netstat. Cara mengunakannya
  
#19: KDE System Guard - Real-time Systems Reporting and Graphing
+
ss
  
KSysguard is a network enabled task and system monitor application for KDE desktop. This tool can be run over ssh session. It provides lots of features such as a client/server architecture that enables monitoring of local and remote hosts. The graphical front end uses so-called sensors to retrieve the information it displays. A sensor can return simple values or more complex information like tables. For each type of information, one or more displays are provided. Displays are organized in worksheets that can be saved and loaded independently from each other. So, KSysguard is not only a simple task manager but also a very powerful tool to control large server farms.
+
Contoh tampilan
Fig.05 KDE System Guard
 
  
Fig.05 KDE System Guard {Image credit: Wikipedia}
+
State      Recv-Q Send-Q                                Local Address:Port                                    Peer Address:Port 
 +
ESTAB      0      0                                        192.168.0.3:55530                                  111.94.248.38:https 
 +
ESTAB      0      0                                        192.168.0.3:59669                                  173.194.38.149:https 
 +
ESTAB      0      0                                        192.168.0.3:34229                                  69.171.235.16:http   
 +
ESTAB      0      0                                        192.168.0.3:33922                                  69.171.235.16:http   
 +
ESTAB      0      0                                        192.168.0.3:34049                                  69.171.235.16:http   
 +
ESTAB      0      0                                        192.168.0.3:34252                                  69.171.235.16:http   
 +
ESTAB      0      0                                        192.168.0.3:34097                                  69.171.235.16:http   
 +
ESTAB      0      0                                        192.168.0.3:50100                                    192.168.0.7:9090
  
See the KSysguard handbook for detailed usage.
 
  
#20: Gnome System Monitor - Real-time Systems Reporting and Graphing
+
==iptraf==
  
The System Monitor application enables you to display basic system information and monitor system processes, usage of system resources, and file systems. You can also use System Monitor to modify the behavior of your system. Although not as powerful as the KDE System Guard, it provides the basic information which may be useful for new users:
+
Perintah iptraf adalah IP LAN monitor yang berwarna warni. iptraf menampilkan berbagai statistik jaringan termasuk TCP info, UDP count, informasi ICMP dan OSPF, info load Ethernet, statistik node, cek IP.
  
    Displays various basic information about the computer's hardware and software.
+
Instalasi iptraf menggunakan perintah
    Linux Kernel version
 
    GNOME version
 
    Hardware
 
    Installed memory
 
    Processors and speeds
 
    System Status
 
    Currently available disk space
 
    Processes
 
    Memory and swap space
 
    Network usage
 
    File Systems
 
    Lists all mounted filesystems along with basic information about each.
 
  
Fig.06 The Gnome System Monitor application
+
apt-get install iptraf
  
Fig.06 The Gnome System Monitor application
+
Menjalankan iptraf menggunakan perintah
Bonus: Additional Tools
 
  
A few more tools:
+
iptraf
  
    nmap - scan your server for open ports.
+
Hasilnya kira-kira
    lsof - list open files, network connections and much more.
 
    ntop web based tool - ntop is the best tool to see network usage in a way similar to what top command does for processes i.e. it is network traffic monitoring software. You can see network status, protocol wise distribution of traffic for UDP, TCP, DNS, HTTP and other protocols.
 
    Conky - Another good monitoring tool for the X Window System. It is highly configurable and is able to monitor many system variables including the status of the CPU, memory, swap space, disk storage, temperatures, processes, network interfaces, battery power, system messages, e-mail inboxes etc.
 
    GKrellM - It can be used to monitor the status of CPUs, main memory, hard disks, network interfaces, local and remote mailboxes, and many other things.
 
    vnstat - vnStat is a console-based network traffic monitor. It keeps a log of hourly, daily and monthly network traffic for the selected interface(s).
 
    htop - htop is an enhanced version of top, the interactive process viewer, which can display the list of processes in a tree form.
 
    mtr - mtr combines the functionality of the traceroute and ping programs in a single network diagnostic tool.
 
  
Did I miss something? Please add your favorite system motoring tool in the comments.
+
[[Image:Iptraf1.png|center|200px|thumb]]
  
 +
[[Image:Iptraf2.png|center|200px|thumb]]
  
 +
[[Image:Iptraf3.png|center|200px|thumb]]
  
 +
[[Image:Iptraf4.png|center|200px|thumb]]
  
 +
[[Image:Iptraf5.png|center|200px|thumb]]
  
 +
[[Image:Iptraf6.png|center|200px|thumb]]
  
 
==Referensi==
 
==Referensi==
  
* https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Performance_Tuning_Guide/s-analyzeperf-cli-tools.html
+
* http://activedoc.opensuse.org/book/opensuse-system-analysis-and-tuning-guide
* http://www.cyberciti.biz/tips/top-linux-monitoring-tools.html
+
* http://activedoc.opensuse.org/book/opensuse-system-analysis-and-tuning-guide/part-ii-system-monitoring
* http://www.cyberciti.biz/tips/top-linux-monitoring-tools.html
+
* http://activedoc.opensuse.org/book/opensuse-system-analysis-and-tuning-guide/chapter-2-system-monitoring-utilities
  
  
Line 460: Line 547:
 
* [[Ubuntu]]
 
* [[Ubuntu]]
 
* [[Sistem Operasi]]
 
* [[Sistem Operasi]]
 +
* [[Linux: Instalasi Sistem Operasi]]
 +
* [[Linux: Skema Partisi di Linux]]
 
* [[Kernel]]
 
* [[Kernel]]
 
* [[Compile Kernel]]
 
* [[Compile Kernel]]

Latest revision as of 11:05, 29 March 2022

Sumber: http://www.cyberciti.biz/tips/top-linux-monitoring-tools.html

Apakah anda butuh melihat performance Linux? coba gunakan built-in command dan beberapa tool tambahan berikut. Kebanyakan distribusi linux di persenjatai oleh banyak sekali tool untuk melakukan monitoring. Tool ini memberikan informasi tentang aktifitas sistem. Kita dapat menggunakan tool ini untuk melihat masalah dalam performance sistem.

Perintah di bawah ini akan dapat membantu analisa sistem dan debugging server seperti:

  • Menemukan bottlenecks.
  • Disk (storage) bottlenecks.
  • CPU dan memory bottlenecks.
  • Network bottlenecks.


top

top menyediakan, dinamis real-time dari proses dalam sistem berjalan. Hal ini dapat menampilkan berbagai informasi, termasuk ringkasan kondisi sistem dan task yang saat ini sedang dikelola oleh kernel Linux. top akan mengupdate secara automatis setiap detik. Secara default, top akan menampilkan task yang paling memakan CPU.

Top juga memiliki kemampuan terbatas untuk memanipulasi proses. Kedua operasi dan informasi yang ditampilkan dapat dikonfigurasi, dan setiap detail konfigurasi dapat dibuat untuk bertahan saat restart.

Secara default, proses yang ditunjukkan diurutkan berdasarkan persentase penggunaan CPU, memberikan pandangan yang mudah ke dalam proses yang paling mengkonsumsi sumber daya.

top - 08:39:14 up 14:18,  3 users,  load average: 1.09, 1.04, 1.08
Tasks: 190 total,   2 running, 188 sleeping,   0 stopped,   0 zombie
Cpu(s): 52.7%us,  3.1%sy,  0.0%ni, 44.2%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2011972k total,  1631164k used,   380808k free,    53628k buffers
Swap:   779148k total,   161836k used,   617312k free,   337676k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                     
 3068 onno      20   0 1384m 495m  19m R   98 25.2 316:17.21 firefox                                     
 1267 root      20   0  170m  19m 4952 S    7  1.0  10:25.66 Xorg                                        
 2235 onno      20   0 1390m  63m 9088 S    5  3.3   5:03.61 compiz                                      
 2896 onno      20   0  513m  13m 6052 S    2  0.7   0:23.35 gnome-terminal                              
13162 root      20   0 17432 1364  952 R    0  0.1   0:00.07 top                                         
    1 root      20   0 24584 2008 1028 S    0  0.1   0:00.88 init                                        
    2 root      20   0     0    0    0 S    0  0.0   0:00.00 kthreadd                                    
    3 root      20   0     0    0    0 S    0  0.0   0:04.95 ksoftirqd/0                                 
    6 root      RT   0     0    0    0 S    0  0.0   0:00.00 migration/0                                 
    7 root      RT   0     0    0    0 S    0  0.0   0:00.24 watchdog/0 

Hot key top yang sering digunakan

t	Tampilkan informasi rangkuman off dan on.
m	Tampilkan informasi memory off dan on.
A	Urutkan tampilan berdasarkan konsumen sumber daya sistem yang paling besar.
f	Masuk ke layar konfigurasi interaktif pada top.
o	Enable agar kita dapat memilih secara interaktif dalam top.
r	Lakukan perintah renice.
k	Lakukan perintah kill.
z	Turn on or off color/mono


htop

seperti top, tapi agak lebih "user friendly". Instalasi htop menggunakan perintah

sudo apt-get install htop

menjalankan htop menggunakan perintah

htop

psacct atau acct

  • ac command prints the statistics of user logins/logouts (connect time) in hours.
  • lastcomm command prints the information of previously executed commands of user.
  • accton commands is used to turn on/off process for accounting.
  • sa command summarizes information of previously executed commands.
  • last and lastb commands show listing of last logged in users.


apt install acct

restart

/etc/init.d/acct status
/etc/init.d/acct start
/etc/init.d/acct status

accounting

ac
ac -d
ac -p
ac onno
ac -d onno

execute command

sa
sa -u
sa -m
sa -c

last command

lastcomm onno
lastcomm ls

ps

ps mengambil snapshot dari kelompok proses terpilih yang aktif. Secara default kelompok ini terbatas pada proses yang dimiliki oleh pengguna saat ini dan terkait dengan terminal yang sama.

Hal ini dapat memberikan informasi lebih rinci tentang proses yang terjadi daripada top, tapi tidak dinamis.

Untuk memilih semua proses gunakan -A atau -e:

ps -A
ps -e

Contoh keluaran

  PID TTY          TIME CMD
    1 ?        00:00:00 init
    2 ?        00:00:00 kthreadd
    3 ?        00:00:05 ksoftirqd/0
    6 ?        00:00:00 migration/0
    7 ?        00:00:00 watchdog/0
    8 ?        00:00:00 migration/1
...
...
12400 ?        00:00:00 btrfs-worker-2
12403 ?        00:00:00 btrfs-endio-met
12508 ?        00:00:00 kworker/0:0
12723 ?        00:00:00 kworker/1:0
13329 ?        00:00:00 kworker/1:2
13541 pts/2    00:00:00 ps

ps tidak berbeda jauh dengan top tapi memberikan lebih banyak informasi. Untuk memberikan Long Format output:

ps -Al

Untuk mengaktifkan extra full mode, ini akan memperlihatkan command line argumen yang dikirimkan ke proses

ps -AlF

Untuk melihat thread ( LWP dan NLWP)

ps -AlFH

Untuk melihat thread setelah di proses

ps -AlLm

Untuk melihat semua proses yang ada di server

ps ax
ps axu

Print proses tree

ps -ejH
ps axjf
pstree

Print informasi security

ps -eo euser,ruser,suser,fuser,f,comm,label
ps axZ
ps -eM


Lihat semua proses yang jalan sebagai User www-data

ps -U www-data -u www-data u

Set output dalam format yang user-defined

ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
ps -eopid,tt,user,fname,tmout,f,wchan

Display hanya proses ID dari firefox

ps -C firefox -o pid=
ps -C soffice.bin -o pid=
pgrep firefox
pgrep soffice.bin

Tampilkan nama dari PID 55977

ps -p 55977 -o comm=

Tampilkan top 10 proses yang mengkonsumsi memory

ps -auxf | sort -nr -k 4 | head -10

Tampilkan top 10 proses yang mengkonsumsi CPU

ps -auxf | sort -nr -k 3 | head -10


pstree

pstree is a small, command line (i.e., all-text mode) program that displays the processes (i.e., executing instances of programs) on the system in the form of a tree diagram. It differs from the much more commonly used (and more complex) ps program in a number of respects, including that the latter shows the processes in a list rather than a tree diagram but provides more detailed information about them.

Tree Diagrams

A tree diagram is a way of showing the ancestral relationships among processes (or other entities) by connecting them with short lines that indicate for each process the process from which it originated (i.e., its parent) and any processes that it created (i.e., its children). This type of diagram differs from the usual image of a tree in that the root is at the top and the branches point downwards.

Similar inverted tree diagrams are commonly used to illustrate the hierarchical filesystems of Linux and other Unix-like operating systems, which begin with the root directory (represented by a forward slash) off from which branch the second tier directories such as /bin, /boot, /etc, /home, /mount and /sbin.

One of the advantages of pstree as compared with ps is that it makes it easier to terminate a series of related processes (i.e., all of the descendants of a particular process). This is because pstree makes it immediately clear which process is the parent, and all that is necessary is to terminate the parent in order to extinguish all of its descendant processes. That is, it is not necessary to manually search through a list to find and individually terminate each process as would be necessary using ps. The kill command is commonly used to terminate a crashed or otherwise misbehaving program or process.

Syntax

The basic syntax for pstree is:

   pstree [options] [pid or username]

The square brackets indicate that the items in them are optional. If pstree is used without any options or arguments, that is, by typing

   pstree

and then pressing the ENTER key, the result is a tree diagram that shows all of the processes currently on the system.


init─┬─NetworkManager─┬─dhclient
     │                ├─dnsmasq
     │                └─3*[{NetworkManager}]
     ├─accounts-daemon───2*[{accounts-daemon}]
     ├─acpid
     ├─apache2───5*[apache2]
     ├─at-spi-bus-laun─┬─dbus-daemon
     │                 └─3*[{at-spi-bus-laun}]
     ├─at-spi2-registr───{at-spi2-registr}
     ├─avahi-daemon───avahi-daemon
     ├─bamfdaemon───3*[{bamfdaemon}]
     ├─bluetoothd
     ├─colord───{colord}
     ├─console-kit-dae───64*[{console-kit-dae}]
     ├─cron
     ├─cups-browsed
     ├─cupsd───dbus

vmstat

vmstat (Statistik Virtual Memory) mengeluarkan laporan seketika tentang proses dalam sistem, memori, paging, block I/O, interupsi dan aktivitas CPU.

Meskipun tidak dinamis seperti top, kita dapat menentukan interval sampling, yang memungkinkan kita mengamati aktivitas sistem mendekati real time.

vmstat 3

Contoh output:

procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 3  0 160988  93024  64376 609380    1    2    42    47   11  129 21  1 76  1
 2  0 160988  75440  52892 640592    0    0 19168     0  963  760 91  4  0  5
 2  0 160988  75208  38260 658948    0    0 16316   198  887  661 85  3  2 11
 1  1 160988  75304  31272 663872    0    0 16584     4 1055 1014 92  5  0  4
 1  1 160988  76816  30100 667352    0    0     4 55416 1349 3649 51  8  0 41

Dapatkan penggunaan memory

vmstat -m

Dapatkan informasi tentang penggunaan page memory yang aktif / tidak aktif.

vmstat -a


sar

sar (Sistem Reporter Activity) mengumpulkan dan melaporkan informasi tentang aktivitas sistem saat ini. sar dapat di instalasi melalui perintah

apt-get install sysstat

Dan edit file

vi /etc/default/sysstat

agar

ENABLED="true"

Kemudian restart sysstat

/etc/init.d/sysstat restart

setelah data di koleksi. Untuk melihat network counter, ketik

sar -n DEV | more

Untuk melihat network counter dari sa24

sar -n DEV -f /var/log/sa/sa24 | more

Kita juga dapat melihat penggunan secara real time menggunakan sar

sar 2 5

Contoh keluaran

Linux 3.2.0-29-generic (openbts28) 	03/23/2013 	_x86_64_	(2 CPU)

09:59:20 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
09:59:22 AM     all     50.63      0.00      1.51      0.00      0.00     47.86
09:59:24 AM     all     51.00      0.00      1.75      0.75      0.00     46.50
09:59:26 AM     all     50.63      0.00      2.26      0.00      0.00     47.12
09:59:28 AM     all     49.62      0.00      2.52      0.00      0.00     47.86
09:59:30 AM     all     50.38      0.00      2.02      1.26      0.00     46.35
Average:        all     50.45      0.00      2.01      0.40      0.00     47.14

Alat ini merupakan alternatif yang berguna untuk mencoba untuk membuat laporan berkala tentang aktivitas sistem dari top.

w

Perintah w menampilkan informasi tentang user yang saat ini sedang on di mesin, dan proses yang mereka gunakan.

Perintah yang dapat digunakan

w 
w username

Contoh keluaran


 09:06:42 up 14:46,  3 users,  load average: 1.04, 1.08, 1.05
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
onno     tty7                      Fri18   14:46m 11:55   0.28s gnome-session --session=ubuntu
onno     pts/1    :0               Fri18    1:08m  1.38s  1.38s bash
onno     pts/2    :0               06:05    0.00s  0.48s 25.80s gnome-terminal

uptime

Perintah uptime dapat digunakan untuk melihat berapa lama sistem telah berjalan, waktu sekarang di komputer, berapa user yang sedang log on, beban sistem 1, 5 dan 15 menit terakhir.

uptime

hasilnya kurang lebih

08:47:21 up 14:27,  3 users,  load average: 1.16, 1.09, 1.07

Load akan berubah dari satu sistem ke sistem lain. Untuk sistem dengan 1 CPU maka load 1-3 cukup optimal. Untuk sebuah sistem SMP maka load 6-10 masih dapat di terima.


free

Perintah ini menampilkan jumlah memory yang digunakan secara fisik dan swap memory yang ada di sistem, juga buffer yang digunakan oleh kernel.

free

Contoh output

             total       used       free     shared    buffers     cached
Mem:       2011972    1847148     164824          0      47088     592660
-/+ buffers/cache:    1207400     804572
Swap:       779148     162108     617040

iostat

Perintah iostat melaporkan statistik CPU dan input/output dari device, partisi maupun network file system (NFS)

iostat

Agar dapat jalan dengan baik kita perlu install

apt install sysstat


Contoh output

Linux 3.2.0-29-generic (openbts28) 	03/23/2013 	_x86_64_	(2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          21.76    0.14    1.04    1.28    0.00   75.79

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               4.41        56.67        52.68    3183588    2959436
sdb               4.44        28.00        43.68    1572868    2454036

mpstat

Perintah mpstat menampilkan aktifitas masing-masing processor yang tersedia. Processor 0 sebagai yang pertama. Untuk menampilkan rata-rata pengunakan CPU per processor, ketik:

mpstat -P ALL

Contoh output:

Linux 3.2.0-29-generic (openbts28) 	03/23/2013 	_x86_64_	(2 CPU)

10:04:53 AM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
10:04:53 AM  all   22.02    0.14    1.03    1.27    0.00    0.02    0.00    0.00   75.52
10:04:53 AM    0   22.14    0.18    1.07    1.26    0.00    0.03    0.00    0.00   75.32
10:04:53 AM    1   21.89    0.09    1.00    1.28    0.00    0.01    0.00    0.00   75.72

mpstat merupakan bagian dari sysstat install menggunakan

sudo apt-get install sysstat

pmap

Perintah pmap melaporkan memory map dari sebuah proses. Gunakan perintah ini untuk melihat bottleneck di memory. Ketik

pmap -d PID

Untuk menampilkan informasi memory proses untuk PID # 15070, ketik:

pmap -d 15070

Contoh output:

15070:   /usr/lib/libreoffice/program/soffice.bin --writer --splash-pipe=6
Address           Kbytes Mode  Offset           Device    Mapping
0000000000400000       4 r-x-- 0000000000000000 008:00002 soffice.bin
0000000000600000       4 r---- 0000000000000000 008:00002 soffice.bin
0000000000601000       4 rw--- 0000000000001000 008:00002 soffice.bin
0000000001d4d000   19612 rw--- 0000000000000000 000:00000   [ anon ]
00007fc830000000     140 rw--- 0000000000000000 000:00000   [ anon ]
00007fc830023000   65396 ----- 0000000000000000 000:00000   [ anon ]
00007fc834718000      32 r-x-- 0000000000000000 008:00002 libmcnttype.so
00007fc834720000    2044 ----- 0000000000008000 008:00002 libmcnttype.so
00007fc83491f000       4 r---- 0000000000007000 008:00002 libmcnttype.so
00007fc834920000       4 rw--- 0000000000008000 008:00002 libmcnttype.so
00007fc834921000      72 r-x-- 0000000000000000 008:00002 gnome-keyring-pkcs11.so
00007fc834933000    2044 ----- 0000000000012000 008:00002 gnome-keyring-pkcs11.so
00007fc834b32000       8 r---- 0000000000011000 008:00002 gnome-keyring-pkcs11.so
00007fc834b34000       4 rw--- 0000000000013000 008:00002 gnome-keyring-pkcs11.so
...
...
00007fc872ccd000       4 r-xs- 0000000000000000 008:00002 .execoooxQzg4m (deleted)
00007fc872cce000       4 rw-s- 0000000000000000 008:00002 .execoooxQzg4m (deleted)
00007fc872ccf000       4 rw--- 0000000000000000 000:00000   [ anon ]
00007fc872cd0000      12 r---- 0000000000000000 008:00002 user
00007fc872cd3000       4 r--s- 0000000000000000 008:00002 user
00007fc872cd4000      80 rw--- 0000000000000000 000:00000   [ anon ]
00007fc872ce8000       4 r---- 0000000000022000 008:00002 ld-2.15.so
00007fc872ce9000       8 rw--- 0000000000023000 008:00002 ld-2.15.so
00007fff36b4d000     132 rw--- 0000000000000000 000:00000   [ stack ]
00007fff36bff000       4 r-x-- 0000000000000000 000:00000   [ anon ]
ffffffffff600000       4 r-x-- 0000000000000000 000:00000   [ anon ]
mapped: 1105764K    writeable/private: 97360K    shared: 15184K

Kalimat terakhir sangat penting:

  • mapped: 1105764K total memory yang di map ke file.
  • writeable/private: 97360K jumlah alamat memory private.
  • shared: 15184K jumlah alamat memory dari proses ini yang di sharing dengan proses yang lain.

netstat

Perintah netstat menampilkan informasi tentang sambungan jaringan, tabel routing, statistik interface, sambungan masquerade, dan keanggotaan multicast. Contoh penggunaannya:

netstat -nr

Contoh output:

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.0.222   0.0.0.0         UG        0 0          0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth0
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
192.168.13.0    192.168.0.33    255.255.255.0   UG        0 0          0 eth0

Melihat IP dan socket yang saling terhubung

netstat -an

Contoh output

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:873             0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:10000           0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN     
tcp        0      0 192.168.0.3:59669       173.194.38.149:443      ESTABLISHED
tcp        0      0 192.168.0.3:34229       69.171.235.16:80        ESTABLISHED
tcp        0      0 192.168.0.3:33922       69.171.235.16:80        ESTABLISHED
tcp        0      0 192.168.0.3:34049       69.171.235.16:80        ESTABLISHED
tcp        0      0 192.168.0.3:34252       69.171.235.16:80        ESTABLISHED
tcp        0      0 192.168.0.3:34097       69.171.235.16:80        ESTABLISHED
tcp        0      0 192.168.0.3:50100       192.168.0.7:9090        ESTABLISHED
tcp        0      0 192.168.0.3:38858       111.95.240.27:443       ESTABLISHED
tcp        0      0 192.168.0.3:34076       69.171.235.16:80        ESTABLISHED

ss

Perintah ss digunakan untuk dump statistik socket. ss memungkinkan untuk melihat informasi yang mirip dengan netstat. Cara mengunakannya

ss

Contoh tampilan

State       Recv-Q Send-Q                                 Local Address:Port                                     Peer Address:Port   
ESTAB       0      0                                        192.168.0.3:55530                                   111.94.248.38:https   
ESTAB       0      0                                        192.168.0.3:59669                                  173.194.38.149:https   
ESTAB       0      0                                        192.168.0.3:34229                                   69.171.235.16:http    
ESTAB       0      0                                        192.168.0.3:33922                                   69.171.235.16:http    
ESTAB       0      0                                        192.168.0.3:34049                                   69.171.235.16:http    
ESTAB       0      0                                        192.168.0.3:34252                                   69.171.235.16:http    
ESTAB       0      0                                        192.168.0.3:34097                                   69.171.235.16:http    
ESTAB       0      0                                        192.168.0.3:50100                                     192.168.0.7:9090 


iptraf

Perintah iptraf adalah IP LAN monitor yang berwarna warni. iptraf menampilkan berbagai statistik jaringan termasuk TCP info, UDP count, informasi ICMP dan OSPF, info load Ethernet, statistik node, cek IP.

Instalasi iptraf menggunakan perintah

apt-get install iptraf

Menjalankan iptraf menggunakan perintah

iptraf

Hasilnya kira-kira

Iptraf1.png
Iptraf2.png
Iptraf3.png
Iptraf4.png
Iptraf5.png
Iptraf6.png

Referensi


Pranala Menarik