| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> OSSIM开源安全信息管理系统(七) -> 正文阅读 |
|
[Python知识库]OSSIM开源安全信息管理系统(七) |
2021SC@SDUSC 上周分析的代码部分主要为 Framework.py ,本周对其涉及调用的其他文件代码部分进行分析。 1、Framework.py 涉及到的其他类分析1.1、简述上周对 Framework 部分的主要源代码文件 Framework.py 的源码进行了简单的分析介绍,其中 Framework.py 导入并引用了很多其他的类,以及类方法。上周在分析 主要文件 Framework.py 的源码时,对于调用的其他类的方法,仅仅简单那看了一下这个类方法所实现的功能,返回的值等基本信息,并未对其实现过程,以及这个方法所属的类进行详细分析。所以本周的任务主要是对 Framework.py 文件中所引用的相关类以及相关类方法的实现代码进行详细分析,分析其方法实现过程与原理。 1.2、类关系图使用 UML 类图简单描述下 Framework.py 所涉及的各个类之间的关系 1.3、Logger.py本部分对 Logger.py 源码进行分析,该部分主要是实现系统日志相关的功能,将日志以一定格式输出到系统文件、将日志输出到远程系统等等日志相关的功能。Logger 类中关键其实主要是 logger 这个属性,而 logger 属性定义 : 首先导入相关模块
在用 Python 编写代码的时候,在想查看相关信息的地方利用 print xx 就能在控制台上显示打印相关信息,这样就能知道一些程序运行过程中产生的相关信息,但是当我需要看大量的地方或者在一个文件中查看的时候,这时候使用 print 可能就不大方便了,所以 Python 引入了 logging 模块来记录我想要的信息。 print 也可以输入日志,但是 logging 相对 print 来说更便于控制输出在哪个地方,怎么输出以及控制消息级别来过滤掉那些不需要的信息。 接下来是具体类的代码部分 首先创建一个 logger 日志对象,然后设置默认的日志级别、创建日志格式对象、自定义日志格式、logger日志对象加载StreamHandler对象。 handler:用来自定义日志对象的规则(比如:设置日志输出格式、等级等)
1、 这个方法代码很简单,就是用来移除上面代码默认设置的 当 Agent 以守护程序模式启动时调用该方法
2、 以特定格式,将日志信息输出到指定磁盘文件上 首先获取传入变量
然后就是创建一个
3、 这个方法很简单,功能就是实现将日志 通过调用方法刚才分析的方法 设置日志级别
关于等级问题:上面的文章里已经简单叙述了各个等级之间的关系,以及对应打印输出的内容信息等。这里简单做了个实验测试一下 测试代码:
控制台输出: 可以看出仅仅输出了后面三个等级,默认生成的 root logger 的 level 是 4、 将事件发送到远程系统日志 过程和前面相同:首先创建一个SysLogHandler,然后设置日志格式,最后logger日志对象加载SysLogHandler对象
下一篇继续分析 BackupManager.py 上一篇:OSSIM开源安全信息管理系统(六) |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 21:03:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |