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来使用七牛云存储的方法详解
Aug 07 Python
玩转python爬虫之爬取糗事百科段子
Feb 17 Python
在Python的Flask框架中构建Web表单的教程
Jun 04 Python
python3之微信文章爬虫实例讲解
Jul 12 Python
Django REST Framework序列化外键获取外键的值方法
Jul 26 Python
Django多数据库的实现过程详解
Aug 01 Python
Python实现多线程/多进程的TCP服务器
Sep 03 Python
Python生态圈图像格式转换问题(推荐)
Dec 02 Python
python使用matplotlib:subplot绘制多个子图的示例
Sep 24 Python
Python爬虫教程之利用正则表达式匹配网页内容
Dec 08 Python
关于django python manage.py startapp 应用名出错异常原因解析
Dec 15 Python
利用Python如何画一颗心、小人发射爱心
Feb 21 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
WindowsXP中快速配置Apache+PHP5+Mysql
2008/06/05 PHP
PHP中单引号与双引号的区别分析
2014/08/19 PHP
Yii2.0中的COOKIE和SESSION用法
2016/08/12 PHP
PHP哈希表实现算法原理解析
2020/12/11 PHP
使用CSS3实现字体颜色渐变的实现
2021/03/09 HTML / CSS
完美解决AJAX跨域问题
2013/11/01 Javascript
一个非常全面的javascript URL解析函数和分段URL解析方法
2014/04/12 Javascript
Vue.js中用webpack合并打包多个组件并实现按需加载
2017/02/17 Javascript
如何理解jQuery中的ajaxSubmit方法
2017/03/13 Javascript
Node.js中流(stream)的使用方法示例
2017/07/16 Javascript
vue.js声明式渲染和条件与循环基础知识
2017/07/31 Javascript
JScript实现表格的简单操作
2017/08/15 Javascript
jQuery第一次运行页面默认触发点击事件的实例
2018/01/10 jQuery
Vue2(三)实现子菜单展开收缩,带动画效果实现方法
2019/04/28 Javascript
原生JS无缝滑动轮播图
2019/10/22 Javascript
利用原生JS实现欢乐水果机小游戏
2020/04/23 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
[03:55]显微镜下的DOTA2特别篇——430灰烬之灵神级操作
2014/06/24 DOTA
[52:52]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第三局
2016/02/27 DOTA
python简单文本处理的方法
2015/07/10 Python
Python基于列表模拟堆栈和队列功能示例
2018/01/05 Python
Python语言快速上手学习方法
2018/12/14 Python
IE下实现类似CSS3 text-shadow文字阴影的几种方法
2011/05/11 HTML / CSS
爱淘宝:淘宝网购物分享平台
2017/04/28 全球购物
Myprotein比利时官方网站:欧洲第一运动营养品牌
2020/10/04 全球购物
乐观大学生的自我评价
2014/01/10 职场文书
餐厅总厨求职信
2014/03/04 职场文书
精彩的广告词
2014/03/19 职场文书
《动手做做看》教学反思
2014/04/09 职场文书
增员口号大全
2014/06/18 职场文书
党的群众路线教育实践活动学习计划
2014/11/03 职场文书
幼儿园园长工作总结2015
2015/05/25 职场文书
安全责任协议书范本
2016/03/23 职场文书
Django项目如何获得SSL证书与配置HTTPS
2021/04/30 Python
解决Jenkins集成SonarQube遇到的报错问题
2021/07/15 Java/Android
云服务器部署 Web 项目的实现步骤
2022/06/28 Servers