【C++ spdlog】C++ 日志库 spdlog 使用

【C++ spdlog】C++ 日志库 spdlog 使用1、在https://github.com/gabime/spdlog处下载源文件;2、下载后解压,将得到以下文件,其中include文件夹里是所需的头文件及源码;3、新建一个C++控制台应用程序项目spdlog-test,在项目属性页VC++目录-包含目录中添加上述include路径4、添加源文件源.cpp,输入以下代码#include<iostream>#…

大家好,又见面了,我是你们的朋友全栈君。

1、在 https://github.com/gabime/spdlog 处下载源文件;

2、下载后解压,将得到以下文件,其中include文件夹里是所需的头文件及源码;

在这里插入图片描述 在这里插入图片描述

3、新建一个C++控制台应用程序项目spdlog-test,在项目属性页VC++目录-包含目录中添加上述include路径

在这里插入图片描述

4、添加源文件 源.cpp,输入以下代码

#include <iostream>
#include <cstdio>
#include "spdlog/spdlog.h"
#include "spdlog/sinks/rotating_file_sink.h"

using namespace std;
using namespace spdlog;

auto rotating_logger = rotating_logger_mt("mylog", "logs/rotating.txt", 1048576 * 5, 3);

int main(int, char *[])
{ 
   
	int a, b;
	a = 5;
	b = 3;
	float c = 0.1245;
	string s = "hello";
	cout << "a=" << a << " b=" << b << endl;
	
	rotating_logger->error("error!!!");
	rotating_logger->info("a = {},b={},a/b={},a%b={}", a, b, a/b,a%b);
	rotating_logger->info("c = {},s = {} ", c, s);
rotating_logger->flush();

	system("pause");

	return 1;
}

5、在源.cpp同级目录下创建logs文件夹

在这里插入图片描述

6、运行程序,将在logs文件夹下生成rotating.txt日志文件,其内容为

在这里插入图片描述

7、上述日志文件,仅在程序退出时才保存日志,如果要想在程序运行时也能够实时保存日志,可以在程序中添加以下语句

rotating_logger->flush();

参考:
https://github.com/gabime/spdlog
https://www.cnblogs.com/oucsheep/p/8426548.html
https://blog.csdn.net/yanxiaobugyunsan/article/details/79088533

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/152301.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Ubantu下通过iptables开放端口「建议收藏」

    Ubantu下通过iptables开放端口「建议收藏」1.iptablesan安装#检查是否安装@shylin:/etc#sudowhereisiptablesiptables:/sbin/iptables/usr/share/iptables/usr/share/man/man8/iptables.8.gz#安装sudoapt-getinstalliptables2.查看防火墙的配置信息root…

    2022年10月20日
  • java中clone的用法_java clone是浅拷贝吗

    java中clone的用法_java clone是浅拷贝吗一.Cloneable的用途Cloneable和Serializable一样都是标记型接口,它们内部都没有方法和属性,implementsCloneable表示该对象能被克隆,能使用Object.clone()方法。如果没有implementsCloneable的类调用Object.clone()方法就会抛出CloneNotSupportedException。二.克隆的分类(1)浅克隆(s

    2022年10月14日
  • 未将对象引用设置到对象的实例–可能出现的问题总结

    未将对象引用设置到对象的实例–可能出现的问题总结

    2021年11月29日
  • mysql workbench怎么改密码_mysql notifier

    mysql workbench怎么改密码_mysql notifier更改MySQL用户密码MySQL用户是一条记录,其中包含登录信息,帐户特权以及MySQL帐户访问和管理数据库的主机信息。登录信息包括用户名和密码。在某些情况下,需要更改MySQL数据库中的用户密码。要更改任何用户帐户的密码,必须记住以下信息:您要更改的用户帐户的详细信息。用户要更改其密码的应用程序。如果您在不更改应用程序连接字符串的情况下重置了用户帐户密码,则该应用程序将无法与数据库服务器连接。M…

    2022年8月12日
  • iOS 获取本地图片尺寸_ios图片处理软件

    iOS 获取本地图片尺寸_ios图片处理软件有时候我们需要在代码中读取图片的URL,但是需要注意的是:在Assets中的图片,会经过编译无损压缩,无法通过Path读取,只能通过named方法读取,这种情况我们应该怎么获取图片URL了?

    2022年9月22日
  • SSH学习笔记「建议收藏」

    SSH学习笔记「建议收藏」SSH学习笔记github主页:https://github.com/Taot-chen1、ssh(secureshell)安装:sudoapt-getinstallopenssh-server/openssh-client查看ssh服务是否开启:netstat-tlp|grepssh启动/重启/停止ssh服务:sudo/etc/init.d/ssdstart/restart/stop查看系统信息:cat/etc/os-release

    2022年6月24日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号