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

Feral Interactive, společnost zabývající se vydáváním počítačových her pro operační systémy macOS a Linux, nabízí své hry na Steamu vývojářům open source 3D grafické knihovny Mesa zdarma. Podmínkou je minimálně 25 commitů za posledních 5 let. Stejnou nabídku dostali vývojáři knihovny Mesa v roce 2015 od Valve. O rok dříve dostali od Valve tuto nabídku vývojáři Debianu a Ubuntu.

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

Opera 44, verze 44.0.2510.857, byla prohlášena za stabilní. Nejnovější verze tohoto webového prohlížeče je postavena na Chromiu 57. Z novinek vývojáři Opery zdůrazňují podporou Touch Baru na nejnovějších MacBoocích Pro (gif). Přehled novinek pro vývojáře na blogu Dev.Opera.

Ladislav Hagara | Komentářů: 1
včera 20:56 | Pozvánky

V úterý 28. dubna se koná další Prague Containers Meetup. Přijďte si zopakovat, jak psát kvalitnější Dockerfile a jaké novinky a ulehčení přináší ansible-container, který vám umožní spravovat celý životní cyklus vašeho kontejneru. Místo konání: Concur, Bucharova 11, Praha-Stodůlky.

little-drunk-jesus | Komentářů: 0
včera 17:00 | Nová verze

Po půl roce od vydání verze 3.22 bylo vydáno GNOME ve verzi 3.24 s kódovým názvem Portland. Vydání obsahuje 28 459 změn od přibližně 753 přispěvatelů. Z novinek lze zmínit funkci noční světlo, přepracovaná nastavení, aplikaci Recepty, zdokonalenou oblast pro upozornění nebo zdokonalený webový prohlížeč. Podrobnosti i s náhledy v poznámkách k vydání a v novinkách pro vývojáře a správce systémů.

Ladislav Hagara | Komentářů: 3
včera 11:55 | Humor

Majitelé koček by měli být obezřetní při používání desktopového prostředí XFCE ve výchozím nastavení. Používání XFCE může mást jejich kočky a vést k poškrábání displeje. Jedná se o chybu 12117. K dispozici je již patch.

Ladislav Hagara | Komentářů: 18
21.3. 15:55 | Nová verze

Byla vydána verze 7.5 sady aplikací pro SSH komunikaci OpenSSH. Jedná se o opravné vydání. Volba UsePrivilegeSeparation v sshd_config se stala zastaralou (deprecated). Upozornit lze na změnu formátu log záznamů. Novou verzi OpenSSH již nelze přeložit s upstreamem nepodporovanými verzemi OpenSSL.

Ladislav Hagara | Komentářů: 0
21.3. 14:44 | Nová verze

Byla vydána verze 5.1.0 svobodného integrovaného vývojového prostředí KDevelop. Z novinek lze zdůraznit podporu LLDB. Programátoři mohou nově ladit své programy pomocí GDB nebo LLDB MI. Jedná se o jeden z výsledků Google Summer of Code (GSoC 2016). Zdrojové kódy lze nově přímo z menu KDevelopu analyzovat pomocí nástroje Cppcheck. Přibyla podpora OpenCL. Vylepšena byla podpora programovacího jazyka Python. Přímo z menu lze měnit barevná schémata KDevelopu.

Ladislav Hagara | Komentářů: 6
21.3. 08:33 | Komunita

Emulátor terminálu Terminix byl s verzí 1.5.4 přejmenován na Tilix. Název Terminix se nelíbil společnosti Terminix, jež má registrovanou ochrannou známku Terminix. Společnost Terminix se zabývá hubením škůdců. Emulátor terminálu Tilix je naprogramován v programovacím jazyce D a využívá GtkD, což je rozšíření ke knihovně GTK+ pro D.

Ladislav Hagara | Komentářů: 7
20.3. 17:55 | Zajímavý software

Bill Zissimopoulos vydal po 16 měsících vývoje WinFsp ve verzi 2017. Jedná se o Windows File System Proxy aneb FUSE pro Windows. Díky WinFsp a SSHFS-Win si i uživatelé Windows mohou připojit vzdálené souborové systémy prostřednictvím šifrovaného spojení SSH (SSHFS). Zdrojové kódy WinFsp jsou k dispozici na GitHubu pod licencí GPLv3 [reddit].

Ladislav Hagara | Komentářů: 14
20.3. 16:44 | Pozvánky

Brněnská pobočka Red Hatu otevře opět po roce dveře studentům a všem zájemcům z řad veřejnosti. Připravena je řada přednášek, workshopů a kódovacích soutěží. Akce se koná dne 5. dubna 2017 od 13 do 19 hodin na adrese Purkyňova 111, Brno v Technologickém parku. Detaily naleznete na webu události a na Facebook stránce.

