“Collectl”: “Linux” üçin ösen “All-in-One Performance Monitoring” guraly


Linux ulgam dolandyryjysynyň iň möhüm borjy, dolandyrýan ulgamynyň gaty gowy ýagdaýdadygyna göz ýetirmekdir. Linux ulgamynyň administratorlary üçin htop ýaly ulgamda proseslere gözegçilik etmäge we görkezmäge kömek edip biljek köp gural bar, ýöne bu gurallaryň hiç biri kollektiw bilen bäsleşip bilmez.

collectl, häzirki ulgamyň ýagdaýyny suratlandyrýan öndürijilik maglumatlary ýygnamak üçin ulanyp boljak örän oňat aýratynlyk baý buýruk setiri. Beýleki gözegçilik gurallarynyň köpüsinden tapawutlylykda, kollektor çäkli mukdarda ulgam ölçeglerine ünsi jemlemeýär, tersine, cpu, disk, ýat, tor, rozetkalar, tcp, inodlar, infiniband, ýaly köp sanly ulgam çeşmeleri barada maglumat ýygnap biler. şöhle, ýat, nfs, prosesler, kwadrika, plitalar we dostinfo.

Kollektiw ulanmagyň gaty gowy tarapy, diňe ýokarky, ps, iotop we başgalar ýaly belli bir maksat bilen döredilen kommunal hyzmatlaryň roluny ýerine ýetirip biler. Kollekti peýdaly gural edýän käbir aýratynlyklar haýsylar?

Köp gözleg geçirenimden soň, ýigitler üçin kollektiw buýruk setiriniň käbir möhüm aýratynlyklary bilen sanaw düzdüm.

  1. Daemon ýa-da ikisi ýaly interaktiw hereket edip biler.
  2. Çykyşy köp formatda görkezip biler.
  3. Islendik kiçi ulgamda diýen ýaly gözegçilik etmek ukyby bar.
  4. ps, top, iotop, vmstat ýaly köp sanly kömekçi rol oýnap biler.
  5. Alnan maglumatlary ýazga almak we oýnamak ukyby bar.
  6. Maglumatlary dürli faýl formatlarynda eksport edip biler. (maglumatlary daşarky gurallar bilen seljermek isläniňizde gaty peýdaly).
  7. Uzakdaky maşynlara ýa-da tutuş serwer toparyna gözegçilik etmek üçin hyzmat edip biler.
  8. Terminalda maglumatlary görkezip, faýla ýa-da rozetka ýazyp biler.

Kolleksiýany Linux-da nädip gurmaly

Kolleksiýa kömekçi programmasy ähli Linux paýlamalarynda işleýär, işlemeli ýeke-täk zat perl, şonuň üçin kolleksiýa enjamyňyzy gurmazdan ozal enjamyňyzda Perl gurlandygyna göz ýetiriň.

“Ubuntu” ýaly Debian esasly maşynlarda kollektiw enjamyny gurmak üçin aşakdaky buýruk ulanylyp bilner.

$ sudo apt-get install collectl

Red Hat esasly distro ulanýan bolsaňyz, ýum buýrugy bilen reposdan aňsatlyk bilen alyp bilersiňiz.

# yum install collectl

Kollektiw peýdasynyň käbir amaly mysallary

Kolleksiýa guralyny gurmak gutaransoň, ony hiç hili mümkinçilik bolmasa-da terminaldan aňsatlyk bilen işledip bilersiňiz. Aşakdaky buýruk, cpu, disk we tor statistikasy barada maglumatlary gaty gysga we adam okalýan görnüşde görkezer.

# collectl

waiting for 1 second sample...
#
#cpu sys inter  ctxsw KBRead  Reads KBWrit Writes   KBIn  PktIn  KBOut  PktOut 
  13   5   790   1322      0      0     92      7      4     13      0       5 
  10   2   719   1186      0      0      0      0      3      9      0       4 
  12   0   753   1188      0      0     52      3      2      5      0       6 
  13   2   733   1063      0      0      0      0      1      1      0       1 
  25   2   834   1375      0      0      0      0      1      1      0       1 
  28   2   870   1424      0      0     36      7      1      1      0       1 
  19   3   949   2271      0      0     44      3      1      1      0       1 
  17   2   809   1384      0      0      0      0      1      6      0       6 
  16   2   732   1348      0      0      0      0      1      1      0       1 
  22   4   993   1615      0      0     56      3      1      2      0       3

