ACE中的Debug的调试及日志输出

news/2024/7/20 23:06:34 标签: ios, c
cle class="baidu_pl">
cle_content" class="article_content clearfix">
content_views" class="htmledit_views">

class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: center;" align="center">color: black; font-family: Verdana; mso-font-kerning: 18.0pt;" lang="EN-US">ACE_DEBUGcolor: black; font-family: 宋体; mso-font-kerning: 18.0pt; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">介绍及日志输出

class="MsoNormal" style="margin: 0cm 0cm 0pt;"> 

class="MsoNormal" style="margin: 0cm 0cm 0pt;">ACE_DEBUGcerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">常规的一些输出消息cerun: yes;">  

class="MsoNormal" style="margin: 0cm 0cm 0pt;">ACE_ERRORcerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">会提供程序出错的一些低级消息

class="MsoNormal" style="margin: 0cm 0cm 0pt;"> 

class="MsoNormal" style="margin: 0cm 0cm 0pt;">2cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">个宏的用法上是一致的

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_DEBUG(cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">错误级别,"cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">格式串",cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">变量1...cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">变量Ncii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">)

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">其中部分错误级别系统定义如下:

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">   LM_SHUTDOWN = 01,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">系统死机级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_TRACE = 02,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">跟踪级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_DEBUG = 04,DEBUGcii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_INFO = 010,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">常规信息级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_NOTICE = 020,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">注意级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_WARNING = 040,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">警告级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_STARTUP = 0100,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">启动级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_ERROR = 0200,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">错误级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_CRITICAL = 0400,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">危急级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_ALERT = 01000,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">可修复的警告级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    LM_EMERGENCY = 02000,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">全局警告级别

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">部分格式串使用如下:

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">   cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">跟c cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">中printfcii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">使用类似

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">   %n-cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">表当前程序名称

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">   %t-cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">表当前线程号

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">   %p-cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">表指针

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">   %s-cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">字符串

class="MsoNormal" style="margin: 0cm 0cm 0pt;">ACEcii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">通过全局单体实例 ACE_LOG_MSG cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">管理和控制输出࿰c;我们可以利用这个实例把输出重定向

class="MsoNormal" style="margin: 0cm 0cm 0pt;"> 

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">到文件࿰c;也可以重定向到标志输出

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">其中还可以控制什么级别的消息可被输出࿰c;简单使用如下:

class="MsoNormal" style="margin: 0cm 0cm 0pt;"> 

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_LOG_MSG->set_flags (ACE_Log_Msg::STDERR);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">设置输出到标准错误输出

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_LOG_MSG->clr_flags (ACE_Log_Msg::STDERR);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">关闭输出到标志错误输出

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_LOG_MSG->set_flags (ACE_Log_Msg::OSTREAM);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ofstream myostream (filename, class="tags" href="/tags/IOS.html" title=ios>ios::out | class="tags" href="/tags/IOS.html" title=ios>ios::trunc);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_LOG_MSG->msg_ostream (&myostream);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">设置输出到文件

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  u_long priority_mask =ACE_LOG_MSG->priority_mask (ACE_Log_Msg::PROCESS);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_SET_BITS (priority_mask,LM_DEBUG |LM_INFO);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">设置只记录LM_DEBUG cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">或者LM_INFOcii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">级别的消息

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_CLR_BITS (priority_mask,LM_DEBUG | LM_INFO);cerun: yes;">                   

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">清除设置条件

class="MsoNormal" style="margin: 0cm 0cm 0pt;">ACE_LOG_MSGcii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">还有一个非常有意思的功能࿰c;能以16cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">进制方式输出内存中的块 ,cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">简单使用如下:

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">      ACE_LOG_MSG->log_hexdump (LM_DEBUG,

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">                                (char *) array,

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">                                sizeof array);

class="MsoNormal" style="margin: 0cm 0cm 0pt;"> 

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">下面附上一个使用例子࿰c;例子来源于ACEcii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">包中的例子程序

class="MsoNormal" style="margin: 0cm 0cm 0pt;">#include "ace/OS_main.h"

class="MsoNormal" style="margin: 0cm 0cm 0pt;">#include "ace/streams.h"

class="MsoNormal" style="margin: 0cm 0cm 0pt;">#include "ace/Log_Msg.h"

class="MsoNormal" style="margin: 0cm 0cm 0pt;">int

class="MsoNormal" style="margin: 0cm 0cm 0pt;">ACE_TMAIN (int, ACE_TCHAR *[])

class="MsoNormal" style="margin: 0cm 0cm 0pt;">{

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  // cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">这个消息将输出到STDERR

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_DEBUG ((LM_DEBUG,

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">      cerun: yes;">        "first message/n"));

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_LOG_MSG->clr_flags (ACE_Log_Msg::STDERR);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  // cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">这个消息将不被输出࿰c;因为标志位清除了

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_DEBUG ((LM_DEBUG,

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">              "second message/n"));

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_LOG_MSG->set_flags (ACE_Log_Msg::OSTREAM);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  //cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">这个消息将不被输出࿰c;因为流的实体尚未定义

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_DEBUG ((LM_DEBUG,

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">              "third message/n"));

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  //cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">建立一个流实体࿰c;指向d:/output.logcii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">文件

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  const char *filename = "d://output.log";

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ofstream myostream (filename, class="tags" href="/tags/IOS.html" title=ios>ios::out | class="tags" href="/tags/IOS.html" title=ios>ios::trunc);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  if (myostream.bad ())

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">    return 1;

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  // cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">设置输出到流

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_LOG_MSG->msg_ostream (&myostream);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  //cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">这个消息将输出到文件中

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_DEBUG ((LM_DEBUG,

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">              "fourth message/n"));

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_LOG_MSG->set_flags (ACE_Log_Msg::STDERR);

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  // cii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman';">这个消息将同时输出到文件和STDERR

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  ACE_DEBUG ((LM_DEBUG,

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">              "fifth message/n"));

class="MsoNormal" style="margin: 0cm 0cm 0pt;">cerun: yes;">  return 0;

class="MsoNormal" style="margin: 0cm 0cm 0pt;">}

class="MsoNormal" style="margin: 0cm 0cm 0pt;"> 

class="MsoNormal" style="margin: 0cm 0cm 0pt;"> 

class="MsoNormal" style="margin: 0cm 0cm 0pt;"> 

cle>

http://www.niftyadmin.cn/n/873780.html

相关文章

发那科机器人寄存器Ar_发那科机器人应用-SR[ ]字符串寄存器

​字符串寄存器、字符串指令 注释:字符串寄存器,存储英文数字的字符串。各自的寄存器中,最多可以存储254个字符。字符串寄存器数标准为25个。 字符串寄存器数可在控制启动时增加。 S…

wifi protocol and IEEE905 protocol 学习详解

802.11协议 是一个划时代的东西, 这让后来的 数据传输 摆脱了 实体线的束缚。 下来我们闲聊一下802.11. 那些基本的协议我们就不去赘述了,我就以我们肯能存在的误区来讲讲; 连接的基本步骤: 扫描(Probe Request、P…

Java编程规则

Java编程规则 包含了大量有用的建议,帮助大家进行低级程序设计,并提供了代码编写的一般性指导: (1) 类名首字母应该大写。字段、方法以及对象(句柄)的首字母应小写。对于所有标识符,其中包含的所有单词都应…

ACE的数据报的使用

使用ACE的数据报 ACE_SOCK_Dgram和ACE_LSOCK_Dgram是ACE中的数据报包装类。这些包装包含了发送和接收数据报的方法,并包装了非面向连接的UDP协议和UNIX域socket协议。与流包装不同,这些包装封装的是非面向连接的协议。这也就意味着不存在用于“设置”连接…

多人 开源git服务器_git 入门教程之什么是 git

gitgit 是分布式版本控制系统,是文本文档管理的利器,是帮助你管理文件动态的好帮手.如果你曾经手动管理过文档,一定有这样的经历,比如你正在编辑文档,想删除某段落,又担心不久后可能会恢复,此时你可能会先备份然后再删除,或者想要修改某段落,几经修改后发现还是最初的比较好,这…

action 执行两次的问题。

系统内之前出现过action 执行两次的情况&#xff1a; <INPUT TYPE"image" SRC"./logo.gif"> 就采用这种图片的方式. 这种方式相当于submit.只要οnclick“return false&#xff1b;” 能够解决问题。没有测试不同游览器版本问题.

ubi 详解 以及jffs2 squash fs ubifs

在linux 系统中 一切接文件&#xff0c; 因为系统操纵的时文件 那么我们 怎么和上层沟通呢。 这就离不开文件系统。 早期常见的文件系统 时jffs2 后期 有ubifs squash fs 等 下面我们聊一下 个文件系统的区别 jffs2 直接和mtd 沟通&#xff0c;比较快捷 但是呢随着 flash 变大…

ACE中的Proactor介绍和应用实例

这篇文章是收集的网上的一片文章&#xff0c;忘记摘自于那了&#xff0c;所以“出处” 就没有添加上&#xff0c;如果侵犯了原作者&#xff0c;还请告知&#xff0c;会及时删除掉。 ACE中的Proactor介绍和应用实例 把这两天做Proactor的一些经验和心得写一下&#xff0c;可能…