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 13:00 | Komunita

    Dnes a zítra probíhají Arduino Days 2026. Na programu je řada zajímavých přednášek. Sledovat je lze od 17:00 na YouTube. Zúčastnit se lze i lokálních akcí. Dnes v Poličce v městské knihovně a zítra v Praze na Matfyzu.

    Ladislav Hagara | Komentářů: 1
    dnes 12:11 | Nová verze

    Byla vydána beta verze Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.04 LTS mělo vyjít 23. dubna 2026.

    Ladislav Hagara | Komentářů: 1
    dnes 02:22 | Komunita Ladislav Hagara | Komentářů: 7
    včera 23:22 | Komunita

    Ubuntu plánuje v budoucích verzích nahradit tradiční nástroje pro synchronizaci času (chrony, linuxptp a gpsd) novým, v Rustu napsaným ntpd-rs, který nabídne vyšší bezpečnost a stabilitu.

    Ladislav Hagara | Komentářů: 4
    včera 22:33 | Nová verze

    Byla vydána nová verze 7.6 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Správce hesel KeePassXC byl nahrazen správcem hesel GNOME Secrets. Bitcoinová peněženka Electrum byla povýšena na verzi 4.7.0. Tor Browser byl povýšen na verzi 15.0.8. Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 1
    včera 11:33 | Zajímavý článek

    Chris Down v obsáhlém článku „vyvrací mýty o zswap a zram“, vysvětluje, co vlastně dělají a jaké jsou mezi nimi rozdíly. Doporučuje vyhýbat se zram na serveru a bez OOM.

    |🇵🇸 | Komentářů: 1
    včera 11:22 | IT novinky

    Porota v Los Angeles shledala firmy Google a Meta odpovědnými v přelomovém soudním sporu, který se týká závislosti na sociálních sítích; firmy musí zaplatit odškodné tři miliony dolarů (63,4 milionu Kč). Společnosti, které s verdiktem nesouhlasí, čelily obvinění, že své sociální sítě a platformy záměrně navrhly tak, aby si na nich děti vypěstovaly závislost. Porota došla k závěru, že technologické společnosti při navrhování a

    … více »
    Ladislav Hagara | Komentářů: 12
    25.3. 19:11 | Komunita

    Jelikož vývojáři editorů Vim a Neovim začali při vývoji využívat LLM, Drew DeVault se rozhodl forknout Vim a vytvořil projekt Vim Classic. Vychází z Vimu 8.2.0148, tj. těsně před zavedením Vim9 skriptování.

    Ladislav Hagara | Komentářů: 6
    25.3. 16:11 | Nová verze

    Byla vydána nová verze 0.56 open source počítačové hry Unvanquished (Wikipedie), forku počítačové hry Tremulous. Instalovat ji lze také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    25.3. 14:11 | Nová verze

    FreeCAD (Wikipedie), tj. svobodný multiplatformní parametrický 3D CAD, byl vydán ve verzi 1.1 (YouTube). Po roce a čtyřech měsících od předchozí verze 1.0. Přehled novinek i s náhledy v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 4
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (30%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1163 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Dotaz: Zmražení pythoního procesu (á la pythoní "coredump")

    limit_false avatar 6.9.2009 00:21 limit_false | skóre: 23 | blog: limit_false
    Zmražení pythoního procesu (á la pythoní "coredump")
    Přečteno: 287×

    Je nějak možné zmrazit pythoní proces a pak ho post-mortem "debugovat", podívat se na stack trace, parametry volání, lokální proměnné (vrátane nadřazených framů)? Něco podobného jako když  v C/C++ programu zavoláte abort(), ono to hodí coredump, z kterého lze zjistit nějaké informace via gdb.

    Jde o tohle: na jediném stroji občas nastane podivná race condition (jinde nenastává), kterou je velmi těžké zreplikovat. Je sice možné zjistit, že nastala, zalogovat, jenže to nestačí.

    Nápady k tomu jsem měl zatím jenom dva, ale žádný není ideální:

    1. přeložit python s ladícími symboly, při zjištení chyby zavolat os.abort(), co vyhodí coredump, ten pak prohlédnout s gdb
    2. při porušení nějaké "podmínky zmysluplnosti" se pythoní proces připojí na remote debugger, kde bude čekat až se na to člověk podívá

    První možnost je příliš low-level (zjišťování jaký pythoní kód se vlastně vykonává).

    Daný race-condition nastane cca 10-20 krát za den, při druhé možnosti buď člověk musí čekat nebo jich má mnoho.

    Víte o nejakém jednodušším řešení?

    When people want prime order group, give them prime order group.

    Odpovědi

    7.9.2009 07:42 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Zmražení pythoního procesu (á la pythoní "coredump")

    V podobných situacích občas může pomoct pustit interpret pythonu s parametrem -i (interactive). Když program skončí, pustí se pythonní konzole a je možné se v tom rýpat, protože všechny objekty zůstanou beze změny.

    Ale to asi znáš.

    Pavel Stárek avatar 7.9.2009 15:23 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Zmražení pythoního procesu (á la pythoní "coredump")
    Tady se píše že: pdb.py can also be invoked as a script to debug other scripts. For example:
    python -m pdb myscript.py
    
    a dále se píše že:

    When invoked as a script, pdb will automatically enter post-mortem debugging if the program being debugged exits abnormally. After post-mortem debugging (or after normal exit of the program), pdb will restart the program. Automatic restarting preserves pdb's state (such as breakpoints) and in most cases is more useful than quitting the debugger upon program's exit. New in version 2.4: Restarting post-mortem behavior added.

    Takže by to možná mohlo pomoci, ale já jsem nikdy takhle neladil, to si radši přidám nějaký ten print navíc :-)
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    limit_false avatar 7.9.2009 22:45 limit_false | skóre: 23 | blog: limit_false
    Rozbalit Rozbalit vše Re: Zmražení pythoního procesu (á la pythoní "coredump")

    Tohle jde AFAIK s kazdym trocha lepsim pythonim debuggerem. Problematicky skript je spusten automaticky cronem stovky krat denne, co dela cekani na vyskyt race condition neprijemny. Zatim jsem pridal dalsi logging hlasky aby bylo aspon videt kdy chyba nastane prvne (jestli to dela C/C++ kod nebo pythoni kod).

    Jinak zatim jsem zjistil, ze dumpnutni kompletniho stavu pythoniho procesu zadny nastroj nedokaze (vyjma coredump).

    Po kratkem pruzkumu jsem zjistil, ze by slo naprogramovat nastroj co by to umel jako nadstavbu GDB. Nejake info:

    Bohuzel je to prace tak na mesic, co nemam.

    Ale nasel jsem jeste CryoPID projekt, ktery pry umi zmrazit proces. Tak to vyzkousim a uvidim.

    Treti moznost by byla udelat si jednoducheho daemona , ktereho by procesy zavolaly, kdyby zjistili poruseni invariantu. Ten by je uspal (procesy by cekaly na odpoved). Daemon by se ovladal z command line, mohl by "odekmknout" uspany proces a hodit ho remote debuggeru, nechat pokracovat, atd.

    Ja nejvic doufam ze CryoPID bude fungovat :-) To by se hodilo i v jinych pripadech.

    When people want prime order group, give them prime order group.

    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.