


Bagaimana untuk melaksanakan pengelogan dan pemantauan permintaan dalam FastAPI
Cara melaksanakan pengelogan dan pemantauan permintaan dalam FastAPI
Pengenalan:
FastAPI ialah rangka kerja web berprestasi tinggi berdasarkan Python 3.7+, yang menyediakan banyak fungsi dan ciri yang berkuasa, termasuk pengesahan model permintaan dan tindak balas automatik, keselamatan, pengoptimuman prestasi, dll. Dalam pembangunan sebenar, kita sering perlu merekodkan log permintaan dalam aplikasi untuk analisis penyahpepijatan dan pemantauan. Artikel ini akan memperkenalkan cara melaksanakan pengelogan dan pemantauan permintaan dalam FastAPI dan menyediakan contoh kod yang sepadan.
1. Pasang pakej pergantungan
Sebelum kita mula, kita perlu memasang beberapa pakej pergantungan yang diperlukan. Buka terminal dan laksanakan arahan berikut:
pip install fastapi uvicorn loguru
Antaranya, loguru ialah perpustakaan pembalakan yang mudah digunakan, kami akan menggunakannya untuk merekodkan log permintaan.
2 Cipta aplikasi FastAPI
Pertama, kita perlu buat aplikasi FastAPI. Dalam direktori projek, cipta fail bernama main.py dan tulis kod berikut:
from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "Hello World"}
3. Rekod log permintaan
Seterusnya, kami akan menggunakan perpustakaan loguru untuk merekod log permintaan. Tambahkan kod berikut pada fail main.py:
from loguru import logger import uvicorn from fastapi import FastAPI app = FastAPI() @app.on_event("startup") async def startup_event(): logger.add("logs/request.log", rotation="10 MB") @app.get("/") async def root(): logger.info("Hello World") return {"message": "Hello World"} if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=8000)
Dalam kod di atas, kami mula-mula mengimport objek logger perpustakaan loguru dan menambah logger fail. Kami menentukan laluan fail log sebagai log/request.log dan menetapkan saiz maksimum fail log kepada 10MB. Kemudian, dalam fungsi root(), kami menggunakan kaedah logger.info() untuk log permintaan.
4 Mulakan aplikasi
Simpan fail main.py dan kembali ke terminal, laksanakan arahan berikut untuk memulakan aplikasi FastAPI:
uvicorn main:app --reload
Terminal akan mengeluarkan URL akses aplikasi, seperti http://. 127.0.0.1:8000. Mengakses URL ini dalam penyemak imbas kita akan melihat mesej "Hello World". Buka fail logs/request.log dan kami akan melihat rekod log permintaan.
5. Memantau permintaan
Selain merekodkan log permintaan, kami juga boleh memantau masa pemprosesan dan kod status permintaan. Untuk melaksanakan fungsi ini, kita perlu menggunakan Middleware yang disediakan oleh FastAPI. Tambahkan kod berikut pada fail main.py:
from loguru import logger import time import uvicorn from fastapi import FastAPI, Request from fastapi.middleware.cors import CORSMiddleware app = FastAPI() @app.on_event("startup") async def startup_event(): logger.add("logs/request.log", rotation="10 MB") @app.on_event("shutdown") async def shutdown_event(): logger.remove(handler_id="request_logger") @app.middleware("http") async def log_request(request: Request, call_next): start_time = time.time() response = await call_next(request) process_time = time.time() - start_time logger.info( "Request: {method} {url} {status_code} {process_time:.2f}ms", method=request.method, url=request.url, status_code=response.status_code, process_time=process_time * 1000, ) return response @app.get("/") async def root(): logger.info("Hello World") return {"message": "Hello World"} if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=8000)
Dalam kod di atas, kami mula-mula mengimport modul masa dan menambah masa tidur dalam fungsi root() untuk mensimulasikan masa pemprosesan permintaan. Kemudian, kami menambah logik untuk mengira masa pemprosesan permintaan dan merekodkan kod status permintaan dalam fungsi middleware log_request(). Dalam fungsi shutdown_event(), kami memadamkan pembalak yang telah ditambahkan sebelum ini.
Sekarang, mulakan semula aplikasi FastAPI dan lawati URL aplikasi dalam penyemak imbas anda. Muat semula halaman dalam pelayar dan buka fail log/request.log Kami akan melihat rekod log permintaan termasuk kaedah permintaan, URL, kod status dan masa pemprosesan.
Kesimpulan:
Artikel ini menerangkan cara melaksanakan pengelogan dan pemantauan permintaan dalam FastAPI. Kami menggunakan perpustakaan loguru untuk merekodkan log permintaan dan menggunakan Middleware FastAPI untuk memantau masa pemprosesan permintaan dan kod status. Ciri ini membolehkan kami menjejak dan memantau permintaan dan respons aplikasi dengan lebih baik. Di atas adalah contoh kod untuk melaksanakan pengelogan dan pemantauan permintaan.
Bahan rujukan:
- Dokumentasi rasmi FastAPI: https://fastapi.tiangolo.com/
- dokumentasi rasmi loguru: https://loguru.readthedocs.io/
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pengelogan dan pemantauan permintaan dalam FastAPI. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





Cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban Pengenalan: FastAPI dan Nginx ialah dua alat pembangunan web yang sangat popular. FastAPI ialah rangka kerja Python berprestasi tinggi, dan Nginx ialah pelayan proksi terbalik yang berkuasa. Menggunakan kedua-dua alatan ini bersama-sama boleh meningkatkan prestasi dan kebolehpercayaan aplikasi web anda. Dalam artikel ini, kita akan belajar cara menggunakan Nginx dengan FastAPI untuk proksi terbalik dan pengimbangan beban. Apakah penjanaan terbalik

