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 01:55 | Komunita

    24. září 2024 budou zveřejněny zdrojové kódy přehrávače Winamp.

    Ladislav Hagara | Komentářů: 1
    včera 23:33 | Nová verze

    Google Chrome 125 byl prohlášen za stabilní. Nejnovější stabilní verze 125.0.6422.60 přináší řadu oprav a vylepšení (YouTube). Podrobný přehled v poznámkách k vydání. Opraveno bylo 9 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 21:11 | Nová verze

    Textový editor Neovim byl vydán ve verzi 0.10 (𝕏). Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Byla vydána nová verze 6.3 ž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.15.

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

    Dnes ve 12:00 byla spuštěna první aukce domén .CZ. Zatím největší zájem je o dro.cz, kachnicka.cz, octavie.cz, uvycepu.cz a vnady.cz [𝕏].

    Ladislav Hagara | Komentářů: 2
    včera 13:22 | Nová verze

    JackTrip byl vydán ve verzi 2.3.0. Jedná se o multiplatformní open source software umožňující hudebníkům z různých částí světa společné hraní. JackTrip lze instalovat také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Pozvánky

    Patnáctý ročník ne-konference jOpenSpace se koná 4. – 6. října 2024 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytváří všichni účastníci, se skládá z desetiminutových

    … více »
    Zdenek H. | Komentářů: 0
    včera 03:11 | Nová verze

    Program pro generování 3D lidských postav MakeHuman (Wikipedie, GitHub) byl vydán ve verzi 1.3.0. Hlavní novinkou je výběr tvaru těla (body shapes).

    Ladislav Hagara | Komentářů: 5
    15.5. 23:11 | Bezpečnostní upozornění

    Intel vydal 41 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20240514 mikrokódů pro své procesory řešící INTEL-SA-01051, INTEL-SA-01052 a INTEL-SA-01036.

    Ladislav Hagara | Komentářů: 0
    15.5. 16:22 | IT novinky

    Společnost Raspberry Pi patřící nadaci Raspberry Pi chystá IPO a vstup na Londýnskou burzu.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (74%)
     (5%)
     (10%)
     (10%)
    Celkem 291 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Dotaz: Jak zjistit aktuální zátěž cpu

    vogo avatar 28.10.2006 12:53 vogo | skóre: 34 | blog: "Skládat papír"
    Jak zjistit aktuální zátěž cpu
    Přečteno: 2622×
    Chtěl bych v jednom skriptu zjišťovat aktuální zátěž CPU, jak na to? Ideální formát by byl v procentech, ale klidně v čemkoli jiném co se dá dále slušně zpracovat. Co spustit aby to na standardní výstup vyplivlo jen tuto informaci?

    díky
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.

    Odpovědi

    28.10.2006 13:20 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Co si představuješ pod pojmem "aktuální zátěž CPU"? Hlavně co od té hodnoty očekáváš?
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    vogo avatar 28.10.2006 13:27 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    očekávám hodnotu která vyjadřuje vytížení CPU, kterou třeba zobrazuje gkrellm, nebo cokoli jiného co monitoruje zátěž, prostě hodnotu v procentech (nebo desetinné číslo, or some think like this) vyjadřující využití od posledního měření (?), User Kernel a Nice dohromady, nebo zvlášť - já už si to klidně sečtu :)

    Myslel jsem že to bude někde v /proc (nebo /sys?) ale nic jsem nenašel - asi neumím hledat.
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    Luboš Doležel (Doli) avatar 28.10.2006 14:29 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Je to v /proc/stat
    vogo avatar 28.10.2006 14:39 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    to je sice hezké, ale jak to z toho dostat? :)
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    28.10.2006 19:26 hanzz | skóre: 19 | blog: hanzz
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Po chvilce hledani jsem nasel tohle.. :) http://www.abclinuxu.cz/forum/show/78392#6
    28.10.2006 19:37 hanzz | skóre: 19 | blog: hanzz
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Nebo to jde vzit primo z topu, ale tam je vysledek trochu zkresleny tim, ze start topu si taky neco vezme...
    top -b -n 1 | awk '/Cpu\(s\)/ {print $2}'
    
    nebo pouzit mpstat...
    28.10.2006 21:34 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Pokud vám jde o procento non-idle stavů, bude možná jednodušší počítat to z /proc/uptime - první číslo je uptime systému v sekundách, druhé čas, po který procesor zahálel.
    28.10.2006 14:12 diverman | skóre: 32 | blog: život s tučňáčkem
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    zkus programek iostat z balicky sysstat
    deb http://ftp.cz.debian.org/debian jessie main contrib non-free
    David Watzke avatar 28.10.2006 16:09 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Tenhle démon každejch 5 minut zapíše zátěž CPU do souboru /var/log/cpuload. Mám to pro MRTG. Trochu jsem v tom hrabal, snad je to OK...
    #include <stdio.h>
    #include <stdlib.h>
    #include <signal.h>
    #include <unistd.h>
    
    struct Cpustat
    {
            unsigned long u, n, s, i, w, x, y;
    };
    
    void GetStat(Cpustat* pStat)
    {
            FILE* file = fopen("/proc/stat", "r");
            fscanf(file, "cpu %Lu %Lu %Lu %Lu %Lu %Lu %Lu", &pStat->u, &pStat->n,
    		&pStat->s, &pStat->i, &pStat->w, &pStat->x, &pStat->y);
            fclose(file);
    }
    
    void sigterm(int trm) // co delat pri SIGTERMu
    {
            unlink("/var/run/cpuload.pid");
            unlink("/var/log/cpuload");
            exit(0);
    }
    
    int main(void)
    {
            daemon(0,0); // po startu se urve od shellu
            signal(SIGTERM, sigterm);
    
            Cpustat before, now, diff;
            unsigned long total;
            float scale;
            FILE *mrtg, *pid;
    
            pid = fopen("/var/run/cpuload.pid", "w");
            fputs(pid, getpid()); // zapisem si PID
            fclose(pid);
    
            for (;;) {
                    GetStat(&before);
                    sleep(300); // 5 minut = 300
                    GetStat(&now);
    
                    diff.u = now.u - before.u;
                    diff.n = now.n - before.n;
                    diff.s = now.s - before.s;
                    diff.i = now.i - before.i;
                    diff.w = now.w - before.w;
                    diff.x = now.x - before.x;
                    diff.y = now.y - before.y;
    
                    total = diff.u+diff.n+diff.s+diff.i+diff.w+diff.x+diff.y;
                    scale = 100.0f / (float) total;
    
                    mrtg = fopen("/var/log/cpuload", "w");
                    fprintf(mrtg, "%d\n", (int) 100-diff.i*scale);
                    fclose(mrtg);
            }
    }
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    David Watzke avatar 28.10.2006 16:12 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Jen taková poznámka: zapíše tam průměr za těch 5 minut. Zátěž CPU se nedá jakoby vypsat hned, musí to být za určitou dobu...
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    David Watzke avatar 28.10.2006 18:57 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Sorry, tak tohle zrovna nejde zkompilovat. Nicméně pokud se v tom vyznáš, dá se z toho pochopit, jak se to dá spočítat...
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    vogo avatar 29.10.2006 02:00 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    tak přesně něco takového jsem měl na mysli :) super
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    Dalibor Smolík avatar 28.10.2006 19:01 Dalibor Smolík | skóre: 54 | blog: Postrehy_ze_zivota | 50°5'31.93"N,14°19'35.51"E
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    příkazem uptime
    Rozdíly v řeči a ve zvyklostech neznamenají vůbec nic, budeme-li mít stejné cíle a otevřená srdce.
    1.8.2008 16:43 bob@income.cz
    Rozbalit Rozbalit vše Re: Jak zjistit aktuální zátěž cpu
    Používám uptime, beru z něj zátěž každou minutu a ukládám ji do souboru pomocí php skriptu.

    Postup:

    1. Stáhnout php-cli (php pro příkazovou řádku), v debianu 'apt-get install php5-cli'

    2. Uložit níže uvedený skript do nového souboru cpuload, např. pomocí 'cat > /home/bob/cpuload'

    3. 'chmod +x /home/bob/cpuload'

    4. 'crontab -e', měl výsledně by vypadat takto:
    # m h  dom mon dow   command
    * * * * * /home/bob/cpuload
    No a pak už jen koukat jak přibývají řádky, třeba 'tail -fn50 /home/bob/zatez.txt'

    *********************************************
    #!/usr/bin/php
    <\?
    
    function dtu()
    {
      $temp=explode(' ', microtime());
      return date('d.m.Y G:i:s.', $temp[1]).substr($temp[0],2,6)." ";
    }
    
    function radek($n=1)
    {
      while ($n--) echo "\n";
    }
    
    
    //********************************************************************************************************//
    //********************************************************************************************************//
    //*************************** MAIN ***********************************************************************//
    //********************************************************************************************************//
    //********************************************************************************************************//
    
    radek();
    echo "prg='", $argv[0], "'\n";
    echo "dir='", getcwd(), "'\n";
    echo "arg='", $argv[1], "'\n";
    for ($i=2; $i<10; $i++) if (strlen($argv[$i])) echo "arg".$i."='", $argv[$i], "'\n"; else break;
    radek();
    
    $out=dtu();
    $eregstr_load='load average: 0.([0-9]{2})';
    $aa=exec("uptime");
    if (!ereg($eregstr_load, $aa, $pom)) $out.="Nevidim zatez, nekde je chybka :))\n";
    else $out.=sprintf("%2d%%\n", $pom[1]);
    echo $out;
    file_put_contents("/home/bob/zatezcpu.txt", $out, FILE_APPEND);
    
    \?>
    Fakt nevim jak sem dostat otazník bez \?, takže musíte ty backslashe na těch dvou místech vymazat. Jinak je to ok. Nemám rád html :))

    Enjoy!

    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.