Python Server Monitoring Script lar deg overvåke om serveren eller datamaskinen din er aktiv og kjører. Det kan vise deg hvor mye nedetid datamaskinen eller serveren din hadde. Vi bruker serverkontakter for å sjekke om den spesifikke porten på en server er åpen eller ikke, Ping-kommandoen for å overvåke en enkel vanlig datamaskin og SSL for å sjekke om den bestemte serveren krever en SSL-tilkobling eller ikke. For serverovervåking har jeg brukt Visual Studio Code Interpreter-verktøy.
Lag File Python.py
Åpne Python-tolk og opprett en ny fil med navnet Server.py og lagret den på et bestemt sted der den er lett tilgjengelig. Når filen er opprettet, kan du legge til noen importkommandoer for å importere viktige pakker som følger:
- Stikkontakt: For å koble til forskjellige servere på en bestemt stikkontakt via en bestemt port
- SSL: Påkrevd for innpakning av stikkontakten
- Dato tid: Brukes til å sjekke når serveren var nede eller aktiv
- Pickle: Brukes for å lagre historikken til datamaskinens nedetid og oppetid, samt forplante data fra kjøring til kjøring med dette programmet
Vi bruker plattform og underprosess pakker, som vil fortelle oss hvilket operativsystem vi kjører, f.eks.g., UNIX eller Windows.
Opprett en serverklasse
La oss lage en klasse som heter Server () og bygget en første metode, som er en konstruktormetode. Vi har lagt til noen attributter for serveren, f.eks.g., hvilken som helst UNIX eller vanlig datamaskin. La oss ta en titt på hver:
- Navn: spesifiser navnet på en server
- Havn: portnummeret som vi vil koble til
- Forbindelse: forteller tilkoblingstypen, e.g., SSL eller ping
- Prioritet: Fortell oss serverprioriteten, e.g., du kan angi varsler hvis du setter prioritet
- Historie: For å holde serverhistorikklisten
- Varsling: Hvis du vil sende varsler til e-posten din
Lag en metode for å sjekke tilkobling
Så for å teste serverforbindelsen har vi opprettet en annen metode i Server () -klassen som heter check_connection (). I denne metoden må vi definere tre variabler som:
- Msg: brukes til å vise en melding hvis tilkoblingen ble opprettet eller mislyktes, som opprinnelig er tom
- Suksess: brukes til å fortelle om forbindelsen er vellykket eller ikke
- Nå: får gjeldende dato og klokkeslett mens du sjekker tilkoblingen
Skriv nå koden nedenfor i samme fil, og bruk prøv uttalelse, vi sjekker forbindelsen for forskjellige serverforbindelsestyper, f.eks.g. vanlig, SSL og ping. I dette prøv uttalelse, vi har hvis uttalelse har en forbindelse av vanlig type. Det vil opprette en forbindelse med det medfølgende Navn og noen havn nummeret du oppga. Hvis forbindelsen er vellykket, vil den generere en suksessmelding, e.g., msg. Det vil snu Suksess variabel til ekte og ingen varsel vil bli sendt til e-post. Vi har annet hvis uttalelse med en annen tilkoblingstype, og i den siste if-setningen har vi en ping () funksjon kalt. I unntatt uttalelse, hvis kontakten har gått tom for tid, en forbindelse nektes eller noe annet, vil den vise en feilmelding.
På den annen side, hvis suksessstatus og varsling er Falsk, det vil endre det til ekte og send en varsling til den oppgitte e-postadressen og ring create_history () funksjon for å lage en historie.
Definer en metode for å lage historie
I create_history () metode, vi har lagt ved noen attributter med maksimum grense definert, og hvis historien grensen overstiger, det vil slett den eldre.
Definer Ping-funksjon for å koble til
De ping () funksjonen vil pinge serveren eller datamaskinen. Hvis pingen er vellykket, det vil sende ut True, og hvis tilkoblingen mislyktes, det kommer tilbake Falsk.
Lag liste over servere
Nå må vi sørge for at vi kjører hovedprogram. De Hvis-uttalelse vil sjekke om det er hovedprogrammet eller ikke. De prøv uttalelse vil laste serveren syltetøyfil hvis den allerede eksisterer. Hvis den ikke eksisterer, kan den unntatt uttalelse vil få en helhet ny liste av servere. For noen av serverne, tilkoblinger vil være sjekket og historikken vil bli lagret. På den annen side må vi lagre våre data til sylteagurk fil bruker dump uttalelse.
Nedenstående utdata vises når du kjører denne filen.
Lag fil for å legge til informasjon
Opprett en ny fil med navnet legge til.py og import pickle pakke og klasse Server fra den gamle filen Server.py. Denne filen åpner syltefilen og vil be deg om å legge til litt mer informasjon om serveren, ettersom koden er vist nedenfor.
Når du kjører denne filen, får du utdataene nedenfor, og den vil be deg om å legge til servernavn, port, pingtype og prioritet.
Mens du kjører serveren.py-fil igjen, vil du få informasjon om den gamle serveren, samt historikken til den nye serveren du har oppgitt i bildet ovenfor.
Opprett fil for Gmail-varsler
Opprett nå en ny fil med navnet gmail.py og importer noen pakker som kreves. Opprett deretter en metode som heter e-postvarsel () som skaper en varsling å sende på e-post mens du gir e-post og passord informasjon.
Gå nå til Server.py-fil og importer e-postvarsel () metode fra gmail.py-fil.
Du kan legge til din epostadresse der det kreves i koden. Kjør nå Server.py fil og sjekk utdataene som vises i terminalen til Python-tolk.
Lag en fil for å få statistikk
Nå må du skape en annen python-fil med navnet get_stats.py i samme katalog. Denne filen har importert Serverklasse fra Server.py fil. Koden som er skrevet nedenfor, ser på pickle-filen vår, som er lastet inn, og skrive ut historien til hver server og hvor mye den bestemte serveren har oppetid.
Når du kjører denne filen, vil du se en total historikk for hver server og deres oppetid også.
Konklusjon
Vi har vellykket prøvd og lært Python-serverovervåkningsskriptet i Visual Studio Code-tolk for å få informasjon om flere servere.