Bagaimana untuk mencapai keselarasan tinggi dan pengimbangan beban permintaan dalam FastAPI Pengenalan: Dengan pembangunan Internet, keselarasan tinggi aplikasi web telah menjadi masalah biasa. Apabila mengendalikan sejumlah besar permintaan, kami perlu menggunakan rangka kerja dan teknologi yang cekap untuk memastikan prestasi sistem dan kebolehskalaan. FastAPI ialah rangka kerja Python berprestasi tinggi yang boleh membantu kami mencapai keselarasan tinggi dan pengimbangan beban. Artikel ini akan memperkenalkan cara menggunakan FastAPI untuk mencapai keselarasan tinggi dan pengimbangan beban permintaan. Kami akan menggunakan Python3.7

Pemantauan di rumah biasanya disimpan selama satu hingga dua minggu. Pengenalan terperinci: 1. Lebih besar kapasiti penyimpanan, lebih lama video boleh disimpan 2. Lebih besar kapasiti cakera keras, lebih lama video boleh disimpan 3. Mengikut keperluan kawasan dan undang-undang yang berbeza; peraturan, bilangan video pengawasan Masa penyimpanan mungkin berbeza-beza; 4. Sesetengah sistem pengawasan lanjutan juga boleh mencetuskan rakaman berdasarkan pengesanan gerakan atau peristiwa tertentu, dengan itu menjimatkan ruang storan dan menyediakan rakaman yang lebih berguna.

Bagaimana untuk melaksanakan sambungan pangkalan data dan pemprosesan transaksi dalam FastAPI Pengenalan: Dengan perkembangan pesat aplikasi web, sambungan pangkalan data dan pemprosesan transaksi telah menjadi topik yang sangat penting. FastAPI ialah rangka kerja web Python berprestasi tinggi yang disukai oleh pembangun kerana kelajuan dan kemudahan penggunaannya. Dalam artikel ini, kami akan memperkenalkan cara melaksanakan sambungan pangkalan data dan transaksi dalam FastAPI untuk membantu anda membina aplikasi web yang boleh dipercayai dan cekap. Bahagian 1: Sambungan pangkalan data dalam FastA

Gunakan rangka kerja FastAPI untuk membina aplikasi Web antarabangsa FastAPI ialah rangka kerja Web Python berprestasi tinggi yang menggabungkan anotasi jenis Python dan sokongan tak segerak berprestasi tinggi untuk menjadikan pembangunan aplikasi Web lebih mudah, lebih pantas dan lebih dipercayai. Apabila membina aplikasi Web antarabangsa, FastAPI menyediakan alatan dan konsep yang mudah yang boleh menjadikan aplikasi menyokong berbilang bahasa dengan mudah. Di bawah saya akan memberikan contoh kod khusus untuk memperkenalkan cara menggunakan rangka kerja FastAPI untuk membina

Dalam era digital hari ini, mengetahui perubahan terkini pada tapak web anda adalah penting untuk pelbagai tujuan, seperti menjejak kemas kini pada tapak web pesaing anda, memantau ketersediaan produk atau sentiasa dimaklumkan tentang maklumat penting. Semakan tapak web anda secara manual untuk perubahan boleh memakan masa dan tidak cekap. Di sinilah automasi dimainkan. Dalam catatan blog ini, kami akan meneroka cara membuat skrip Python untuk memantau perubahan tapak web. Dengan memanfaatkan kuasa Python dan beberapa perpustakaan berguna, kami boleh mengautomasikan proses mendapatkan semula kandungan tapak web, membandingkannya dengan versi sebelumnya dan memberitahu kami tentang sebarang perubahan. Ini membolehkan kami kekal proaktif dan bertindak balas segera terhadap kemas kini atau pengubahsuaian pada tapak yang kami pantau. Menyediakan persekitaran Sebelum kita mula menulis skrip untuk memantau perubahan tapak web, kita perlu menyediakan P

Cara menggunakan SwaggerUI untuk memaparkan dokumentasi API dalam FastAPI Pengenalan: Dalam pembangunan web moden, API adalah bahagian penting. Untuk memudahkan pembangunan dan penyelenggaraan, kami perlu menyediakan dokumentasi API yang mesra dan mudah digunakan supaya pembangun lain boleh memahami dan menggunakan API kami. Swagger ialah format dan alat dokumentasi API yang popular yang menyediakan antara muka UI interaktif yang boleh memaparkan butiran API secara visual. Dalam artikel ini saya akan menunjukkan kepada anda cara menggunakan Fas

Cara melaksanakan pengelogan dan pemantauan permintaan dalam FastAPI Pengenalan: FastAPI ialah rangka kerja web berprestasi tinggi berdasarkan Python3.7+ Ia menyediakan banyak fungsi dan ciri yang berkuasa, termasuk pengesahan model permintaan dan respons automatik, keselamatan dan pengoptimuman prestasi. Dalam pembangunan sebenar, kita sering perlu merekodkan log permintaan dalam aplikasi untuk analisis penyahpepijatan dan pemantauan. Artikel ini akan memperkenalkan cara melaksanakan pengelogan dan pemantauan permintaan dalam FastAPI dan menyediakan contoh kod yang sepadan. 1. Pemasangan
