Sysdig - Usa ka Gamhanan nga System Monitoring ug Troubleshooting Tool alang sa Linux


Ang Sysdig usa ka open-source, cross-platform, gamhanan ug flexible system monitoring ug troubleshooting tool para sa Linux; nagtrabaho usab kini sa Windows ug Mac OSX apan adunay limitado nga gamit ug magamit alang sa pagtuki sa sistema, pag-inspeksyon ug pag-debug.

Kasagaran, mogamit ka usa ka pagsagol sa lainlaing mga himan sa pag-monitor sa pasundayag sa Linux ug pag-troubleshoot lakip ang mga gilista sa ubos aron mahimo ang mga buluhaton sa pag-monitor ug pag-debug sa Linux:

  1. strace – pagdiskubre sa mga tawag sa sistema ug mga signal sa usa ka proseso.
  2. tcpdump – hilaw nga network traffic monitoring.
  3. netstat – pagmonitor sa koneksyon sa network.
  4. htop – tinuod nga panahon nga pagmonitor sa proseso.
  5. iftop – real time nga network bandwidth monitoring.
  6. lsof – tan-awa kung unsang mga file ang giablihan pinaagi sa unsang proseso.

Bisan pa, ang sysdig naghiusa kung unsa ang tanan nga mga himan sa ibabaw ug daghan pa, gitanyag sa usa ug yano nga programa, labi pa nga adunay katingad-an nga suporta sa sulud. Makapahimo kini kanimo sa pagkuha, pagtipig, pagsala ug pagsusi sa tinuod nga kinaiya (sapa sa mga panghitabo) sa mga sistema sa Linux ingon man sa mga sudlanan.

Kini adunay interface sa command line ug usa ka gamhanan nga interactive UI (csysdig) nga nagtugot kanimo sa pagtan-aw sa kalihokan sa sistema sa tinuod nga panahon, o paghimo sa usa ka pagsubay sa dump ug pagtipig alang sa ulahi nga pagtuki. Mahimo nimong tan-awon kung giunsa ang paglihok sa csysdig gikan sa video sa ubos.

  • Kini paspas, lig-on ug sayon-gamiton nga adunay komprehensibo nga maayong pagkadokumento.
  • Adunay lumad nga suporta para sa mga teknolohiya sa sudlanan, lakip ang Docker, LXC.
  • Kini masulat sa Lua; nagtanyag ug mga pait (gaan nga mga script sa Lua) para sa pagproseso sa mga nakuhang panghitabo sa sistema.
  • Nagsuporta sa mapuslanong pagsala sa output.
  • Nagsuporta sa sistema ug pagsubay sa aplikasyon.
  • Mahimo kining i-integrate sa Ansible, Puppet ug Logstash.
  • Enable sample advanced log analysis.
  • Nagtanyag usab kini og mga feature sa pagtuki sa Linux server attack (forensics) para sa mga ethical hackers ug daghan pa.

Sa kini nga artikulo, ipakita namon kung giunsa ang pag-install sa sysdig sa usa ka sistema sa Linux, ug gamiton kini nga adunay sukaranan nga mga pananglitan sa pagtuki sa sistema, pag-monitor ug pag-troubleshoot.

Giunsa ang Pag-install sa Sysdig sa Linux

Ang pag-instalar sa sysdig nga pakete ingon kadali sama sa pagpadagan sa mando sa ubos, nga magsusi sa tanan nga mga kinahanglanon; kung ang tanan naa sa lugar, kini mag-download ug mag-install sa package gikan sa Draios APT/YUM repository.

# curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | bash 
OR
$ curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash

Human sa pag-instalar niini, kinahanglan nimo nga ipadagan ang sysdig isip gamut tungod kay nagkinahanglan kini og access sa mga kritikal nga mga dapit sama sa/proc file system,/dev/sysdig * nga mga himan ug kinahanglan nga i-auto-load ang sysdig-probe kernel module (kung dili kini) ; kung dili gamita ang sudo nga mando.

Ang labing sukaranan nga pananglitan mao ang pagpadagan niini nga wala’y bisan unsang mga argumento, kini makapaarang kanimo sa pagtan-aw sa imong sistema sa Linux stream sa mga panghitabo nga na-update sa tinuud nga oras:

$ sudo sysdig

Ang naa sa ibabaw nga output (hilaw nga datos) dili tingali adunay daghang kahulugan kanimo, alang sa usa ka labi ka mapuslanon nga output run csysdig:

$ sudo csysdig 

Mubo nga sulat: Aron makuha ang tinuod nga pagbati sa kini nga himan, kinahanglan nimo nga gamiton ang sysdig nga nagpatunghag hilaw nga datos sama sa among nakita kaniadto, gikan sa usa ka nagdagan nga sistema sa Linux: kini nagtawag kanimo nga masabtan kung giunsa ang paggamit sa mga filter ug mga pait.

Apan kung kinahanglan nimo ang usa ka walay sakit nga paagi sa paggamit sa sysdig - ipadayon ang csysdig.

Pagsabot sa Sysdig Chisels ug Filters

Ang mga chisel sa Sysdig gamay ra nga mga script sa Lua para sa pagsusi sa stream sa panghitabo sa sysdig aron mahimo ang mapuslanon nga mga aksyon sa pag-troubleshoot sa sistema ug uban pa. Ang sugo sa ubos makatabang kanimo sa pagtan-aw sa tanang anaa nga mga pait:

$ sudo sysdig -cl

Ang screen shot nagpakita sa usa ka sample nga listahan sa mga chisel ubos sa lain-laing mga kategoriya.

Kung gusto nimong mahibal-an ang dugang nga kasayuran bahin sa usa ka partikular nga pait, gamita ang bandila nga -i:

$ sudo sysdig -i topprocs_cpu

