Logowanie Python Syslog

Logowanie Python Syslog
Funkcja Pythona „Logowanie syslogu” może sprawić, że każdy rejestrator systemów odbiera komunikat szeregowy z tej funkcji. Gdy oprogramowanie jest w pozycji działającej, rejestrator utrzymuje funkcjonujące wydarzenia. Oto alternatywny argument nacisk w Syslog, który odpowiada rejestrowaniu informacji o zestawach jako głównym priorytecie. Zasadniczo możemy powiedzieć, że logowanie syslog w Python pozwala komponentom sieciowym połączyć się z hostem rejestrowanym za pomocą wspólnego formatu wiadomości. Został opracowany i utworzony przede wszystkim, aby umożliwić urządzenia do monitorowania sieci.

Systemy może być używane interfejs syslog do przesyłania komunikatów ostrzegawczych w różnych odrębnych okolicznościach. Kluczowa jest faktyczna metoda monitorowania działań podjętych przez oprogramowanie do tworzenia, działania i diagnozy rejestrowania oprogramowania. Istnieje stosunkowo niewiele szans, że znaleźlibyśmy źródło problemu, jeśli nasze oprogramowanie się nie powiedzie i nie utrzymujemy wystarczających rekordów rejestrowania. Niektórzy programiści wykorzystują ideę opublikowania zdań, aby sprawdzić, czy zostały one zaimplementowane osobno, czy też zawarł błąd. Jednak drukowanie nie jest mądrym ruchem. W przypadku podstawowych skryptów może to być odpowiedź na nasze problemy. Jednak rozwiązanie drukowania nie będzie w przypadku złożonych programów.

Jak zaimplementować rejestrowanie syslog w Python

Ustanowiony język programowania Python ma pakiet o nazwie Logowanie, który umożliwia publikowanie aktualizacji wiadomości statusu na plikach lub innych przepływach wyjściowych. Zapis może podać szczegóły, w której jest uruchomiona część programu, a pojawiają się problemy. Zacznijmy wdrażać kod Pythona do rejestrowania syslog, w którym bierzemy przykład, aby wyjaśnić go lepszy sposób. Nasz kod Pythona zaczyna się od importu niektórych bibliotek, w których najpierw importujemy bibliotekę „rejestrowania”, ponieważ wykonujemy zjawisko rejestrowania w naszym artykule.

Następnie importujemy „rejestrowanie.Biblioteka obsługi dla każdego przypadku, która może spowodować każdy błąd, aby mógł się z tym poradzić i rozwiązać przypadki wyjątku dotyczące błędów. Trzecia biblioteka, którą importujemy.Handlers ”, aby interakcja rejestrowania z naszym systemem operacyjnym.

W ostatniej bibliotece importujemy „formatter” z „rejestrowania” rodziny interaktywnego Pythona. Po wszystkich bibliotekach definiujemy teraz nową funkcję nazwy „Sysmain”, którą można nazwać naszą główną funkcją kodu programu. Teraz tworzymy przydział pamięci „sys_logger” i przypisujemy funkcję „rejestrowanie.getLogger () ”i daj mu instrukcję„ Najlepszy logger ”. Następnie używamy „sys_logger.setLevel (logowanie.Debug) ”, aby skonfigurować poziom systemu do interakcji z błędem rejestrowania, który występuje podczas jego procesu rejestrowania, aby poradzić sobie z tym.

Na tym etapie tworzymy teraz „sys_handler” i przypisujemy ją jako funkcję „sysloghandler ()”. Następnie podajemy ścieżkę naszego systemu wraz z niektórymi interaktywnymi plikami związanymi z loginem.

Po przypisaniu ścieżki adresów systemowych do „rejestrowania syslog” używamy „sys_logger.Funkcja addhandler () ”i wywołać funkcję„ sys_handler ”w„ sys_logger.funkcja addHandler () ”. Tworzymy nową funkcję i nazywamy ją „logging_format ()” i przypisujemy wiadomość logowania i nazwę pliku wraz z nazwą poziomu. Teraz bierzemy „sys_handler.funkcja setFormatter () ”i podaj„ logging_format ”do funkcji formattera.

Do ostatniej funkcji używamy „sys_logger.debug () ”i przyznać to jako wartość jako stwierdzenie„ Mój Python!!". Następnie wywołujemy główną funkcję za pomocą klauzuli „If” i zwracamy główną funkcję w ostatnim „sysmain ()”, aby przejść proces rejestrowania.

Kod „Logowanie syslogu” znajduje się w następujący sposób w formularzu tekstowym, aby pozostali użytkownicy mogli sami go wdrożyć:

Kod:

