XWOS API  4.0
XWOS C/C++ API参考手册
载入中...
搜索中...
未找到
日志 的协作图:

宏定义

#define XWLOGF_VERBOSE(tag, fmt, ...)   xwpf("V|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_V(tag, fmt, ...)   xwpf("V|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_DEBUG(tag, fmt, ...)   xwpf("D|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_D(tag, fmt, ...)   xwpf("D|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_INFO(tag, fmt, ...)   xwpf("I|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_I(tag, fmt, ...)   xwpf("I|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_NOTICE(tag, fmt, ...)   xwpf("N|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_N(tag, fmt, ...)   xwpf("N|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_WARNING(tag, fmt, ...)   xwpf("W|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_W(tag, fmt, ...)   xwpf("W|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_ERR(tag, fmt, ...)   xwpf("E|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_E(tag, fmt, ...)   xwpf("E|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_CRIT(tag, fmt, ...)   xwpf("C|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_C(tag, fmt, ...)   xwpf("C|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_ALERT(tag, fmt, ...)   xwpf("A|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_A(tag, fmt, ...)   xwpf("A|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_EMERG(tag, fmt, ...)   xwpf("G|" tag " " fmt, ##__VA_ARGS__)
 
#define XWLOGF_G(tag, fmt, ...)   xwpf("G|" tag " " fmt, ##__VA_ARGS__)
 
#define xwlogf(lv, tag, fmt, ...)   XWLOGF_##lv(tag, fmt, ##__VA_ARGS__)
 格式化日志,并输出
 

函数

int xwpf (const char *fmt,...)
 格式化字符串并输出到日志,同 printf() 函数
 

详细描述

宏定义说明

◆ xwlogf

#define xwlogf (   lv,
  tag,
  fmt,
  ... 
)    XWLOGF_##lv(tag, fmt, ##__VA_ARGS__)

格式化日志,并输出

参数
[in]lv等级,取值
  • VERBOSE | V,等级0
  • DEBUG | D,等级1
  • INFO | I,等级2
  • NOTICE | N,等级3
  • WARNING | W,等级4
  • ERR | E,等级5
  • CRIT | C,等级6
  • ALERT | A,等级7
  • EMERG | G,等级8
[in]tag日志标签
[in]fmt格式的字符串
[in]...需要格式化的参数
注解

如果底层 soc_log_write()board_log_write() 的实现会导致线程睡眠, 不可在除线程外的其他上下文使用。

在文件 xwlog.h119 行定义.

◆ XWLOGF_A

#define XWLOGF_A (   tag,
  fmt,
  ... 
)    xwpf("A|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h84 行定义.

◆ XWLOGF_ALERT

#define XWLOGF_ALERT (   tag,
  fmt,
  ... 
)    xwpf("A|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h83 行定义.

◆ XWLOGF_C

#define XWLOGF_C (   tag,
  fmt,
  ... 
)    xwpf("C|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h76 行定义.

◆ XWLOGF_CRIT

#define XWLOGF_CRIT (   tag,
  fmt,
  ... 
)    xwpf("C|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h75 行定义.

◆ XWLOGF_D

#define XWLOGF_D (   tag,
  fmt,
  ... 
)    xwpf("D|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h36 行定义.

◆ XWLOGF_DEBUG

#define XWLOGF_DEBUG (   tag,
  fmt,
  ... 
)    xwpf("D|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h35 行定义.

◆ XWLOGF_E

#define XWLOGF_E (   tag,
  fmt,
  ... 
)    xwpf("E|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h68 行定义.

◆ XWLOGF_EMERG

#define XWLOGF_EMERG (   tag,
  fmt,
  ... 
)    xwpf("G|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h91 行定义.

◆ XWLOGF_ERR

#define XWLOGF_ERR (   tag,
  fmt,
  ... 
)    xwpf("E|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h67 行定义.

◆ XWLOGF_G

#define XWLOGF_G (   tag,
  fmt,
  ... 
)    xwpf("G|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h92 行定义.

◆ XWLOGF_I

#define XWLOGF_I (   tag,
  fmt,
  ... 
)    xwpf("I|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h44 行定义.

◆ XWLOGF_INFO

#define XWLOGF_INFO (   tag,
  fmt,
  ... 
)    xwpf("I|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h43 行定义.

◆ XWLOGF_N

#define XWLOGF_N (   tag,
  fmt,
  ... 
)    xwpf("N|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h52 行定义.

◆ XWLOGF_NOTICE

#define XWLOGF_NOTICE (   tag,
  fmt,
  ... 
)    xwpf("N|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h51 行定义.

◆ XWLOGF_V

#define XWLOGF_V (   tag,
  fmt,
  ... 
)    xwpf("V|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h28 行定义.

◆ XWLOGF_VERBOSE

#define XWLOGF_VERBOSE (   tag,
  fmt,
  ... 
)    xwpf("V|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h27 行定义.

◆ XWLOGF_W

#define XWLOGF_W (   tag,
  fmt,
  ... 
)    xwpf("W|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h60 行定义.

◆ XWLOGF_WARNING

#define XWLOGF_WARNING (   tag,
  fmt,
  ... 
)    xwpf("W|" tag " " fmt, ##__VA_ARGS__)

在文件 xwlog.h59 行定义.

函数说明

◆ xwpf()

int xwpf ( const char *  fmt,
  ... 
)

格式化字符串并输出到日志,同 printf() 函数

参数
[in]fmt格式的字符串
[in]...需要转换位字符串的其他参数
返回
vsnprintf() 函数
注解

如果底层 soc_log_write()board_log_write() 的实现会导致线程睡眠, 不可在除线程外的其他上下文使用。

在文件 xwlog.c32 行定义.

33{
34 va_list args;
35 xwer_t rc;
36 int i;
37 xwsz_t sz;
38 char buf[XWLIBCFG_XWLOG_BUFSIZE];
39
40 va_start(args, fmt);
41 i = vsnprintf(buf, sizeof(buf), fmt, args);
42 va_end(args);
43 if (i < 0) {
44 goto err_vsnprintf;
45 }
46 sz = (xwsz_t)i;
47
48 /* Print the string */
49#if defined(SOCCFG_LOG) && (1 == SOCCFG_LOG)
50 rc = soc_log_write(buf, &sz);
51 if (rc < 0) {
52 i = (int)rc;
53 } else {
54 i = (int)sz;
55 }
56#elif defined(BRDCFG_LOG) && (1 == BRDCFG_LOG)
57 rc = board_log_write(buf, &sz);
58 if (rc < 0) {
59 i = (int)rc;
60 } else {
61 i = (int)sz;
62 }
63#else
64# warning "Can't find the log configurations!"
65 i = 0;
66#endif
67
68err_vsnprintf:
69 return i;
70}
signed long xwer_t
Definition type.h:554
unsigned long xwsz_t
Definition type.h:339
xwer_t board_log_write(const char *s, xwsz_t *n)
xwer_t soc_log_write(const char *s, xwsz_t *n)
函数调用图: