abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 9
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 744 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Monitorovanie kratkych procesov

    Tombik avatar 16.5.2012 09:52 Tombik | skóre: 12
    Monitorovanie kratkych procesov
    Přečteno: 184×
    Potrebujem monitorovat php-cgi procesy, ktore sa spustaju pod jednotlivym uzivatelom vzdy ked niekto nacitava jeho web. Tieto procesy vacsinov rychlo vzniknu vytvoria nejaky kratkodoby CPU load (samozrejme zoberu aj RAM...) a potom zaniknu.

    Potrebujem, aby napriklad kazdych 10 minut mi skript spravil report o tom kolko php-cgi procesov, ktorych uzivatelov bolo behom tychto 10 minut spustane a aky vytvorili CPU load. Da sa nejako spravit, ze vzdy ked vznikne novy php-cgi proces tak to zaroven spusti nejaky moj skript? Alebo ako inac by som mohol postupovat?

    Za kazdy napad budem velmi vdacny. Skusal som hladat rozne monitorovacie nastroje, ale na moj ucel som nic nenasiel. Mam naprogramovane nieco vlastne, ale to len kontroluje aktualny CPU load vzdy ked sa skript spusti z cronu. Jednoducho parsuje data z ps. Toto samozrejme nestaci.

    Dakujem

    Řešení dotazu:


    Odpovědi

    16.5.2012 10:03 jkhkjhkhj
    Rozbalit Rozbalit vše Re: Monitorovanie kratkych procesov
    http://www.gnu.org/software/acct/
    Řešení 1× (Tombik (tazatel))
    16.5.2012 10:41 chochi | skóre: 29 | Praha
    Rozbalit Rozbalit vše Re: Monitorovanie kratkych procesov
    Na to asi byl nejvhodnejsi SystemTap. Inspirovat se lze napr v prikladech. Pro zacatek napr process/forktracker.stp, process/pstrace_exec.stp. Pak lze nastavit dalsi skript ktery se povesi na vystup SystemTapu a reaguje na udalosti.
    Pri konci procesu pak nejak zjistit kolik zabral casu (neco jako je v /proc/[pid]/stat - to by SystemTap mohl taky umet, ale je to na delsi zkoumani. Highlevel bych to videl takhle - v kprocess.exec_complete si vyfiltrovat a zapamatovat potrebne procesy (vcetene casu startu); v kprocess.exit zjistit zda konci zapamatovany proces, zjistit jeho utime a vypsat ho spolecne s rozdilem od casu kprocess.exec_complete - tim se pak da toho dost zjistit.
    Jelikoz to je povesene na vytvareni / ruseni procesu tak by to snad ani nemuselo brat tolik vykonu.
    Docela zajimave vypada tohle http://people.redhat.com/berrange/systemtap/process-files/process-files.stap
    Tombik avatar 16.5.2012 11:56 Tombik | skóre: 12
    Rozbalit Rozbalit vše Re: Monitorovanie kratkych procesov
    Diky za odpoved idem sa na to pozriet a vyskusat to.
    Řešení 1× (Tombik (tazatel))
    16.5.2012 12:05 chochi | skóre: 29 | Praha
    Rozbalit Rozbalit vše Re: Monitorovanie kratkych procesov
    Coz takhle: process-files.stap:
    global pids
    
    function get_usertime:long() %{
      THIS->__retvalue = current->utime + current->signal->utime;
    %}
    
    function proc:string() {
      return sprintf("%d (%s)", pid(), execname())
    }
    
    probe syscall.fork.return {
      printf("%s fork   : %d\n", proc(), $return)
    }
    
    probe syscall.execve {
      printf("%s execve :%s\n",proc(), kernel_string($filename))
      pids[pid()] = gettimeofday_ms()
    }
    
    
    probe syscall.exit {
      if (pids[pid()] != 0) {
        printf("%s exit  : utime=%d rtime=%d\n", proc(), get_usertime(), gettimeofday_ms() - pids[pid()])
        pids[pid()] = 0
      } else {
        printf("%s exit  : utime=%d rtime=unknown\n", proc(), get_usertime())
      }
    }
    
    Spusteni: stap process-files.stap -g Priklad vystupu:
    14 (kthread) fork   : 7686
    7686 (kstopmachine) exit  : utime=0 rtime=unknown
    14 (kthread) fork   : 7687
    7687 (kstopmachine) exit  : utime=0 rtime=unknown
    14 (kthread) fork   : 7688
    7688 (kstopmachine) exit  : utime=0 rtime=unknown
    7668 (bash) exit  : utime=4919 rtime=unknown
    6426 (bash) fork   : 7689
    7689 (bash) execve :/bin/cat
    7689 (cat) exit  : utime=0 rtime=1912
    6426 (bash) fork   : 7690
    7690 (bash) execve :/bin/bash
    7690 (bash) exit  : utime=3680 rtime=3341
    7680 (stapio) exit  : utime=0 rtime=unknown
    
    Kde utime je klasicky user time a rtime je real-time (celkovy cas behu programu). Neni problem pridelat system-time. Procesy s rtime=unknown byl spusteni pred zacatkem behu skriptu.
    Napr cat bezel 1912ms a spotreboval 0ms, tudiz prumerne vytezoval procesor na 0% po dobu 1912ms; bash bezel 3341ms a spotreboval 3680ms, tudiz prumerne vytezoval procesor na 100% po dobu 3341ms (tady netusim proc rtime < utime, ale tech par ms pujde snad zanedbat)
    Tombik avatar 16.5.2012 13:26 Tombik | skóre: 12
    Rozbalit Rozbalit vše Re: Monitorovanie kratkych procesov
    Diky toto presne vyzera ako to co potrebujem. Idem s tym dalej experimentovat :)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.