TensorFlow设置日志级别的几种方式小结


Posted in Python onFebruary 04, 2020

TensorFlow中的log共有INFO、WARN、ERROR、FATAL 4种级别。有以下几种设置方式。

1. 通过设置环境变量控制log级别

可以通过环境变量TF_CPP_MIN_LOG_LEVEL进行设置,TF_CPP_MIN_LOG_LEVEL的不同值的含义分别如下:

Level Level for Humans Level Description
0 DEBUG all messages are logged (Default)
1 INFO INFO messages are not printed
2 WARNING INFO and WARNING messages are not printed
3 ERROR INFO, WARNING, and ERROR messages are not printed

设置TF_CPP_MIN_LOG_LEVEL的值,屏蔽该级别以及更低级别的日志,如:设置为1,表示屏蔽自己级别的INFO和更低级别的DEBUG日志。

设置环境变量,有两种方式,一种是永久设置,一种临时性设置。

永久设置

修改环境变量:将export TF_CPP_MIN_LOG_LEVEL=1加入到Linux的 ~/.bashrc、~/.zshrc或/etc/profile配置文件中,其中加入到/etc/profile文件是对所有用户都有效。可以在配置文件中设置为1或者2,不建议设置为更高级别的3.

临时性设置

终端中输入export TF_CPP_MIN_LOG_LEVEL="1"

python代码实现方法

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = "1"

ps:os.environ是一个mapping,一系列的键、值对存储在该mapping中,系统环境信息全部存储在该mapping中。如果是print(os.environ['HOME'])这样输出信息,调用的是getenv("HOME")函数,如果环境变量被改变,将会调用putenv()函数进行修改。

python代码中一种错误的设置方法:

os.system("export TF_CPP_MIN_LOG_LEVEL=1") ? 错误用法

不能使用的原因 — 不能通过shell的子进程改变shell的环境变量 — 具体可以参考 stackoverflow alex的回答。

2.通过 tf.logging 模块进行设置 ? 推荐

python代码中可以添加如下部分代码进行设置。

import tensorflow as tf
tf.logging.set_verbosity(tf.logging.ERROR)

tf.logging.ERROR可以换成 {DEBUG, INFO, WARN, ERROR, FATAL} 中的任何一个。

这里有所不同,设置ERROR,将输出ERROR、FATAL级别日志。

代码测试:

def main(self): 
  tf.logging.set_verbosity(tf.logging.ERROR)
  tf.logging.debug("debug")
  tf.logging.info("info")
  tf.logging.warning("warning")
  tf.logging.error("error")
  tf.logging.fatal("fatal")
  
if __name__ == '__main__':
  tf.app.run()

运行上述代码,可以获得ERROR、FATAL级别日志。

TensorFlow设置日志级别的几种方式小结

以上这篇TensorFlow设置日志级别的几种方式小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的lambda匿名函数的简单介绍
Apr 25 Python
python计算牛顿迭代多项式实例分析
May 07 Python
python常见的格式化输出小结
Dec 15 Python
解决pyqt中ui编译成窗体.py中文乱码的问题
Dec 23 Python
python实现下载pop3邮件保存到本地
Jun 19 Python
Python设计模式之建造者模式实例详解
Jan 17 Python
使用Python进行体育竞技分析(预测球队成绩)
May 16 Python
解决python中导入win32com.client出错的问题
Jul 26 Python
python sklearn常用分类算法模型的调用
Oct 16 Python
Python3交互式shell ipython3安装及使用详解
Jul 11 Python
python 用struct模块解决黏包问题
Nov 07 Python
python数字图像处理:图像的绘制
Jun 28 Python
Python 实现加密过的PDF文件转WORD格式
Feb 04 #Python
解决tensorflow打印tensor有省略号的问题
Feb 04 #Python
对Tensorflow中tensorboard日志的生成与显示详解
Feb 04 #Python
在 Python 中接管键盘中断信号的实现方法
Feb 04 #Python
在TensorFlow中屏蔽warning的方式
Feb 04 #Python
Python和Anaconda和Pycharm安装教程图文详解
Feb 04 #Python
Python3.7黑帽编程之病毒篇(基础篇)
Feb 04 #Python
You might like
关于更改Zend Studio/Eclipse代码风格主题的介绍
2013/06/23 PHP
详解PHP中的mb_detect_encoding函数使用方法
2015/08/18 PHP
Apache PHP MySql安装配置图文教程
2016/08/27 PHP
PHP实现打包下载文件的方法示例
2017/10/07 PHP
dreamweaver 安装Jquery智能提示
2011/04/02 Javascript
javascript日期转换 时间戳转日期格式
2011/11/05 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
2012/08/14 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
2013/11/10 Javascript
写JQuery插件的基本知识
2013/11/25 Javascript
JS+CSS实现自动改变切换方向图片幻灯切换效果的方法
2015/03/02 Javascript
JavaScript将字符串转换为整数的方法
2015/04/14 Javascript
JavaScript编程的单例设计模讲解
2015/11/10 Javascript
再谈Javascript中的异步以及如何异步
2016/08/19 Javascript
微信小程序 网络API 上传、下载详解
2016/11/09 Javascript
Angular2下使用pdf插件的方法详解
2017/04/29 Javascript
关于react-router的几种配置方式详解
2017/07/24 Javascript
vue-cli3.0配置及使用注意事项详解
2018/09/05 Javascript
vue 弹框产生的滚动穿透问题的解决
2018/09/21 Javascript
详解Vuex下Store的模块化拆分实践
2019/07/31 Javascript
react结合bootstrap实现评论功能
2020/05/30 Javascript
vue 监听窗口变化对页面部分元素重新渲染操作
2020/07/28 Javascript
python将ip地址转换成整数的方法
2015/03/17 Python
redis之django-redis的简单缓存使用
2018/06/07 Python
详解Django+Uwsgi+Nginx的生产环境部署
2018/06/25 Python
浅谈Python 列表字典赋值的陷阱
2019/01/20 Python
PyQt4实时显示文本内容GUI的示例
2019/06/14 Python
如何基于Python获取图片的物理尺寸
2019/11/25 Python
乐高瑞士官方商店:LEGO CH
2020/08/16 全球购物
this关键字的作用
2016/01/30 面试题
经典导游欢迎词大全
2014/01/16 职场文书
2015年学生资助工作总结
2015/05/25 职场文书
有关三国演义的读书笔记
2015/06/25 职场文书
高中政治教学反思
2016/02/23 职场文书
创业计划之特色精品店
2019/08/12 职场文书
导游词之岳阳楼
2019/09/25 职场文书
Python中Schedule模块使用详解 周期任务神器
2022/04/19 Python