Guysigitler, terminal ekranynda görkezilen ýokardaky çykyşdan görşüňiz ýaly, bir setirde peýda bolany üçin, buýruk çykyşynda bar bolan ulgam ölçegleri bilen işlemek gaty aňsat.

Kollektiw kömek serişdesi hiç hili opsiýa bolmazdan ýerine ýetirilende, aşakdaky kiçi ulgamlar barada maglumatlary görkezýär:

  1. cpu
  2. diskler
  3. tor

Bellik: Biziň ýagdaýymyzda kiçi ulgam, ölçenip boljak ulgam çeşmesiniň her görnüşidir.

Şeýle hem buýrugy aşakda görkezilişi ýaly –all opsiýasy bilen birleşdirip, plitalardan başga ähli kiçi ulgamlar üçin statistika görkezip bilersiňiz.

# collectl --all

waiting for 1 second sample...
#
#cpu sys inter  ctxsw Cpu0 Cpu1 Free Buff Cach Inac Slab  Map   Fragments KBRead  Reads KBWrit Writes   KBIn  PktIn  KBOut  PktOut   IP  Tcp  Udp Icmp  Tcp  Udp  Raw Frag Handle Inodes  Reads Writes Meta Comm 
  16   3   817   1542  430  390   1G 175M   1G 683M 193M   1G nsslkjjebbk      0      0     24      3      1      1      0       1    0    0    0    0  623    0    0    0   8160 240829      0      0    0    0 
  11   1   745   1324  316  426   1G 175M   1G 683M 193M   1G nsslkjjebbk      0      0      0      0      0      3      0       2    0    0    0    0  622    0    0    0   8160 240828      0      0    0    0 
  15   2   793   1683  371  424   1G 175M   1G 683M 193M   1G ssslkjjebbk      0      0      0      0      1      1      0       1    0    0    0    0  622    0    0    0   8160 240829      0      0    0    0 
  16   2   872   1875  427  446   1G 175M   1G 683M 193M   1G ssslkjjebbk      0      0     24      3      1      1      0       1    0    0    0    0  622    0    0    0   8160 240828      0      0    0    0 
  24   2   842   1383  473  368   1G 175M   1G 683M 193M   1G ssslkjjebbk      0      0    168      6      1      1      0       1    0    0    0    0  622    0    0    0   8160 240828      0      0    0    0 
  27   3   844   1099  478  365   1G 175M   1G 683M 193M   1G nsslkjjebbk      0      0      0      0      1      6      1       9    0    0    0    0  622    0    0    0   8160 240828      0      0    0    0 
  26   5   823   1238  396  428   1G 175M   1G 683M 193M   1G ssslkjjebbk      0      0      0      0      2     11      3       9    0    0    0    0  622    0    0    0   8160 240828      0      0    0    0 
  15   1   753   1276  361  391   1G 175M   1G 683M 193M   1G ssslkjjebbk      0      0     40      3      1      2      0       3    0    0    0    0  623    0    0    0   8160 240829      0      0    0    0

, Öne, kömekçiniň kömegi bilen cpu ulanylyşyna nädip gözegçilik edip bilersiňiz? “-S” opsiýasy haýsy kiçi ulgam maglumatlarynyň ýygnaljakdygyny ýa-da yzyna oýnaljakdygyny gözegçilikde saklamak üçin ulanylmaly.

Mysal üçin, cpu ulanylyşynyň gysgaça mazmunyna gözegçilik etmek üçin aşakdaky buýruk ulanylyp bilner.

# collectl -sc

waiting for 1 second sample...
#
#cpu sys inter  ctxsw 
  15   2   749   1155 
  16   3   772   1445 
  14   2   793   1247 
  27   4   887   1292 
  24   1   796   1258 
  16   1   743   1113 
  15   1   743   1179 
  14   1   706   1078 
  15   1   764   1268

Buýrugy “scdn” bilen birleşdireniňizde näme bolýar? Buýruk setiri gurallaryny nädip ulanmalydygyny öwrenmegiň iň oňat usuly, mümkin boldugyça amal etmekdir, şonuň üçin aşakdaky buýrugy terminalyňyzda işlediň we nämeleriň boljakdygyny görüň.

# collectl -scdn

