Django的logging-日志模塊的簡單使用方法

擴展閱讀:
Python-Django的“日志功能-日志模塊(logging模塊)-日志輸出”的功能詳解

現在有下面的Python代碼:

# -*- coding: utf-8 -*-def log_out_test(content_out):print(content_out)content1 = "i love you01"
log_out_test(content1)

現在要把函數log_out_test()中的print語句中的內容以日志文件的形式輸出:

可以像下面這樣實現:

# -*- coding: utf-8 -*-import loggingdef log_out_test(content_out):logger01.debug(content_out)# 創建新的日志記錄器
logger01 = logging.getLogger("my_logger")# 配置日志記錄器的日志文件路徑和日志格式
file_handler_01 = logging.FileHandler('E:/log/my_log_file_01.log')
file_formatter_01 = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
file_handler_01.setFormatter(file_formatter_01)
logger01.addHandler(file_handler_01)# 設置日志級別
logger01.setLevel(logging.DEBUG)# 使用新的日志記錄器進行調試
content = "i love you"
log_out_test(content)

對于上面的代碼,如果認真讀過我的另一篇博文:Python-Django的“日志功能-日志模塊(logging模塊)-日志輸出”的功能詳解 那么理解起來應該是沒有問題。

不過這里還是補充說明一點:
問:為什么在函數log_out_test()的外部的實例化對象logger01并沒有通過參數傳遞到函數,在函數內部也可以調用?

答:在 Python 中,logging 模塊使用了全局狀態(global state),因此,在代碼中,logger01 實例化后成為一個全局變量。全局變量在整個模塊中都是可見的,因此你可以在模塊的任何地方訪問它。

運行上面的代碼后:

在路徑E:\log\下生成了日志文件:my_log_file_01.log
內容如下:
在這里插入圖片描述
在這里插入圖片描述
我們修改下變量content的內容為"i love you02",再次運行上面的代碼,發現原來的日志文件并沒有被覆蓋,而是被追加到了后面。如下圖所示:
在這里插入圖片描述
擴展閱讀:
Python-Django的“日志功能-日志模塊(logging模塊)-日志輸出”的功能詳解

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/208569.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/208569.shtml
英文地址,請注明出處:http://en.pswp.cn/news/208569.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

云服務器Centos中安裝Docker

云服務器Centos中安裝Docker 1 簡介DockerCentosCentos和Ubuntu區別 2 安裝3 測試hello-world的鏡像測試 1 簡介 Docker Docker是一個開源的應用容器引擎,利用操作系統本身已有的機制和特性,可以實現遠超傳統虛擬機的輕量級虛擬化。它支持將軟件編譯成…

Hive 淺析

Hive是一個簡單的LUA沙盒,除了基本的LUA解釋器的功能以外,還提供了諸如熱加載等功能。 了解HIVE的工作原理有利于了解Lua虛擬機的底層實現機理。 本文從是什么-怎么用-為什么三個維度介紹HIVE。 Hive Hive是什么 hive是一個簡單的LUA應用框架,目前基于…

Mybatis Plus詳解【一】

一、簡介 MybatisPlus可以節省大量時間,所有的CRUD代碼都可以自動化完成。MyBatis-Plus是一個MyBatis的增強工具,在 MyBatis 的基礎上只做增強不做改變,為簡化開發、提高效率而生。 特性: 無侵入:只做增強不做改變&…

Windows 12 和 AI 計算機

據商業時報消息 ,微軟計劃于 2024 年 6 月發布Windows 12。 新版本的操作系統將伴隨集成人工智能。 該數據基于廣達首席執行官林百里和宏基陳杰森在中國臺北醫療科技展上的發言。 雖然這篇文章沒有直接引用微軟高管的話,但它是根據他們的評論得出的結…

IDEA 社區版 add GitLab Account

