当前位置: 首页 > news >正文

大连网站建设培训班伊利网站规划与建设

大连网站建设培训班,伊利网站规划与建设,模板网站与定制网站的优缺点,怎么做网页调查问卷很多人对日志库不以为然#xff0c;包括网狐这种十几年的公司都不重视#xff0c;其实日志库记录的东西能在线上出问题时高效解决#xff0c;特别是别人写的东西#xff0c;人又走了#xff0c;出了问题#xff0c;还可以用日志分析快速解决。要是没有日志记录#xff0…       很多人对日志库不以为然包括网狐这种十几年的公司都不重视其实日志库记录的东西能在线上出问题时高效解决特别是别人写的东西人又走了出了问题还可以用日志分析快速解决。要是没有日志记录出了问题就疑东疑西看别人代码去解决那就是你加班的开始。。。 老版本的网狐框架是没有日志库的到了后面的旗舰版本才有一个幼儿园版本的日志记录服务器。有也是一个垃圾一是没写好二是还经常崩溃三还丢失日志四日志服务器CPU经常20%-30%等等。以前还看到他们的代码每个桌子都创建一个文件游戏里面还一大堆操作文件的代码。。。。。非常难看还低效。这还能忍得了的 为此我找了一个高级的异步开源日志——spdlog其实开源日志库里面优秀的很多选择这个是简单易用可以异步可以按日志等级打印支持多线程等等姿势很多。 且看我如何操刀 先到GitHub - gabime/spdlog: Fast C logging library.开源库上下载下来编译成lib然后用类封装起来给各个模块包含使用。如何封装看下面 #ifndef __H_LOGTOOL #define __H_LOGTOOL #include iostream #include spdlog/spdlog.h #include spdlog/cfg/env.h // support for loading levels from the environment variable #include spdlog/fmt/ostr.h // support for user defined types #include spdlog/async.h #include spdlog/sinks/basic_file_sink.h #include spdlog/sinks/daily_file_sink.h#ifdef _DEBUG #pragma comment (lib,./include/lib/spdlogd.lib) #else #pragma comment (lib,./include/lib/spdlog.lib) #endif #define LOG_MAX_SIZE 2048 using namespace std; using namespace spdlog; class logTool { public:logTool(){}~logTool(){Tool-flush();spdlog::drop_all();spdlog::shutdown();}void init(string szServerName)//房间名称{//spdlog::init_thread_pool(10000, 2);spdlog::cfg::load_env_levels();string fileName logs/daily szServerName .log;auto daily_logger spdlog::daily_logger_mtspdlog::synchronous_factory(daily_logger, fileName, 0, 0);//下面这个支持多线程打印日志//auto daily_logger spdlog::daily_logger_format_mtspdlog::synchronous_factory(daily_logger, fileName, 0, 0);daily_logger-flush_on(spdlog::level::warn);Tool daily_logger;}void log(string szLogInfo){Tool-info(szLogInfo);}void logWarn(string szLogInfo){Tool-warn(szLogInfo);}void logError(string szLogInfo){Tool-error(szLogInfo);}void flush(){Tool-flush();} private:shared_ptrspdlog::logger Tool; };接着下一步是如何引入到服务器里面使用也简单几行代码搞定 #include ..\..\全局定义\logTool.h logTool logex; #define log(...) logex.log(__VA_ARGS__) 服务器停止处添加logex.flush();这让防止服务器关闭时没有及时写入文件。 接着看效果 就连打印日志样式也可以设置的我只用了官方介绍的20%的功能就满足了我的工作需求。 磨刀不误砍柴工有了日志库再也不用担心出问题无处可查大大降低了加班的次数。
http://www.zqtcl.cn/news/39532/

相关文章:

  • 网络公司市值最新排名seo自然优化排名技巧
  • 如何诊断网站网页设计企业网站设计的功能
  • 做外贸网站费用常州网站建设方案书
  • 建设工程造价员网站哪里有帮助做数学题网站
  • 建设局网站模板泰安网站建设招聘
  • 建设部注册师网站wordpress二次元博客
  • dw网站制作素材开发微信小程序的软件
  • 男女做羞羞的事情网站百度推广后台管理
  • 杭州汇咖网站建设有限公司怎么样赣州企业网站建设公司
  • wordpress电影系统网站做优化多少钱
  • 网站建栏目建那些手机视频网站设计
  • 商务网站建设 视频网站的建设技术有哪些
  • 大城县网站建设网站百度地图代码
  • 太原网站优化wordpress 用户前端
  • 校园微网站建设网页设计作品赏析
  • 哪个网站可以做印章图案电脑浏览器打不开网页是什么原因
  • 网站建设的功能模块大数据培训费用多少钱
  • 医药网站建设的需求分析宿州网站建设报价
  • 汕头网站推广多少钱成都甲壳虫品牌设计公司
  • 加外链网站外贸圈名人堂
  • 滦南网站建设推广网站建设的经济效益
  • 小甲鱼网站开发高端网站制作的公司
  • 优惠劵网站怎么做怎么自己做网页链接
  • 有什么网站做生鲜配送的外贸网站建设深圳
  • wordpress的结构哈尔滨seo搜索优化
  • 网站建设主要包括深圳网站设计公司费用多少
  • 周口微网站制作电脑软件推广平台
  • 网站开发使用软件建筑工程有限公司电话
  • 网站推广网站做网站给韩国卖高仿
  • 陕西高速公路建设集团网站企业网站怎么备案