Ang mga filter sa Sysdig nagdugang dugang nga gahum sa klase sa output nga imong makuha gikan sa mga sapa sa panghitabo, gitugotan ka nila nga ipasadya ang output. Kinahanglan nimong ipiho kini sa katapusan sa usa ka linya sa mando.

Ang usa ka prangka ug labing komon nga pagsala kay usa ka sukaranan nga \class.field=value nga pagsusi, mahimo ka usab nga magkombinar sa mga pait sa mga pagsala para sa mas kusgan nga mga pag-customize.

Aron matan-aw ang usa ka lista sa magamit nga mga klase sa uma, mga natad ug ang ilang mga paghulagway, i-type ang:

$ sudo sysdig -l

Aron ihulog ang sysdig output sa usa ka file para sa ulahi nga pagtuki, gamita ang -w nga bandera nga sama niini.

Mahimo nimong basahon ang trace dump file gamit ang -r flag:

$ sudo sysdig -r trace.scap

Ang -s nga opsyon gigamit sa pagtino sa gidaghanon sa mga byte sa datos nga makuha alang sa matag panghitabo sa sistema. Niini nga pananglitan, among gisala ang mga panghitabo alang sa proseso sa mongod.

$ sudo sysdig -s 3000 -w trace.scap
$ sudo sysdig -r trace.scap proc.name=mongod

Aron ilista ang mga proseso sa sistema, i-type ang:

$ sudo sysdig -c ps

Aron matan-aw ang nanguna nga mga proseso pinaagi sa porsyento sa paggamit sa CPU, padagana kini nga mando:

$ sudo sysdig -c topprocs_cpu

Aron makita ang mga koneksyon sa network sa sistema, pagdagan:

$ sudo sysdig -c netstat

Ang mosunod nga sugo makatabang kanimo sa paglista sa mga top network connection sa total bytes:

$ sudo sysdig -c topconns

Sunod, mahimo usab nimo ilista ang mga nanguna nga proseso pinaagi sa network I/O sama sa mosunod:

$ sudo sysdig -c topprocs_net    

Mahimo nimong i-output ang datos nga gibasa ug gisulat sa mga proseso sa sistema sama sa ubos:

$ sudo sysdig -c echo_fds

Aron ilista ang mga nanguna nga proseso pinaagi sa (pagbasa + pagsulat) mga byte sa disk, gamita ang:

$ sudo sysdig -c topprocs_file   

Aron mabantayan ang mga bottleneck sa sistema (hinay nga mga tawag sa sistema), ipatuman kini nga mando:

$ sudo sysdig -c bottlenecks

Aron masubay ang oras sa pagpatuman sa usa ka proseso, mahimo nimong ipadagan kini nga mando ug ihulog ang pagsubay sa usa ka file:

$ sudo sysdig -w extime.scap -c proc_exec_time 

Dayon gamita ang usa ka filter aron i-zero down ang mga detalye sa usa ka partikular nga proseso (postgres niini nga pananglitan) sama sa mosunod:

$ sudo sysdig -r extime.scap proc.name=postgres

Kining yano nga sugo makatabang kanimo sa pag-ila sa hinay nga network I/0:

$ sudo sysdig -c netlower     

Ang sugo sa ubos makatabang kanimo sa pagpakita sa matag mensahe nga gisulat sa syslog, kung interesado ka sa mga entry sa log alang sa usa ka piho nga proseso, paghimo og trace dump ug i-filter kini sumala sa gipakita kaniadto:

$ sudo sysdig -c spy_syslog      

Mahimo nimong i-print ang bisan unsang datos nga gisulat sa bisan unsang proseso sa usa ka log file sama sa mosunod:

$ sudo sysdig -c spy_logs   

Kung ikaw adunay HTTP server sama sa Apache o Nginx nga nagdagan sa among sistema, tan-awa ang log sa mga hangyo sa server nga adunay kini nga mando:

$ sudo sysdig -c httplog    
$ sudo sysdig -c httptop   [Print Top HTTP Requests] 

Ang sugo sa ubos makapahimo kanimo sa pagtan-aw sa tanan nga mga login shell ID:

$ sudo sysdig -c list_login_shells

Katapusan apan dili labing gamay, mahimo nimong ipakita ang interactive nga kalihokan sa mga tiggamit sa sistema sama niini:

$ sudo sysdig -c spy_users

Para sa dugang nga impormasyon ug mga pananglitan sa paggamit, basaha ang sysdig ug csysdig man page:

$ man sysdig 
$ man csysdig

Reperensya: https://www.sysdig.org/

Susiha usab kining mapuslanon nga mga himan sa pagmonitor sa performance sa Linux:

  1. BCC – Dynamic Tracing Tools para sa Linux Performance Monitoring, Networking ug uban pa
  2. pyDash – Usa ka Web Based Linux Performance Monitoring Tool
  3. Perf- Usa ka Himan sa Pag-monitor ug Pagtuki sa Pagganap para sa Linux
  4. Collectl: Usa ka Advanced All-in-One Performance Monitoring Tool para sa Linux
  5. Netdata – Usa ka Real-Time nga Himan sa Pag-monitor sa Performance para sa Linux Systems

Ang Sysdig naghiusa sa mga gamit gikan sa daghang mga tool sa command line ngadto sa usa ka talagsaon nga interface, sa ingon nagtugot kanimo sa pagkalot sa lawom nga bahin sa imong mga panghitabo sa sistema sa Linux aron makolekta ang mga datos, magtipig alang sa ulahi nga pag-analisar ug nagtanyag kini nga dili kapani-paniwala nga suporta sa sulud.

Aron makapangutana o makapaambit sa bisan unsang mga hunahuna bahin niini nga himan, gamita ang porma sa feedback sa ubos.