qnx slog2应用实践小结

news/2024/11/16 3:19:00/

一 应用场景简介

     在QNX系统上开发的应用需要打印日志以帮助开发人员排查相关问题,在C/C++程序中可以使用printf输出到控制台,但很多程序在后台运行,因此借助slog2相关API封装成日志类用于向slog输出日志。

二 QNX slog2简介

1.概述

slog2 是QNX系统提供的一套log机制,slog2info是管理slog的一个进程,可通过slog2info命令获取历史log。

2.slog API

(1)配置log

typedef struct
{int                   num_buffers;          // log buffer集 中有多少个bufferconst char           *buffer_set_name;      // log buffer集的名称一般是进程名,slog2info -b 参数使用uint8_t               verbosity_level;// 整个log buffer集中的最小verbosity_level,只有高于verbosity_level的log才会写入log buffer中slog2_buffer_config_t buffer_config[ SLOG2_MAX_BUFFERS ];uint32_t              max_retries;
} slog2_buffer_set_config_t;
typedef struct
{const char    *buffer_name;         // slog2 buffer 名称int            num_pages;           // 用于定于log buffer的大小,一个page是4kB
} slog2_buffer_config_t;

(2)创建实例

int slog2_register( slog2_buffer_set_config_t *config,      // buffer集的配置结构体slog2_buffer_t *handles,                // 返回操作buffer的handle,后面打印log函数会用到uint32_t flags );                       // 用于指定是否存放到flash中,方便热启时恢复
// 返回值:0 成功,-1 失败

(3)打印日志

vslog2f(nullptr, log_id_, match_level(level), fmt, args); // 按可变参数打印日志 具体用法可参考如下代码

三 slog封装类

wangzhicheng2013/qnx_slog2 (github.com)

 


http://www.ppmy.cn/news/796674.html

相关文章

Js弹出右键菜单

在正常的用户交互中&#xff0c;我们还是习惯于使用右键&#xff0e;下面是用Js实现的右键弹出菜单&#xff1a;<!鼠标右键导航菜单,拷贝就可以运行&#xff0e;><style type"text/css"> body {font-size: 9pt;} table {font-siz…

证书到底有没有用?

证书有用吗&#xff1f;有用&#xff01;在大多数情况下&#xff0c;证书用来对付集体潜意识还是挺管用的&#xff0c;何谓集体潜意识&#xff1f;就是大家认为它有用就有用&#xff0c;大家认为没用&#xff0c;那就没有什么用。我们从小到大&#xff0c;出了出生证明以外(身份…

Python网络爬虫(三) 爬虫进阶

###目录&#xff1a; Python网络爬虫&#xff08;一&#xff09;- 入门基础Python网络爬虫&#xff08;二&#xff09;- urllib爬虫案例Python网络爬虫&#xff08;三&#xff09;- 爬虫进阶Python网络爬虫&#xff08;四&#xff09;- XPathPython网络爬虫&#xff08;五&…

[Java] 【分享】Java爬虫

Java爬虫合集刚刚学习爬虫&#xff0c;把自己学习写的代码分享一下&#xff0c;都放在一个项目里面了&#xff0c;每个包里都是不同的爬虫小demo 爬取的内容&#xff1a; 嘀哩嘀哩网站图片的 游民星空图库壁纸 …

学习进度报告【第二周】

总体而言这周没有荒废&#xff0c;学习了很多新东西。   这周主要做的有&#xff1a; 机器学习博客地址&#xff1a; [Python机器学习]鸢尾花分类 机器学习应用[Python机器学习]机器学习概述[Python]PyCharm中%matplotlib inline报错[Python]scatter_matrix报错 module panda…

送书 | 《Python3爬虫实战——数据清洗、数据分析与可视化》

又到了每周三的送书时刻啦&#xff01;今天给大家带来的是《Python3爬虫实战——数据清洗、数据分析与可视化》 &#xff08;文末查看送书规则&#xff09;

Python正则表达式03

1.提取省市全称 import repattern r^(.*?(?:省|自治区|维吾尔族自治区|壮族自治区|回族自治区))(.*?(?:市|州|盟)) file_names ["浙江省舟山市", "云南省西双版纳州", "新疆维吾尔族自治区伊犁州", "内蒙古自治区阿拉善盟",&quo…

Python自动化小技巧11——excel文件的文字内容筛选

上一期讲述了怎么讲多个excel多sheet表进行批量合并&#xff0c;本次案例就是来讲讲合并之后对数据进行清洗整理的过程&#xff0c;筛掉无用的数据。 这个案例中博主是处理文本&#xff0c;主要是各大平台上的新闻的文字。筛选就是把那些无用的主题的新闻给去掉&#xff0c;我…