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通过websocket与js客户端通信示例分析
Jun 25 Python
用Python解决计数原理问题的方法
Aug 04 Python
python数据结构之线性表的顺序存储结构
Sep 28 Python
python设定并获取socket超时时间的方法
Jan 12 Python
在Python中通过getattr获取对象引用的方法
Jan 21 Python
Python基本数据结构与用法详解【列表、元组、集合、字典】
Mar 23 Python
Python中typing模块与类型注解的使用方法
Aug 05 Python
python numpy中cumsum的用法详解
Oct 17 Python
基于Python3.6中的OpenCV实现图片色彩空间的转换
Feb 03 Python
使用Python三角函数公式计算三角形的夹角案例
Apr 15 Python
python 如何快速复制序列
Sep 07 Python
python中温度单位转换的实例方法
Dec 27 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
咖啡常见的种类
2021/03/03 新手入门
PHP+DBM的同学录程序(3)
2006/10/09 PHP
php中iconv函数使用方法
2008/05/24 PHP
适用于php-5.2 的 php.ini 中文版[金步国翻译]
2011/04/17 PHP
ThinkPHP的MVC开发机制实例解析
2014/08/23 PHP
Laravel中间件实现原理详解
2016/10/09 PHP
php 时间time与日期date之间的使用详解及区别
2016/11/07 PHP
Laravel框架实现利用监听器进行sql语句记录功能
2018/06/06 PHP
js 事件小结 表格区别
2007/08/13 Javascript
老鱼 浅谈javascript面向对象编程
2010/03/04 Javascript
JavaScript中的连字符详解
2013/11/28 Javascript
Javascript中this的用法详解
2014/09/22 Javascript
javascript常用代码段搜集
2014/12/04 Javascript
基于JS组件实现拖动滑块验证功能(代码分享)
2016/11/18 Javascript
JS库之Three.js 简易入门教程(详解之一)
2017/09/13 Javascript
基于Vue过渡状态实例讲解
2017/09/14 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
Vue-cli3简单使用(图文步骤)
2019/04/30 Javascript
使用vue-router切换页面时,获取上一页url以及当前页面url的方法
2019/05/06 Javascript
vue实现直播间点赞飘心效果的示例代码
2019/09/20 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
2020/07/28 Javascript
vue使用video插件vue-video-player的示例
2020/10/03 Javascript
Tensorflow之Saver的用法详解
2018/04/23 Python
python筛选出两个文件中重复行的方法
2018/05/31 Python
Python3.5迭代器与生成器用法实例分析
2019/04/30 Python
CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
2019/05/06 Python
python实现FTP循环上传文件
2020/03/20 Python
优秀求职信范文分享
2013/12/19 职场文书
装修致歉信
2014/01/15 职场文书
学生宿舍管理制度
2014/01/30 职场文书
2015年纪念“卢沟桥事变”78周年活动方案
2015/05/06 职场文书
2015年电信员工工作总结
2015/05/26 职场文书
2015秋学期开学寄语
2015/05/28 职场文书
海康机器人重磅发布全新算法开发平台VM4.2
2022/04/21 数码科技
Java由浅入深通关抽象类与接口(上篇)
2022/04/26 Java/Android
Golang并发工具Singleflight
2022/05/06 Golang