• 桌面软件底层日志的一种改进设计


    作者:朱金灿

    来源:http://blog.csdn.net/clever101

     

           桌面软件的底层日志主要采取文本文件的方式,主要存在一些缺点:一是日志文件散乱,不方便管理;二是缺乏有效的日志分析工具。

     

           为此需要改变原来的以文本文件充当日志文件的做法,改用sqlite数据库文件来充当日志文件。采用sqlite数据库文件充当日志文件,一是可以只采用一个日志文件,二是可以开发相关的日志分析工具。特别是在并行处理系统中,日志是一种重要的调试手段。基于数据库的分析工具毫无疑问要比基于文本文件的分析工具更为强大。


            采用sqlite数据库文件充当日志文件,需要设计一个日志表。日志表的结构如下:

    字段名(英文名)

    意义

    类型

    日志记录ID(record_id)

    采用GUID实现

    字符串

    日志等级(log_level)

    划分为两个等级:

    1.  info  —— 信息提示

    2.  error —— 错误提示

    整型

    日志写入时间(write_time)

     

    年月日时分秒,如:2016:7:7 10:49:34

    时间类型

    输出日志的代码具体位置(code_pos)

     

    包括文件名、行号及函数,如:

    File:"e:MyprojectsrcutilityMathLib.cpp"; Line: 10;Matrix:: Matrix:

    字符串

    日志具体信息(info)

    如:加载xml文件失败!

    字符串

     

        操作日志的流程是这样的:日志文件被命名为log.db,放在应用程序文件所在的目录下,当日志文件不存在时,创建这个日志数据库文件,当需要写入日志时插入日志记录。

     

        另外需要针对日志文件开发相关的日志分析工具。

  • 相关阅读:
    17-canvas绘制扇形
    16-canvas绘制圆弧
    15-canvas渐变色
    14-canvas绘制柱状图
    13-绘制矩形的简写方式
    12-es6类的方式封装折线图
    11-canvas绘制折线图
    10-canva绘制数据点
    jenkins 环境部署 (yum安装方式)
    BerkeleyDB安装
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6469830.html
Copyright © 2020-2023  润新知