… více »
Jary | Komentářů: 2
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (14%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 914 hlasů
 Komentářů: 72, poslední 1.3. 11:16
    Rozcestník

    Dotaz: Skript na dekódování squid access.log datumu

    5.2.2007 17:02 ac
    Skript na dekódování squid access.log datumu
    Přečteno: 496×
    Udělal jsem si skript v php na dekodovani data a času s access.log logu squidu v php. Jak to napsat v bashi? |V php to při větším logu přestává fungovat, alokuje to hrozně moc paměti.
    $fp = FOpen ($filename, "rb");
    $text = FRead ($fp, FileSize ($filename));
    FClose ($fp);
    
           $patterns = array(
               "/^(.*)\.(.*) /smUe"
           );
           $replacements = array(
               "StrFTime('%d/%m/%Y %H:%M:%S', '\\1')"
           );
           $text = preg_replace($patterns,$replacements, $text);
    
    

    Odpovědi

    5.2.2007 17:30 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    cat access.log |
    cut -d. -f1 |
    while read sec; do
        date -d "19700101 00:00:00 $sec sec" "+%d/%m/%Y %H:%M:%S"
    done
    If you hold a Unix shell up to your ear, you can you hear the C.
    5.2.2007 22:49 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    No dobre no, ten cat som mohol usetrit a dat subor ako parameter cutu. Ja som to testoval na zgzipenom logu a pouzival som zcat (a nakoniec som to upravil pre publikovanie). zcut totiz neexistuje.
    If you hold a Unix shell up to your ear, you can you hear the C.
    Josef Kufner avatar 5.2.2007 17:31 Josef Kufner | skóre: 67
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    Tak ten log zpracovávej po řádcích a ne celý najednou.
    Hello world ! Segmentation fault (core dumped)
    5.2.2007 17:31 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    Alebo ten skript nespravis tak hlupo, ze si ho najprv cely nacitavas do pamate, ale budes ho citat po riadkoch a rovno spracovavat.
    If you hold a Unix shell up to your ear, you can you hear the C.
    5.2.2007 21:45 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    Třeba takhle:
    #!/usr/bin/python
    import time
    for line in file('access.log'):
        splitted = line.split()
        firsttwo = ' '.join(splitted[:2])
        text = ' '.join(splitted[2:])
        time_tuple = time.strptime(firsttwo, '%d/%m/%Y %H:%M:%S')
        print time.mktime(time_tuple), text
    
    Zpracovává to asi 10000 řádků za sekundu a paměť by to taky nějak zvlášť žrát nemělo.
    6.2.2007 10:00 ac
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    10000 řádků za sekundu je málo. Ten php skript zpracuje 50 MB soubor logu za 3 sekunkdy.
    6.2.2007 10:41 iSteve | skóre: 15 | blog: isteve
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    To je sice pekne, ale presto nepouzitelne:) Jestli chces rychlost, napis to v Ccku, pripadne Perlu atd. Jestli chces opravdu velkou rychlost, mej logy v tmpfs. Jestli chces web srajdu, napis to v PHP, ale poradne:) (Krom toho jsem si dost jistej, ze 10k radku/s byl guesstimate a ne mereni)

    Mimochodem, generovani stats pro zatizenejsi weby obvykle trva dlouho, neni uplne rozumny to mit v PHP ve chvili, kdy tam mas milion omezeni stran pameti a doby behu skriptu. Neni rozumny tyto omezeni rusit.

    Vedet jak parsovat log je dobrej zacatek, ale zkus to jeste trochu vic domyslet v sirsich souvislostech, jestli to je opravdu presne to co chces.
    6.2.2007 11:06 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    10000 řádků za sekundu je málo. Ten php skript zpracuje 50 MB soubor logu za 3 sekunkdy.
    Tak o takové rychlosti si mohu nechat jen zdát. Odhaduji, že ten tvůj padesátimegový log obsahuje půl miliónu řádků. Už pouhé volání funkce strptime() z pythonu si u mě vezme 70 mikrosekund, což samo o sobě by se natáhlo na více než půl minuty.

    Rád bych pohlédl kruté pravdě do očí - máme tak strašně odlišné počítače nebo lžou všichni, co údajně svůj web urychlili přepsáním z php do pythonu?
    6.2.2007 12:16 Semo | skóre: 44 | blog: Semo
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    Ten moj bashovy skript parsuje 740r/s. Na Athlon 3200+. Vstup je generovany a vystup ide do /dev/null, takze to ani nie je brzdene diskom.
    If you hold a Unix shell up to your ear, you can you hear the C.
    6.2.2007 14:26 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    Ach ták! Taky jste mi mohl někdo říct, jak vlastně vypadá formát toho logu a že to mám vlastně úplně blbě a tudíž mi to nemůže fungovat ;-) Tak tady je nová verze
    #!/usr/bin/env python
    import time
    for line in file('access.log'):
        sec, text = line.split(' ', 1)
        ttuple = time.localtime(float(sec))
        print time.strftime('%d/%m/%Y %H:%M:%S', ttuple), text,
    
    která zpracovává 40000 řádků za sekundu (změřeno), vypisuje vždy celý řádek logu, jen čas a datum má polidštěný formát. Padesátimegový log se zpracovává 10 sekund a líp to nedokážu.
    6.2.2007 15:25 .
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    # time perl -p -e 's/^\d+\.\d+/localtime $&/e;'< access.log > access-lidsky.log
    
    real    0m39.863s
    user    0m30.460s
    sys     0m3.120s
    
    # cat /var/log/dmesg|grep MIPS
    Calibrating delay loop... 799.53 BogoMIPS
    
    # ls -l access.log
    -rw-r-----    1 proxy    proxy    49436371 Feb  6 15:23 access.log
    
    6.2.2007 15:57 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Skript na dekódování squid access.log datumu
    Tak přece se našlo místo k optimalizaci ;-) Zkusím tedy napodobit ten perlovský kód a předpokládat, že formát data a času vyhovuje tak, jak ho vrací funkce ctime().
    #!/usr/bin/env python
    import time
    for line in file('access.log'):
        sec, text = line.split(' ', 1)
        print time.ctime(float(sec)), text,
    
    A opravdu se to tím zrychlilo:
    $ time ./readfile.py > access-lidsky.log
    
    real    0m6.020s
    user    0m5.415s
    sys     0m0.527s
    $ time perl -p -e 's/^\d+\.\d+/localtime $&/e;'< access.log > access-lidsky.log
    
    real    0m9.052s
    user    0m7.245s
    sys     0m1.725s
    
    Takže padesátimegový log se pythonem zpracuje za 6 sekund, v těsném závěsu je perl s devíti sekundami. Ale nad rychlostí toho PHP mi zůstává rozum stát.

    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.