問題 IntelliJ IDEA Community Edition 2023.3(社區版)在使用GitLab連接時,使用個人訪問令牌出現報錯,代碼: GraphQL error:[No such type ProjectMember,so it cant be a fraggment condition,Field id doesnt exis…

2023年最新prometheus + grafana搭建和使用

一、安裝prometheus 1.1 安裝 prometheus官網下載地址 sudo -i mkdir -p /opt/prometheus #移動解壓后的文件名到/opt/,并改名prometheus mv prometheus-2.45 /opt/prometheus/ #創建一個專門的prometheus用戶: -M 不創建家目錄, -s 不讓登錄 useradd…

Navicat 技術指引 | 適用于 GaussDB 分布式的數據遷移工具

Navicat Premium(16.3.3 Windows 版或以上)正式支持 GaussDB 分布式數據庫。GaussDB 分布式模式更適合對系統可用性和數據處理能力要求較高的場景。Navicat 工具不僅提供可視化數據查看和編輯功能,還提供強大的高階功能(如模型、結…

單例模式---餓漢式、懶漢式

一、什么是單例模式 單例模式,指的是一個類中的對象只能有一個,它在內存中只會創建一次對象的設計模式。 二、餓漢式 public class SingleTon {// 私有的構造方法private SingleTon() {};// 1. 餓漢式private static SingleTon instance new SingleTon…

整數以及浮點數在內存中的存儲

一.整數在內存當中的存儲 數據在內存中是以十六進制補碼的形式進行存儲的。 原碼表示法簡單易懂,適用于乘法,但用原碼表示的數進行加減運算比較復雜,當兩數相加時,如果同號則數值相加,但是進行減法時要先比較絕對值的…

認知覺醒(六)

認知覺醒(六) 第二節 感性:頂級的成長竟然是“憑感覺” 人類生存于世,比拼的是腦力思維,但極少有人知道,我們的身體里還有一個更高級的系統,若能善用,成就非凡。 1941年,德軍對英國本土進行…

Neo4j介紹

1、Neo4j介紹 Neo4j 是一個圖數據庫管理系統,它專注于存儲和處理圖形結構的數據。圖數據庫是一類特殊的數據庫,用于有效地管理圖形數據模型,其中數據以節點、關系和屬性的形式存儲。 2、Neo4j特點 圖數據庫: Neo4j 是一種 NoSQ…

目標檢測器技術演進簡史

引言 目標檢測算法的發展已經取得了長足的進步,從早期的計算機視覺方法開始,通過深度學習達到了很高的準確度。在這篇博文中,我們將一起回顧一下這些算法的發展階段以及現代目標檢測系統中使用的主要方法。 我們首先回顧早期傳統的目標檢測…

大數據技術3:數據倉庫的ETL和分層模型

前言:我們先了解一下數據倉庫架構的演變過程。 1 、數據倉庫定義 數據倉庫是一個面向主題的(Subject Oriented)、集成的(Integrate)、相對穩定的(Non-Volatile)、反映歷史變化(Time…

電商系統架構演進

聊聊電商系統架構演進 具體以電子商務網站為例, 展示web應用的架構演變過程。 1.0時代 這個時候是一個web項目里包含了所有的模塊,一個數據庫里包含了所需要的所有表,這時候網站訪問量增加時,首先遇到瓶頸的是應用服務器連接數&a…

深入體驗:山海鯨可視化軟件的獨特魅力

山海鯨可視化軟件是一款功能強大的數據可視化工具,作為該軟件的資深用戶,我深感其獨特的魅力和優勢。下面,我將從軟件特點、操作體驗、數據交互和實際應用場景等方面,為大家詳細介紹山海鯨可視化軟件。 首先,山海鯨可視…

解決Eslint和Prettier關于三元運算符的沖突問題

三元運算符Prettier的格式化 三元運算符Eslint的格式要求 解決辦法 // eslint加入配置,屏蔽標紅報錯indent: [error, 2, { ignoredNodes: [ConditionalExpression] }]效果

Nginx按指定格式記錄訪問日志

今天突然想起來一個日志的一個東西,因為拉項目無意中看到了日志文件的一些東西,現在不經常做后端了,加上其他的一些原因吧.有時候有些問題也沒想太多,馬馬虎虎就過了,后來想想還是要記錄一下這方面的處理過程吧: 一般我們作為開發人員關注的日志只是在應用程序層面的,我們稱它…

LSTM_預測價格問題_keras_代碼實操

0、問題描述 使用Bicton數據集,對close數據進行預測,使用60個數據點預測第61個數據點。 下載數據集:Bitcoin Historical Data 前期已經使用了MLP和RNN進行預測:這里 1、 沒有寫完,明天再寫:)…

POJ 3735 Training little cats 動態規劃(矩陣的冪)

一、題目大意 我們有N只貓&#xff0c;每次循環進行K次操作&#xff08;N<100&#xff0c;K<100&#xff09;&#xff0c;每次操作可有以下三種選擇&#xff1a; 1、g i 給第i只貓1個食物 2、e i 讓第i只貓吃完它所有的食物 3、s i j 交換第i和j只貓的食物。 求出M次…

JS自己定義數組擴展方法 求和 和 最大值、最小值

相信有小伙伴看到這一個標題可能會想&#xff1a;現在都可以自己寫方法了嗎&#xff1f;這么炸裂。沒錯我們是可以自己寫方法的。 1.我們定義的這個方法&#xff0c;任何一個數組實例對象都可以使用 2.自定義的方法寫到 數組.propertype身上 最大值 const arr [1,2,3,4]Array…