Rejestrowanie importu
Rejestrowanie importu.Handlery
od rejestrowania.Handlers importuje Sysloghandler
Od rejestrowania formattera importu
def sysmain ():
Sys_logger = rejestrowanie.GetLogger („Najlepszy logger”)
Sys_logger.setLevel (logowanie.ODPLUSKWIĆ)
Sys_handler = sysloghandler (obiekt = sysloghandler.Log_daemon,
adres = '/Users/aqsayasin')
Sys_logger.Addhandler (sys_handler)
logging_format = '[%(poziomeName) s]%(nazwa pliku) S:%(FUNCNAME) S:%(lineno) d \
„%(wiadomość) s” ''
Sys_handler.setFormatter (formatter (fmt = logging_format)))
Sys_logger.debugowanie („mój Python!!')
Jeśli __name__ == '__main__':
Sysmain ()

Po ukończeniu kodu przyglądamy się rejestrowaniu systemu, który wyświetla obecną datę „listopada” jako miesiąc, „21” jako datę i „01:05:12” jako czas naszego systemu operacyjnego. Nasza nazwa użytkownika systemu, „Aqsayasin”, jest również dostarczana z szczegółem Python „9851” i debuguj szczegóły wzdłuż „syslog” na głównej funkcji z naszą instrukcją wydrukowaną na syslog, którym jest „mój Python!!".

Pierwszy wiersz tego programu jest podobny do tego, który uruchamiamy wcześniej w kodzie Python. Eksportuje ten format wraz z bibliotekami „rejestrowanie”, „obsługi” i „sysloghandler”. Teraz dodajemy podobny „sysloghandler”, który dodaliśmy wcześniej w kodzie wewnątrz funkcji „main ()” po utworzeniu rejestratora i ustawieniu jego poziomu domyślnego na „debugowanie”. Następnie piszemy formatter i dołączamy go do logera. Widzimy, w jaki sposób część ogólnych funkcji korporacyjnych, kontrastując to powiadomienie z tekstem formatowym. Ciąg wyświetla „Nazwa poziomu”, „nazwa pliku”, „FuncName”, „Lineno” i „Message” w rejestrowaniu ekranu:

Wiadomość jest wyświetlana jako nasza dostarczona instrukcja pokazuje w „Syslog.główna funkcja PY ”,„ My Python!!”Wraz z powrót funkcji„ sysmain () ”.

Na koniec mamy „Nazwa poziomu” wyrównana do „debugowania” w systemie dziennika. Możemy zobaczyć ścieżkę, nazwę funkcji i numer linii w pozostałych częściach wiadomości, która pozwala nam dokładnie zrozumieć, gdzie powstaje komunikat dziennika. Poziom wiadomości jest wskazany na początku czegoś takiego jak litera według nawiasów kwadratowych. „[Debugowanie]” tekstowego wyrażenia poziomu wiadomości rejestrowania jest zastępowane „[%(poziomeName) s]”.

Teraz spróbujmy zaimplementować kolejny przykład tematu Python „Logowanie syslogu”, importując trzy biblioteki, których użyliśmy w poprzednich przykładach, które „rejestrowanie”, „logowanie.przewodnik ”i„ Sys ”. Po uzyskaniu tych trzech bibliotek tworzymy funkcję „sys_logger” i przypisujemy „rejestrowanie.funkcja getLogger () ”. Druga funkcja „sys_logger.Funkcja setlevel () ”zapewnia„ rejestrowanie.Informacje ”polecenie w nim.

Następnie przypisujemy adres rejestrowania naszego lokalnego adresu hosta, który jest „9238” do nowej funkcji utworzonej, która jest „sysloggingiem”. Następnie nazywamy „sys_logger.Funkcja addHandler () ”dla przypadków obsługi wyjątków, które występują w„ syslogowaniu ”. Na koniec używamy funkcji „print ()”, aby wyświetlić wynik rejestrowania funkcji i wywołać „sys_logger.Funkcja obsługi ”w funkcji„ print () ”.

Drugi przykład „rejestrowania syslogu”, który zaimplementowaliśmy w Pythonie, jest podany w formie tekstowej:

Kod:

Rejestrowanie importu
Rejestrowanie importu.Handlery
Import Sys
Sys_logger = rejestrowanie.getLogger ()
Sys_logger.setLevel (logowanie.Informacje)
syslogging = logowanie.Handlery.SYSLOGHADLER (Adres = („LocalHost”, 9238))
Sys_logger.Addhandler (syslogging)
Drukuj (sys_logger.Handlers)

Po zakończeniu kodu zwraca z komunikatem wierności wyjściowych, gdy program kończy instrukcję, aby wylogować się z uruchomionym programem. Jeśli kod się zatrzyma i chcemy go kontynuować, możemy uruchomić inny dziennik systemu. Jeśli chcemy wyjść z aplikacji konsoli, naciśniemy przycisk „Enter”, a system loguje się z bieżącej konsoli aplikacji.

Wniosek

W tym artykule omówiliśmy temat „rejestrowania syslogu” języka Pythona, wdrażając przykłady kodu i niezbędne istotne wyjaśnienia. Zgodnie z najlepszą wiedzą zachowaliśmy dwa główne przykłady tego tematu. Pierwszy przykład dokonał pewnej obsługi debugowania dla dziennika systemu, która jest podana wraz ze szczegółami nazwy funkcji i ścieżką użytkownika. Podczas gdy drugi exmples używał koncepcji zjawiska wychodzenia z pliku konsoli i naciśnięcia przycisku „Enter”, aby zarejestrować rejestrowanie systemu.