Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Petua Pemantauan dalam Python

Petua Pemantauan dalam Python

王林
王林asal
2023-06-10 08:40:531083semak imbas

Python ialah bahasa pengaturcaraan yang berkuasa, mudah dipelajari dan mudah digunakan yang telah menjadi alat standard dalam bidang sains data dan pembelajaran mesin. Dengan peningkatan pengkomputeran awan, senario aplikasi Python menjadi semakin meluas, dan ia sering digunakan dalam bidang seperti pengurusan pelayan, pemantauan rangkaian dan keselamatan data. Dalam senario ini, kemahiran memantau adalah penting. Artikel ini akan memperkenalkan teknik pemantauan dalam Python dari aspek berikut.

Pemantauan Log

Log ialah alat penting untuk merekod tingkah laku sistem dan asas penting untuk menyelesaikan masalah. Modul pengelogan terbina dalam Python boleh membantu kami melaksanakan fungsi pengurusan log yang kompleks, seperti menetapkan log pada tahap yang berbeza, menulis log ke fail atau pangkalan data, mencetuskan penggera pada masa atau senario tertentu, dsb.

Sebagai contoh, kita boleh menggunakan kod berikut untuk melaksanakan program pengelogan mudah:

import logging

logging.basicConfig(filename='example.log', level=logging.DEBUG)

logging.debug('This is a debug message')
logging.info('This is an info message')
logging.warning('This is a warning message')
logging.error('This is an error message')
logging.critical('This is a critical message')

Selepas menjalankan program ini, fail bernama example.log akan dijana dalam direktori semasa, Dan tulis lima peringkat maklumat log ke dalamnya. Kami boleh menyesuaikan format, tahap dan destinasi keluaran pengelogan dengan mengubah suai parameter logging.basicConfig.

Pemantauan Rangkaian

Rangkaian adalah teras komputer moden dan bahagian yang paling terdedah. Modul soket Python boleh membantu kami melaksanakan fungsi seperti menghantar dan menerima data melalui rangkaian, mencari maklumat hos dan mengawal trafik rangkaian.

Mengambil imbasan port rangkaian sebagai contoh, kita boleh menggunakan kod berikut untuk mengimbas semua port terbuka hos sasaran:

import socket

host = '127.0.0.1'
ports = range(1, 1025)

for port in ports:
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    try:
        s.connect((host, port))
        print(f"Port {port} is open")
    except:
        pass
    s.close()

Atur cara menggunakan socket.socket untuk mencipta soket TCP/IP dan cuba Sambung ke setiap port hos sasaran. Jika sambungan berjaya, ini bermakna port terbuka dan kami boleh menambahkannya ke senarai hasil.

Pemantauan Proses

Dalam bidang pengurusan dan keselamatan pelayan, pemantauan proses adalah tugas yang penting. Modul os dan modul psutil Python menyediakan antara muka akses dan kawalan kepada proses sistem, yang boleh membantu kami mendapatkan, mengubah suai dan menamatkan maklumat proses.

Mengambil pertanyaan status proses sebagai contoh, kita boleh menggunakan kod berikut untuk mendapatkan status proses PID yang ditentukan:

import psutil

pid = 1234
p = psutil.Process(pid)
print(p.name())
print(p.status())
print(p.cpu_percent())

Program ini menggunakan psutil.Process untuk mendapatkan objek proses bagi PID yang ditentukan dan mengeluarkan nama prosesnya, status dan penggunaan CPU serta maklumat lain.

Pemantauan Tingkah Laku

Dalam bidang analisis data dan pembelajaran mesin, pemantauan tingkah laku ialah tugas penting yang boleh membantu kami menemui dan meramalkan kelakuan pengguna, kelakuan tidak normal, kelakuan penipuan, dsb. Modul panda Python dan modul scikit-learn menyediakan pelbagai pemprosesan data dan alatan pembelajaran mesin yang boleh membantu kami dengan pengumpulan data, pengekstrakan ciri, latihan model dan ramalan.

Mengambil pengesanan anomali sebagai contoh, kita boleh menggunakan kod berikut untuk mengenal pasti sampel tidak normal dalam set data:

import pandas as pd
from sklearn.ensemble import IsolationForest

data = pd.read_csv('dataset.csv')
X = data.drop('label', axis=1)
clf = IsolationForest(random_state=42)
clf.fit(X)
pred = clf.predict(X)
print(sum(pred == -1))

Atur cara menggunakan pd.read_csv untuk membaca set data dalam format CSV dan kecualikan lajur label di luar ciri. Selepas itu, gunakan IsolationForest untuk melatih model pengesanan anomali dan membuat ramalan pada keseluruhan set data. Akhir sekali, keluarkan bilangan semua sampel yang tidak normal.

Ringkasan

Sebagai alat pengaturcaraan yang sangat baik, Python telah digunakan secara meluas dalam pemantauan, pengurusan pelayan, keselamatan, sains data dan pembelajaran mesin serta bidang lain. Artikel ini memperkenalkan pelbagai teknik pemantauan dalam Python, termasuk pemantauan log, pemantauan rangkaian, pemantauan proses dan pemantauan tingkah laku. Saya berharap pembaca dapat memahami prinsip asas dan kaedah pelaksanaan teknik ini melalui pengenalan artikel ini, dan menggunakannya dalam kerja sebenar untuk meningkatkan tahap pengaturcaraan dan kecekapan kerja mereka.

Atas ialah kandungan terperinci Petua Pemantauan dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn