Poziom rejestrowania w języku Python można zarejestrować za pomocą logging.addLevelName
. Czy istnieje metoda uzyskania numeru logowania Python od nazwy poziomu?Rejestrowanie w języku Python - określanie numeru poziomu od nazwy
Odpowiedz
Po wywołaniu addLevelName
, uzyskany poziom traktowany jest dokładnie taka sama, jak wszystkich standardowych:
>>> import logging
>>> logging.getLevelName(10)
'DEBUG'
>>> logging.getLevelName('DEBUG')
10
>>> logging.addLevelName(15, 'DEBUGGISH')
>>> logging.getLevelName(15)
'DEBUGGISH'
>>> logging.getLevelName('DEBUGGISH')
15
Fakt getLevelName
może mapowania nazw na numery jak numery do nazw nie jest właściwie udokumentowane w Pythonie 2.x, ani nazwa nie daje żadnej wskazówki, że powinna ... ale szybkie spojrzenie na the source pokazuje, dlaczego działa.
Wygląda na udokumentowane mi. "Jeśli wartość numeryczna odpowiadająca jednemu ze zdefiniowanych poziomów jest przekazywana, zwracana jest odpowiednia reprezentacja ciągów znaków." – user2357112
@ user2357112: Jest na odwrót, że nie jest udokumentowane, gdzie przekazujesz ciąg znaków i uzyskujesz odpowiedni numer. – abarnert
Blarg, błędnie przeczytałem wiersz, który zacytowałem. – user2357112
- 1. Rejestrowanie w języku Python: wyświetlanie tylko informacji z poziomu debugowania
- 2. Rejestrowanie globalne w języku Python
- 3. Rejestrowanie w języku Python w wielu modułach
- 4. Rejestrowanie w języku Python: odwróć efekty wyłączenia()
- 5. Rejestrowanie w języku Python niczego nie wypuszcza.
- 6. Rejestrowanie w języku Python: propagowanie komunikatów o poziomie poniżej bieżącego poziomu rejestratora
- 7. Nazwy folderów w języku Python w katalogu
- 8. Określanie nazwy kolekcji w RavenDB
- 9. Określanie nazwy komputera klienta
- 10. Wyjątki od pakowania w języku Python
- 11. Określanie nazwy podprogramu kodu Perla:
- 12. Jak znaleźć nazwę kraju od nazwy miasta w języku Java?
- 13. Wieloplatformowe rozwiązanie do pobierania bieżącej nazwy logowania w języku Python
- 14. Introspekcja w języku Python: jak uzyskać nazwy metod klas?
- 15. Jak wyodrębnić liczby z nazwy pliku w języku Python?
- 16. Deskryptory w języku Python nie działają w języku Python 2.7
- 17. Określanie TSQL w zależności od najwyższej daty
- 18. języki pisane od prawej do lewej w języku Python
- 19. Szyfrowanie AES w języku Python różni się od iOS
- 20. Pakiety w języku Python?
- 21. Rejestrowanie w języku Python: jak reprezentować znaki nowej linii w pliku formatu w pliku konfiguracyjnym rejestrowania?
- 22. Zakres następnego() w języku Python
- 23. Określanie nazwy wątku podczas używania Task.StartNew
- 24. Określanie numeru portu TCP, z którym klient został powiązany.
- 25. Jak iterować elementy Queue.Queue w języku Python?
- 26. Jak odwołać nazwy kolumn, które rozpoczynają się od numeru, w data.table
- 27. Wywoływanie sconów ze skryptu w języku Python
- 28. Wątki w języku Python
- 29. iteritems w języku Python
- 30. ++ operator w języku Python
Aby się upewnić: Zauważyłeś, że [dokumentacja tej funkcji] (http://docs.python.org/2/howto/logging.html#custom-levels) mówi: "Możliwe jest zdefiniowanie własnych poziomów , ale nie powinno być konieczne, ponieważ istniejące poziomy zostały wybrane na podstawie praktycznego doświadczenia, ale jeśli jesteś przekonany, że potrzebujesz niestandardowego poziomu, należy zachować szczególną ostrożność podczas wykonywania tego ... " – abarnert