waiting for 1 second sample...
#
#cpu sys inter  ctxsw KBRead  Reads KBWrit Writes   KBIn  PktIn  KBOut  PktOut 
  25   4   943   3333      0      0      0      0      1      1      0       2 
  27   3   825   2910      0      0      0      0      1      1      0       1 
  27   5   886   2531      0      0      0      0      0      0      0       1 
  20   4   872   2406      0      0      0      0      1      1      0       1 
  26   1   854   2091      0      0     20      2      1      1      0       1 
  39   4  1004   3398      0      0      0      0      2      8      3       6 
  41   6   955   2464      0      0     40      3      1      2      0       3 
  25   7   890   1609      0      0      0      0      1      1      0       1 
  16   2   814   1165      0      0    796     43      2      2      0       2 
  14   1   779   1383      0      0     48      6      1      1      0       1 
  11   2   795   1285      0      0      0      0      2     14      1      14

Dymmaklyk opsiýanyň “cdn”, cpu, diskler we tor maglumatlary üçin aňsatlyk bilen düşünip bilersiňiz. Buýrugyň netijesi “collectl -scn” -iň çykyşy bilen deňdir

Memoryat hakda maglumat ýygnamak isleseňiz, aşakdaky buýrugy ulanyň.

# collectl -sm

waiting for 1 second sample...
#
#Free Buff Cach Inac Slab  Map 
   1G 177M   1G 684M 193M   1G 
   1G 177M   1G 684M 193M   1G 
   1G 177M   1G 684M 193M   1G 
   1G 177M   1G 684M 193M   1G 
   1G 177M   1G 684M 193M   1G 
   1G 177M   1G 684M 193M   1G 
   1G 177M   1G 684M 193M   1G 
   1G 177M   1G 684M 193M   1G

Memoryadyň ulanylyşy, erkin ýat we ulgamyňyzyň işlemegi üçin beýleki möhüm zatlar barada jikme-jik maglumat almak isleseňiz, ýokardaky çykyş gaty peýdalydyr.

Tcp-de käbir maglumatlar hakda näme aýdyp bilersiňiz? Munuň üçin aşakdaky buýrugy ulanyň.

# collectl -st

waiting for 1 second sample...
#
#  IP  Tcp  Udp Icmp 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0 
    0    0    0    0

Birneme tejribe toplanyňyzdan soň, isleýän netijeleriňizi almak üçin opsiýalary aňsatlyk bilen birleşdirip bilersiňiz. Mysal üçin, tcp üçin “t” we cpu üçin “c” birleşdirip bilersiňiz. Aşakdaky buýruk muny ýerine ýetirýär.

# collectl -stc

waiting for 1 second sample...
#
#cpu sys inter  ctxsw   IP  Tcp  Udp Icmp 
  23   8   961   3136    0    0    0    0 
  24   5   916   3662    0    0    0    0 
  21   8   848   2408    0    0    0    0 
  30  10   916   2674    0    0    0    0 
  38   3   826   1752    0    0    0    0 
  31   3   820   1408    0    0    0    0 
  15   5   781   1335    0    0    0    0 
  17   3   802   1314    0    0    0    0 
  17   3   755   1218    0    0    0    0 
  14   2   788   1321    0    0    0    0

Adamlar üçin bar bolan ähli wariantlary ýatda saklamak kyn, şonuň üçin gural bilen goldanýan kiçi ulgamlaryň gysgaça sanawyny iberýärin.

  1. b - dost maglumat (ýadyň bölekleri)
  2. c - CPU
  3. d - Disk
  4. f - NFS V3 maglumatlary
  5. i - Inode we faýl ulgamy
  6. j - Arakesmeler
  7. l - Şöhle
  8. m - oryat
  9. n - Torlar
  10. s - rozetkalar
  11. t - TCP
  12. x - Özara baglanyşyk
  13. y - Plitalar (ulgam obýekt keşleri)

Ulgam dolandyryjysy ýa-da Linux ulanyjysy üçin örän möhüm maglumatlar, disk ulanylyşynda toplanan maglumatlardyr. Aşakdaky buýruk, diskiň ulanylyşyna gözegçilik etmäge kömek eder.

# collectl -sd

waiting for 1 second sample...
#
#KBRead  Reads KBWrit Writes 
      0      0      0      0 
      0      0      0      0 
      0      0     92      7 
      0      0      0      0 
      0      0     36      3 
      0      0      0      0 
      0      0      0      0 
      0      0    100      7 
      0      0      0      0

Şeýle hem, aýratyn disklerde maglumat ýygnamak üçin “-sD” opsiýasyny ulanyp bilersiňiz, ýöne umumy disklerdäki maglumatlaryň habar berilmejekdigini bilmelisiňiz.

