当前位置:网站首页>Configuration du cadre flask loguru log Library
Configuration du cadre flask loguru log Library
2022-07-06 16:09:00 【Ratsley... Lesliewu】
Scénario du projet:
loguruLog Library est un très bon tiers log Library.Il est plug - and - play,Il existe plusieurs façons de faire défiler les journaux、Compresser automatiquement les fichiers journaux、Fonctions telles que la suppression programmée.En plus de ça,,Sécurité multithreadée、Mettre en évidence le journal、Des fonctions telles que l'alarme de journal sont également présentes.
Le projet actuel utiliseflaskCadre,Les systèmes utilisés auparavant étaient natifslogging,Je voulais voir si je pouvaisloguruIntégration dansflask- Oui..
Description du problème
Accès à l'information par Internet,J'ai trouvégithubComment partager la configuration ci - dessus,Mais en configurationrotationAprès paramètre(Log by Time or Size,Remplir certaines conditions pour couper le journal),Un problème de processus s'est produit avec l'écriture du Journal.
PermissionError: [WinError 32] Ce fichier est utilisé par un autre programme,Processus inaccessible.
Analyse des causes:
Analyse préliminaire des causes,rotationParamètres,Cela fonctionne une fois que la taille du fichier journal dépasse la taille spécifiée,Un nouveau fichier journal est généré.Lors de la modification du nom du fichier journal original,flaskL'application écrit dans le fichier journal actuel,Impossible de fonctionner.
Solutions:
Paramètres de configuration pour les journaux initialisésLOGFILE,Ajouter{time}
LOGFILE = "./files/logs/log_{time}.log"
Après ça, tout ira bienflaskUtilisé dansloguru,Et le journal prend effet selon les paramètres correspondants.
Je vais vous parler derotation Guide d'utilisation des paramètres :
Défilement dans le temps
Comme rouler dans le temps ,On a juste besoin de logger.add Ajouter un rotation Paramètres:
from loguru import logger
logger.add("file_2.log", rotation="12:00") # Tous les jours12:00Crée un nouveau fichier
logger.debug("That's it, beautiful and simple logging!")
Voilà., Si l'heure actuelle dépasse l'heure fixée , Il génère un nouveau fichier journal . Sinon, utilisez le fichier journal original :
Comme le montre la figure, Après le temps fixé ,Et puis il va file_2.log Renommer,Et ajouter un nouveau file_2.log Documentation.
Défiler par taille
En plus de faire défiler les journaux dans le temps ,Loguru Vous pouvez également faire défiler la taille du Journal :
from loguru import logger
logger.add("file_1.log", rotation="1 MB") # Faire défiler le grand fichier journal
logger.debug("That's it, beautiful and simple logging!")
Voilà., Une fois que la taille du fichier journal dépasse 1 MB Un nouveau fichier journal est généré.
Compresser le journal
Si vous ne voulez pas supprimer le fichier journal original ,Loguru Prise en charge de la compression directe des journaux :
from loguru import logger
logger.add("file_Y.log", compression="zip") # Compresser le journal
边栏推荐
- Information security - threat detection engine - common rule engine base performance comparison
- HDU - 6024 building shops (girls' competition)
- Understand what is a programming language in a popular way
- 树莓派4B安装opencv3.4.0
- Interval sum ----- discretization
- Opencv learning log 14 - count the number of coins in the picture (regardless of overlap)
- 滲透測試 ( 1 ) --- 必備 工具、導航
- 860. Lemonade change
- Interesting drink
- Auto.js入门
猜你喜欢
Data storage in memory & loading into memory to make the program run
Penetration test (8) -- official document of burp Suite Pro
渗透测试 ( 1 ) --- 必备 工具、导航
Basic Q & A of introductory C language
2078. Two houses with different colors and the farthest distance
628. Maximum product of three numbers
Ball Dropping
信息安全-威胁检测-NAT日志接入威胁检测平台详细设计
Programmers, what are your skills in code writing?
Gartner: five suggestions on best practices for zero trust network access
随机推荐
Opencv learning log 24 -- Hough transform 2 (maximum interval and minimum length can be limited)
[teacher Gao UML software modeling foundation] collection of exercises and answers for level 20 cloud class
【练习-10】 Unread Messages(未读消息)
[exercise-2] (UVA 712) s-trees
【练习-5】(Uva 839)Not so Mobile(天平)
socket通讯
Hdu-6025-prime sequence (girls' competition)
Web based photo digital printing website
If you want to apply for a programmer, your resume should be written like this [essence summary]
渗透测试 ( 2 ) --- 渗透测试系统、靶机、GoogleHacking、kali工具
Nodejs+vue online fresh flower shop sales information system express+mysql
Information security - security professional name | CVE | rce | POC | Vul | 0day
7-1 understand everything (20 points)
Analysis of protobuf format of real-time barrage and historical barrage at station B
1903. Maximum odd number in string
Research Report of cylindrical grinder industry - market status analysis and development prospect forecast
树莓派4B安装opencv3.4.0
Research Report of peripheral venous catheter (pivc) industry - market status analysis and development prospect prediction
X-forwarded-for details, how to get the client IP
mysql导入数据库报错 [Err] 1273 – Unknown collation: ‘utf8mb4_0900_ai_ci’