最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python日志:自定義輸出字段 json格式輸出方式

 更新時(shí)間:2020年04月27日 10:10:50   作者:地球儀LV小陀螺  
這篇文章主要介紹了Python日志:自定義輸出字段 json格式輸出方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

最近有一個(gè)需求:將日志以json格式輸出, 并且有些字段是logging模塊沒有的.看了很多源碼和資料, 終于搞定, 抽取精華分享出來, 一起成長.

import json
import logging
 
class JsonFilter(logging.Filter):
 
 ip = 'IP'
 source = 'APP'
 
 def filter(self, record):
  record.ip = self.ip
  record.username = self.source
  return True
 
if __name__ == '__main__':
 
 formate = json.dumps({
  "time": "%(asctime)s",
  "levelname": "%(levelname)s",
  "levelno": "%(lineno)d",
  "ip": "%(ip)s",
  "source": "%(source)s"
 })
 logging.basicConfig(level=logging.DEBUG,
      format=formate)
 logger = logging.getLogger()
 filter_ = JsonFilter()
 logger.addFilter(filter_)
 
 logger.debug('A debug message')
 
 filter_.ip = '127.0.0.1'
 filter_.source= 'china'
 logger.info('A message for test')

運(yùn)行結(jié)果:

其實(shí)就是重寫了logging.Filter的filter方法,自定義需要的字段, 在調(diào)用日志輸出時(shí),賦予相應(yīng)的值即可.不賦予相應(yīng)的值時(shí)也可以輸出日志, 會(huì)自動(dòng)按照定義字段時(shí)的信息輸出.

補(bǔ)充知識(shí):Log打印完整參數(shù),生成Json文件

當(dāng)字符數(shù)量足夠多的的時(shí)候,Log控制臺(tái)便會(huì)自動(dòng)截取,不能在控制臺(tái)上完整輸出,可以利用如下方法,這種方式會(huì)在測(cè)試機(jī)或者虛擬機(jī)的根目錄生成一個(gè)new.json文件,里面是完整的Log信息

public static void printStringToFile(String str) {
 File file = new File(Environment.getExternalStorageDirectory(), "new.json");
 Log.d("Lyb", "path = " + file.getAbsolutePath());
 FileWriter writer = null;
 try {
  Log.d("Lyb", "createNewFile");
  if (!file.exists()) {
   file.createNewFile();
  }else {
   file.delete();
   file.createNewFile();
  }
  writer = new FileWriter(file, true);
  writer.write(str);
  writer.flush();
  writer.close();
  writer = null;
 } catch (IOException e) {
  e.printStackTrace();
 } finally {
  try {
   if (writer != null) {
    writer.close();
   }
  } catch (IOException e) {
   e.printStackTrace();
  }
 }
}

以上這篇Python日志:自定義輸出字段 json格式輸出方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解python連接telnet和ssh的兩種方式

    詳解python連接telnet和ssh的兩種方式

    本文主要介紹了python連接telnet和ssh的兩種方式,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • python正則表達(dá)式re.match()匹配多個(gè)字符方法的實(shí)現(xiàn)

    python正則表達(dá)式re.match()匹配多個(gè)字符方法的實(shí)現(xiàn)

    這篇文章主要介紹了python正則表達(dá)式re.match()匹配多個(gè)字符方法的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • python爬取豆瓣電影排行榜(requests)的示例代碼

    python爬取豆瓣電影排行榜(requests)的示例代碼

    這篇文章主要介紹了python爬取豆瓣電影排行榜(requests),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02
  • opencv之顏色過濾只留下圖片中的紅色區(qū)域操作

    opencv之顏色過濾只留下圖片中的紅色區(qū)域操作

    這篇文章主要介紹了opencv之顏色過濾只留下圖片中的紅色區(qū)域操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • 一文詳解Python中數(shù)據(jù)清洗與處理的常用方法

    一文詳解Python中數(shù)據(jù)清洗與處理的常用方法

    在數(shù)據(jù)處理與分析過程中,缺失值、重復(fù)值、異常值等問題是常見的挑戰(zhàn),本文總結(jié)了多種數(shù)據(jù)清洗與處理方法,文中的示例代碼簡(jiǎn)潔易懂,有需要的小伙伴可以參考下
    2025-01-01
  • python中如何使用insert函數(shù)

    python中如何使用insert函數(shù)

    這篇文章主要介紹了python中如何使用insert函數(shù),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • Python操作redis實(shí)例小結(jié)【String、Hash、List、Set等】

    Python操作redis實(shí)例小結(jié)【String、Hash、List、Set等】

    這篇文章主要介紹了Python操作redis的常見方法,結(jié)合實(shí)例形式總結(jié)分析了Python redis操作中String、Hash、List、Set等相關(guān)操作函數(shù)與使用技巧,需要的朋友可以參考下
    2019-05-05
  • python雙向隊(duì)列deque的使用

    python雙向隊(duì)列deque的使用

    本文主要介紹了python雙向隊(duì)列deque的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • 基于Python執(zhí)行dos命令并獲取輸出的結(jié)果

    基于Python執(zhí)行dos命令并獲取輸出的結(jié)果

    這篇文章主要介紹了基于Python執(zhí)行dos命令并獲取輸出的結(jié)果,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • python代碼實(shí)現(xiàn)掃碼關(guān)注公眾號(hào)登錄的實(shí)戰(zhàn)

    python代碼實(shí)現(xiàn)掃碼關(guān)注公眾號(hào)登錄的實(shí)戰(zhàn)

    本文主要介紹了python代碼實(shí)現(xiàn)掃碼關(guān)注公眾號(hào)登錄的實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11

最新評(píng)論

健康| 论坛| 汾西县| 当涂县| 永宁县| 深州市| 汕头市| 徐水县| 桓仁| 乐清市| 罗平县| 健康| 子洲县| 泸定县| 红安县| 永嘉县| 城市| 威信县| 隆回县| 津市市| 寿阳县| 墨竹工卡县| 郓城县| 乌审旗| 鞍山市| 仙桃市| 凤城市| 拜城县| 温宿县| 怀化市| 县级市| 山西省| 南溪县| 盘锦市| 赤水市| 逊克县| 高邮市| 东乌珠穆沁旗| 绥阳县| 文成县| 来宾市|