# collectl -sD

waiting for 1 second sample...

# DISK STATISTICS (/sec)
#           Pct
#Name       KBytes Merged  IOs Size  KBytes Merged  IOs Size  RWSize  QLen  Wait SvcTim Util
sda              0      0    0    0      52     11    2   26      26     1     8      8    1
sda              0      0    0    0       0      0    0    0       0     0     0      0    0
sda              0      0    0    0      24      0    2   12      12     0     0      0    0
sda              0      0    0    0     152      0    4   38      38     0     0      0    0
sda              0      0    0    0     192     45    3   64      64     1    20     20    5
sda              0      0    0    0     204      0    2  102     102     0     0      0    0
sda              0      0    0    0       0      0    0    0       0     0     0      0    0
sda              0      0    0    0     116     26    3   39      38     1    16     16    4
sda              0      0    0    0       0      0    0    0       0     0     0      0    0
sda              0      0    0    0       0      0    0    0       0     0     0      0    0
sda              0      0    0    0      32      5    3   11      10     1    16     16    4
sda              0      0    0    0       0      0    0    0       0     0     0      0    0

Şeýle hem jikme-jik maglumatlary ýygnamak üçin beýleki jikme-jik kiçi ulgamlary ulanyp bilersiňiz. Aşakda jikme-jik kiçi ulgamlaryň sanawy bar.

  1. C - CPU
  2. D - Disk
  3. E - ipmitool
  4. arkaly daşky gurşaw maglumatlary (janköýer, güýç, temp)
  5. F - NFS maglumatlary
  6. J - Arakesmeler
  7. L - Ajaýyp OST jikme-jigi ýa-da müşderi faýl ulgamynyň jikme-jigi
  8. N - Torlar
  9. T - 65 TCP hasaplaýjylary diňe sýu plotet görnüşinde bar
  10. X - Özara baglanyşyk
  11. Y - Plitalar (ulgam obýekt keşleri)
  12. Z - Amallar

Kollektiw programmasynda köp sanly wariant bar, ýöne hemmesini diňe bir makalada ýazmak üçin ýeterlik wagt we ýer ýok. Şeýle-de bolsa, peýdany ýokarky we ps hökmünde nädip ulanmalydygyny bellemeli we öwretmeli.

Kollektiw işini iň ýokary peýdaly hökmünde ýerine ýetirmek gaty aňsat, terminalyňyzda aşakdaky buýrugy işlediň we ýokarky guralyň Linux ulgamyňyzda ýerine ýetirilende size meňzeş çykyşyny görersiňiz.

# collectl --top

# TOP PROCESSES sorted by time (counters are /sec) 13:11:02
# PID  User     PR  PPID THRD S   VSZ   RSS CP  SysT  UsrT Pct  AccuTime  RKB  WKB MajF MinF Command
^COuch!tecmint  20     1   40 R    1G  626M  0  0.01  0.14  15  28:48.24    0    0    0  109 /usr/lib/firefox/firefox 
 3403  tecmint  20     1   40 R    1G  626M  1  0.00  0.20  20  28:48.44    0    0    0  600 /usr/lib/firefox/firefox 
 5851  tecmint  20  4666    0 R   17M   13M  0  0.02  0.06   8  00:01.28    0    0    0    0 /usr/bin/perl 
 1682  root     20  1666    2 R  211M   55M  1  0.02  0.01   3  03:10.24    0    0    0   95 /usr/bin/X 
 3454  tecmint  20  3403    8 S  216M   45M  1  0.01  0.02   3  01:23.32    0    0    0    0 /usr/lib/firefox/plugin-container 
 4658  tecmint  20  4657    3 S  207M   17M  1  0.00  0.02   2  00:08.23    0    0    0  142 gnome-terminal 
 2890  tecmint  20  2571    3 S  340M   68M  0  0.00  0.01   1  01:19.95    0    0    0    0 compiz 
 3521  tecmint  20     1   24 S  710M  148M  1  0.01  0.00   1  01:47.84    0    0    0    0 skype 
    1  root     20     0    0 S    3M    2M  0  0.00  0.00   0  00:02.57    0    0    0    0 /sbin/init 
    2  root     20     0    0 S     0     0  1  0.00  0.00   0  00:00.00    0    0    0    0 kthreadd 
    3  root     20     2    0 S     0     0  0  0.00  0.00   0  00:00.60    0    0    0    0 ksoftirqd/0 
    5  root      0     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 kworker/0:0H 
    7  root      0     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 kworker/u:0H 
    8  root     RT     2    0 S     0     0  0  0.00  0.00   0  00:04.42    0    0    0    0 migration/0 
    9  root     20     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 rcu_bh 
   10  root     20     2    0 R     0     0  0  0.00  0.00   0  00:02.22    0    0    0    0 rcu_sched 
   11  root     RT     2    0 S     0     0  0  0.00  0.00   0  00:00.05    0    0    0    0 watchdog/0 
   12  root     RT     2    0 S     0     0  1  0.00  0.00   0  00:00.07    0    0    0    0 watchdog/1 
   13  root     20     2    0 S     0     0  1  0.00  0.00   0  00:00.73    0    0    0    0 ksoftirqd/1 
   14  root     RT     2    0 S     0     0  1  0.00  0.00   0  00:01.96    0    0    0    0 migration/1 
   16  root      0     2    0 S     0     0  1  0.00  0.00   0  00:00.00    0    0    0    0 kworker/1:0H 
   17  root      0     2    0 S     0     0  1  0.00  0.00   0  00:00.00    0    0    0    0 cpuset

