Jack Dorsey představil (𝕏, Nostr) svůj nový projekt bitchat. Jedná se o bezpečnou decentralizovanou peer-to-peer aplikaci pro zasílání zpráv bez potřeby internetu, serverů a telefonních čísel. Využívá se Bluetooth Mesh Network. Detaily v technické dokumentaci. Zdrojové kódy jsou k dispozici pod licencí Unlicense.
Hudební přehrávač Amarok byl vydán v nové verzi 3.3 "Far Above the Clouds". Nově je postaven na Qt6/KF6 a využívá GStreamer místo Phononu.
Společnost IBM představila novou generaci svých serverů: IBM Power11.
Multiplatformní digitální pracovní stanice pro práci s audiem Ardour byla postavena na GTK2. Vývojáři neplánovali její portaci na GTK3 nebo GTK4. Naopak, v lednu loňského roku si vytvořili vlastní fork GTK2 s názvem YTK. Ten v únoru letošního roku přestal být volitelným a nově byla zcela odstraněna podpora GTK2.
Byla vydána nová verze 6.4 linuxové distribuce Parrot OS (Wikipedie). Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Společnost initMAX pořádá sérii bezplatných webinářů věnovaných novému Zabbixu 7.4. Podrobnosti a registrace na webu initMAX.
… více »Byla vydána verze 7.0 open source platformy pro správu vlastního cloudu OpenNebula (Wikipedie). Kódový název nové verze je Phoenix. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.
E-mailový klient Thunderbird byl vydán ve verzi 140.0 ESR „Eclipse“. Jde o vydání s dlouhodobou podporou, shrnující novinky v upozorněních, vzhledu, správě složek a správě účtů. Pozor, nezaměňovat s průběžným vydáním 140.0, které bylo dostupné o týden dříve.
Organizace Video Games Europe reprezentující vydavatele počítačových her publikovala prohlášení k občanské iniciativě Stop Destroying Videogames.
Společnost Raspberry Pi nově nabzí Raspberry Pi Camera Module 3 Sensor Assembly, tj. samostatné senzorové moduly z Raspberry Pi Camera Module 3.
#app1.py
import logging
logger = logging.getLogger('app1')
#mod1.py
import logging
logger = logging.getLogger('app1.mod1')
S vystupem jsem nyni spokojen, rad bych ale pridal druhou aplikaci vyuzivajici stejny modul a tady narazim na problem.
Rad bych aby se prvni cast parametru v getLogger menila podle toho z jake aplikace je modul importovan. Nejak se mi nedari zjistit jak na to. Existuje nejaky cisty zpusob jak dosahnout pozadovaneho vysledku?
Řešení dotazu:
import logging
# ----- inicializace logovani pri startu app -----
formatter = logging.Formatter("%(asctime)s %(levelname)s app1.%(name)s %(message)s")
console_handler = logging.StreamHandler()
console_handler.level = logging.INFO
console_handler.formatter = formatter
root = logging.getLogger()
root.addHandler(console_handler)
root.level = logging.INFO
# ----- kdekoliv v app -----
logging.info("foo")
logger1 = logging.getLogger("logger1")
logger1.info("baz")
logger2 = logging.getLogger("logger2")
logger2.info("bar")
A na inicializaci logování je logging.config.dictConfig nebo logging.config.fileConfig, takže by odpadnul kód v ukázce a stačilo by dvě řádky:
import logging
logging.lileConfig('/soubor/s/konfiguraci.ini')
Na stávající kód nebude pořeba sáhnout a vše bude jen konfigurace aplikace a její inicializace při startu.
Tiskni
Sdílej: