由于该接口被广泛调用,无法通过走读形式排查。故对接口进行了一次封装,然后对着日志轻松排查。
封装示例:
点击(此处)折叠或打开
- #if DEBUG
- #define xx(szValue,acName,iValueLen) __xx(szValue,acName,iValueLen)
- #else
- static inline int mysyslog_message(const char *fmt , ...)
- {
- FILE *fp = NULL;
- fp = fopen("/tmp/nvram.log","a");
- if (fp == NULL)
- {
- printf("open file failure");
- }
- char szBuf[1024]= {0};
- va_list ap;
- if (fmt == NULL)
- {
- fclose(fp);
- return;
- }
- va_start(ap, fmt);
- vsprintf(szBuf,fmt, ap);
- va_end(ap);
- fputs(szBuf, fp);
- fclose(fp);
- return 1;
- }
- #define xx(szValue,acName,iValueLen) mysyslog_message("[%s][%d][%s]nvram_get\n",__FILE__,__LINE__,__FUNCTION__)?__xx(szValue,acName,iValueLen):1
- #endif