Indi bolsa iň soňkusy, ps gurallary terminalyňyzda aşakdaky buýrugy işledip, kollektiw kömekçi programmasyny ulanmak. Ulgamyňyzdaky prosesler barada terminalyňyzdaky “ps” buýrugyny işledeniňiz ýaly alarsyňyz.

# collectl -c1 -sZ -i:1

waiting for 1 second sample...

### RECORD    1 >>> tecmint-vgn-z13gn <<< (1397979716.001) (Sun Apr 20 13:11:56 2014) ###

# PROCESS SUMMARY (counters are /sec)
# PID  User     PR  PPID THRD S   VSZ   RSS CP  SysT  UsrT Pct  AccuTime  RKB  WKB MajF MinF Command
    1  root     20     0    0 S    3M    2M  0  0.00  0.00   0  00:02.57    0    0    0    0 /sbin/init 
    2  root     20     0    0 S     0     0  1  0.00  0.00   0  00:00.00    0    0    0    0 kthreadd 
    3  root     20     2    0 S     0     0  0  0.00  0.00   0  00:00.60    0    0    0    0 ksoftirqd/0 
    5  root      0     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 kworker/0:0H 
    7  root      0     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 kworker/u:0H 
    8  root     RT     2    0 S     0     0  0  0.00  0.00   0  00:04.42    0    0    0    0 migration/0 
    9  root     20     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 rcu_bh 
   10  root     20     2    0 S     0     0  0  0.00  0.00   0  00:02.24    0    0    0    0 rcu_sched 
   11  root     RT     2    0 S     0     0  0  0.00  0.00   0  00:00.05    0    0    0    0 watchdog/0 
   12  root     RT     2    0 S     0     0  1  0.00  0.00   0  00:00.07    0    0    0    0 watchdog/1 
   13  root     20     2    0 S     0     0  1  0.00  0.00   0  00:00.73    0    0    0    0 ksoftirqd/1 
   14  root     RT     2    0 S     0     0  1  0.00  0.00   0  00:01.96    0    0    0    0 migration/1 
   16  root      0     2    0 S     0     0  1  0.00  0.00   0  00:00.00    0    0    0    0 kworker/1:0H 
   17  root      0     2    0 S     0     0  1  0.00  0.00   0  00:00.00    0    0    0    0 cpuset 
   18  root      0     2    0 S     0     0  1  0.00  0.00   0  00:00.00    0    0    0    0 khelper 
   19  root     20     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 kdevtmpfs 
   20  root      0     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 netns 
   21  root     20     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 bdi-default 
   22  root      0     2    0 S     0     0  0  0.00  0.00   0  00:00.00    0    0    0    0 kintegrityd

Linux ulgam dolandyryjylarynyň köpüsiniň bu guraly halajakdygyna we doly ulanylanda güýjüni duýjakdygyna ynanýaryn. Kollektiw baradaky bilimleriňizi indiki derejä ýetirmek isleseňiz, gollanma sahypalaryna serediň we amaly dowam etdiriň.

Terminalyňyza aşakdaky buýrugy ýazyň we okap başlaň.

# man collectl

Salgylanma baglanyşyklary

Baş sahypa