参考日志:

http://blog.csdn.net/sunshine_in_moon/article/details/53529028

http://blog.csdn.net/lishanlu136/article/details/51491301

修改caffe-master\src\caffe文件夹下的common.cpp文件,或者用vs打开caffe解决方案。

编译common.cpp文件。

添加头文件

  1. #include <boost/date_time.hpp>
  2. #include <direct.h>

找到GlobalInit函数,向其中添加代码

  1. void GlobalInit(int* pargc, char*** pargv) {
  2. // Google flags.
  3. ::gflags::ParseCommandLineFlags(pargc, pargv, true);
  4. // Google logging.
  5.  
  6. std::string FLAGS_log_dir="./log/";//存放日志文件的文件夹路径,我们可以自己指定
  7. _mkdir(FLAGS_log_dir.c_str());
  8. FLAGS_colorlogtostderr = true;//设置输出到屏幕的日志显示相应颜色
  9. std::string LOG_INFO_FILE;
  10. std::string LOG_WARNING_FILE;
  11. std::string LOG_ERROR_FILE;
  12. std::string LOG_FATAL_FILE;
  13. std::string now_time = boost::posix_time::to_iso_extended_string(boost::posix_time::second_clock::local_time());
  14. now_time[13] = '-';
  15. now_time[16] = '-';
  16. LOG_INFO_FILE = FLAGS_log_dir + "INFO" + now_time + ".txt";
  17. google::SetLogDestination(google::GLOG_INFO, LOG_INFO_FILE.c_str());
  18. LOG_WARNING_FILE = FLAGS_log_dir + "WARNING" + now_time + ".txt";
  19. google::SetLogDestination(google::GLOG_WARNING, LOG_WARNING_FILE.c_str());
  20. LOG_ERROR_FILE = FLAGS_log_dir + "ERROR" + now_time + ".txt";
  21. google::SetLogDestination(google::GLOG_ERROR, LOG_ERROR_FILE.c_str());
  22. LOG_FATAL_FILE = FLAGS_log_dir + "FATAL" + now_time + ".txt";
  23. google::SetLogDestination(google::GLOG_FATAL, LOG_FATAL_FILE.c_str());
  24.  
  25. ::google::InitGoogleLogging(*(pargv)[0]);
  26. // Provide a backtrace on segfault.
  27.  
  28. #if !defined(_MSC_VER)
  29. ::google::InstallFailureSignalHandler();
  30. #endif
  31. }

    中间的部分为添加的代码。

  重新生成libcaffe,然后重新生成caffe,即可。

  再训练一遍mnist数据集,即可在log文件夹下多出一个日志文件。

  我在参考第一个博客的时候,按照作者所说的把生成日志的功能写一个函数initGlog() ,然后在GlobalInit中加入这个函数initGlog() ,总会报错

 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

  网上说是出现头文件的嵌套问题,我找了半天也没有解决,干脆就试着像第二个博客里面一样,将生成日志的代码直接添加在GlobalInit这个函数中,成功了。就是日志的名字有点奇怪,用的时候,还要再把后缀改一下。

caffe生成log日志的更多相关文章

  1. 韦大仙--简单的monkey测试命令行操作及生成log日志保存

    作中,在将apk交给软件测试人员去测试之前,不免要自己先自测,monkey自测是一个不错的选择! 步骤很简单: 1.测试用的手机与电脑连接好USB ,并且安装好驱动(我一般都是通过豌豆荚自动安装的)! ...

  2. [转] C#实现自动化Log日志

    qing2005原文地址 C#实现自动化Log日志 在开发项目的时候,我们不免要使用Log记录日志,使用最多的是Log4Net和EntLib Log,在需要记录日志的代码处加入log.Write(日志 ...

  3. 善用log日志

    #-*- coding:utf-8 -*- import logging logger = logging.getLogger() #定义一个log日志对象 hdlr = logging.FileHa ...

  4. Java进阶(五十二)利用LOG4J生成服务日志

    Java进阶(五十二)利用LOG4J生成服务日志 前言 由于论文写作需求,需要进行流程挖掘.前提是需要有真实的事件日志数据.真实的事件日志数据可以用来发现.监控和提升业务流程. 为了获得真实的事件日志 ...

  5. Log4j使用笔记:每天生成一个日志文件、按日志大小生成文件

    其中TestLog4j.java如下: package cn.zhoucy.test; import org.apache.log4j.Logger; public class TestLog4j { ...

  6. 转 -Filebeat + Redis 管理 LOG日志实践

    Filebeat + Redis 管理 LOG日志实践 小赵营 关注 2019.01.06 17:52* 字数 1648 阅读 24评论 0喜欢 2 引用 转载 请注明出处 某早上,领导怒吼声远远传来 ...

  7. 记-统计svn与git的log日志中的代码行变更

    任务要求 统计指定时间内,指定git地址与svn地址上的所有人员的代码行变更情况. 解决方案 最初为根据数据库中存储的所有git与svn地址来统计所有人员的提交代码行.之后由于库中存储的地址不全,改为 ...

  8. 工控随笔_07_西门子_WinCC利用命令行实现操作log日志

    在WinCC中可以通过报警纪录来实现操作员纪录,这个需要WinCC的消息系统进行组态和配置. 利用消息系统进行实现上诉功能不但复杂而且时间久啦也不方便查询.那么有没有一种简单的方法来 实现操作员纪录呢 ...

  9. java OOM还在看log日志,兄弟你错的的很严重,正确方式是分析dump文件

    目录 OOM异常--intsmaze 正确姿势dump文件分析--intsmaze 正确的姿势--intsmaze dump丢失打印--intsmaze 哪些内存溢出会产生dump文件--intsma ...

随机推荐

  1. centos7 update network time

    yum install -y ntp crontab -e */5 * * * * /usr/bin/ntpdate ntp.api.bz ###   ntp.api.bz 是一组NTP集群服务器,之 ...

  2. VC++ 判断一个文件是不是快捷方式

    转载:https://bbs.csdn.net/topics/34999 #include <iostream> #include <Shlobj.h> #include &l ...

  3. Bootstrap3基础 form-inline 输入框在同一行

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  4. Python3 tkinter基础 Label 显示的文字换行

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  5. git给log设置别名来快速查看友好的log信息

    把lg配置成了:git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(y ...

  6. linux内核中的linuxPPS是什么?

    答: linux每秒脉冲数(linux pulse per second),LinuxPPS 在系统中提供一个编程接口(API)去定义几个PPS源; 一个PPS源就是一个每秒能提供高精度信号的设备,以 ...

  7. 如何 使用vim的 session和viminfo 恢复上一次工作的环境??

    使用vim的 session和viminfo 恢复上一次工作的环境, 主要有两个方面的内容需要保存: 要使用session,保存窗口和视图, 及全局设置 要使用viminfo保存 命令行历史, 搜索历 ...

  8. SpringBoot 注解调用Redis缓存

    注解代码: import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.l ...

  9. SpringBoot Redis使用fastjson进行序列化

    在使用spring-data-redis,默认情况下是使用org.springframework.data.redis.serializer.JdkSerializationRedisSerializ ...

  10. [问题解决]RedHat7更换CentOS7的yum源时踩过的坑

    更换yum源的流程 查看当前yum程序 $ rpm -qa|grep yum 这里推荐将其结果截屏或拷贝出来,以免后面报错修复. 删除原有yum源 $ rpm -aq | grep yum|xargs ...