Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Aplikace Identity a ověřování Microsoftu (MSAL) generují zprávy protokolu, které můžou pomoct s diagnostikou problémů. Aplikace může nakonfigurovat protokolování s několika řádky kódu a mít vlastní kontrolu nad úrovní podrobností a to, jestli se protokolují osobní a organizační data. Doporučujeme vytvořit implementaci protokolování MSAL a poskytnout uživatelům způsob odesílání protokolů, když mají problémy s ověřováním.
Protokolování v Python MSAL je navržené tak, aby používalo standardní mechanismy protokolování Python, takže všechny předchozí znalosti protokolování Python platí pro Python MSAL.
- Ve výchozím nastavení je protokolování v libovolném Python skriptu vypnuté. Pokud chcete povolit protokolování ladění pro všechny moduly v celém skriptu Python, použijte
logging.basicConfig(level=logging.DEBUG). - Většina protokolů Python MSAL je již na úrovni ladění, která by byla ve výchozím nastavení vypnutá. Pokud ale chcete zapnout protokolování ladicích informací kvůli ladění ostatních modulů ve skriptu v Pythonu, a chcete proto potlačit protokolování MSAL, jednoduše vypněte logger používaný knihovnou MSAL Python:
logging.getLogger("msal").setLevel(logging.WARN). - MSAL Python nezapisuje identifikovatelné osobní údaje (PII). Takže v MSAL pro Python není ani přepínač pro zapnutí protokolování PII. Vývojáři aplikací můžou dál používat standardní Python protokolování k protokolování libovolného obsahu. Aplikace tak přebírá odpovědnost za bezpečné zpracování vysoce citlivých dat a dodržování zákonných požadavků.
Úrovně protokolování
MSAL poskytuje několik úrovní podrobností protokolování:
-
LogAlways: Na této úrovni protokolu není provedeno žádné filtrování úrovní. Protokolové zprávy všech úrovní budou zaznamenávány. -
Critical: Protokoly, které popisují neobnovitelné zhroucení aplikace nebo systému nebo katastrofické selhání vyžadující okamžitou pozornost. -
Error: Označuje, že se něco nepovedlo a vygenerovala se chyba. Používá se k ladění a identifikaci problémů. -
Warning: Nemusí se nutně jednat o chybu nebo selhání, ale jsou určené pro diagnostiku a určení problémů. -
Informational: MSAL bude protokolovat události určené pro informační účely, které nemusí být nutně určeny pro ladění. -
Verbose(Výchozí): MSAL zaznamenává úplné podrobnosti o chování knihovny.
Note
Ne všechny úrovně protokolů jsou k dispozici pro všechny knihovny MSAL.
Osobní a organizační data
Ve výchozím nastavení protokolovací nástroj MSAL nezachytává žádná vysoce citlivá osobní ani organizační data. Knihovna nabízí možnost povolit protokolování osobních a organizačních dat, pokud se tak rozhodnete.
Následující části obsahují další podrobnosti o protokolování chyb MSAL pro vaši aplikaci.
MSAL pro protokolování Python
Protokolování v MSAL pro Python využívá modul protokolování v Python standardní knihovně. Protokolování MSAL můžete nakonfigurovat následujícím způsobem (a zobrazit ho v akci v username_password_sample):
Povolte protokolování ladění pro všechny moduly
Ve výchozím nastavení je protokolování v libovolném Python skriptu vypnuté. Pokud chcete povolit podrobné protokolování pro všechny moduly Python ve skriptu, použijte logging.basicConfig s úrovní logging.DEBUG:
import logging
logging.basicConfig(level=logging.DEBUG)
Tím se vytisknou všechny zprávy protokolu zadané modulu protokolování do standardního výstupu.
Konfigurace úrovně protokolování MSAL
Úroveň protokolování poskytovatele protokolování MSAL pro Python můžete nakonfigurovat pomocí metody logging.getLogger() se jménem protokolovacího nástroje "msal":
import logging
logging.getLogger("msal").setLevel(logging.WARN)
Konfigurace protokolování MSAL pomocí Aplikace Azure Insights
Záznamy Pythonu jsou předávány obslužné rutině protokolování, kterou je ve výchozím nastavení StreamHandler. K odesílání protokolů MSAL do Application Insights pomocí klíče instrumentace použijte AzureLogHandler, kterou poskytuje knihovna opencensus-ext-azure.
Chcete-li nainstalovat, opencensus-ext-azure přidejte balíček opencensus-ext-azure z PyPI mezi závislosti nebo použijte pip install:
pip install opencensus-ext-azure
Pak změňte výchozí obslužný program poskytovatele protokolování "msal" na instanci AzureLogHandler s instrumentačním klíčem nastaveným v proměnné prostředí APP_INSIGHTS_KEY:
import logging
import os
from opencensus.ext.azure.log_exporter import AzureLogHandler
APP_INSIGHTS_KEY = os.getenv('APP_INSIGHTS_KEY')
logging.getLogger("msal").addHandler(AzureLogHandler(connection_string='InstrumentationKey={0}'.format(APP_INSIGHTS_KEY)))
Osobní a organizační data v Python
MSAL pro Python nezapisuje osobní údaje ani data organizace. Není k dispozici žádná vlastnost, která by zapnula nebo vypnula protokolování osobních dat nebo dat organizace.
Standardní protokolování Python můžete použít k protokolování podle potřeby, ale zodpovídáte za bezpečné zpracování citlivých dat a dodržování zákonných požadavků.
Další informace o protokolování v Python najdete v tématu protokolování Python: postupy.