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 相关文章推荐
python3.3教程之模拟百度登陆代码分享
Jan 16 Python
利用pandas将numpy数组导出生成excel的实例
Jun 14 Python
python高阶爬虫实战分析
Jul 29 Python
python得到一个excel的全部sheet标签值方法
Dec 10 Python
对python For 循环的三种遍历方式解析
Feb 01 Python
python使用百度文字识别功能方法详解
Jul 23 Python
python之pexpect实现自动交互的例子
Jul 25 Python
python写一个随机点名软件的实例
Nov 28 Python
带你彻底搞懂python操作mysql数据库(cursor游标讲解)
Jan 06 Python
Python模块/包/库安装的六种方法及区别
Feb 24 Python
Selenium之模拟登录铁路12306的示例代码
Jul 31 Python
Windows下pycharm安装第三方库失败(通用解决方案)
Sep 17 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
PHP截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
2013/01/11 PHP
phpcms手机内容页面添加上一篇和下一篇
2015/06/05 PHP
php解析url并得到url中的参数及获取url参数的四种方式
2015/10/26 PHP
YII2 实现多语言配置的方法分享
2017/01/11 PHP
onpropertypchange
2006/07/01 Javascript
Jquery 选中表格一列并对表格排序实现原理
2012/12/15 Javascript
使用jquery mobile做幻灯播放效果实现步骤
2013/01/04 Javascript
jquery阻止冒泡事件使用模拟事件
2013/09/06 Javascript
js带按钮的提示框可供选择示例代码
2013/09/17 Javascript
让alert不出现弹窗的两种方法
2014/05/18 Javascript
jQuery中fadeOut()方法用法实例
2014/12/24 Javascript
JS获取CSS样式(style/getComputedStyle/currentStyle)
2016/01/19 Javascript
AngularJS过滤器filter用法分析
2016/12/11 Javascript
关于微信jssdk实现多图片上传的一点心得分享
2016/12/13 Javascript
jQuery实现字体颜色渐变效果的方法
2017/03/29 jQuery
小程序实现发表评论功能
2018/07/06 Javascript
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
2019/01/24 Javascript
Vue动态路由缓存不相互影响的解决办法
2019/02/19 Javascript
简单说说如何使用vue-router插件的方法
2019/04/08 Javascript
NodeJS 文件夹拷贝以及删除功能
2019/09/03 NodeJs
浅谈Ant Design Pro 菜单自定义 icon
2020/11/17 Javascript
Python cookbook(数据结构与算法)实现优先级队列的方法示例
2018/02/18 Python
Python实现按当前日期(年、月、日)创建多级目录的方法
2018/04/26 Python
Django如何实现上传图片功能
2019/08/16 Python
使用turtle绘制五角星、分形树
2019/10/06 Python
利用python实现PSO算法优化二元函数
2019/11/13 Python
python 经典数字滤波实例
2019/12/16 Python
Blue Nile台湾:钻石珠宝商,订婚首饰、结婚戒指和精品首饰
2017/11/24 全球购物
派出所所长先进事迹
2014/05/19 职场文书
英语求职信范文
2014/05/23 职场文书
文明寝室标语
2014/06/13 职场文书
婚前协议书范本两则
2014/10/16 职场文书
2015年医院药剂科工作总结
2015/05/04 职场文书
安娜卡列尼娜观后感
2015/06/11 职场文书
任长霞观后感
2015/06/16 职场文书