iOS 自定义日志输出

在做iOS开发过程中,我们经常需要输出日志来查看某些数据是否打印出来,或者查看查个类是否被调用了。

系统默认的是NSLog(@"xxxx %d",1) ,但如果该APP要发布到商店,就要把这些日志全部都注释掉,要不是的话,要非常占内存。

当前的做法是,在.pch 中,定义一个宏:

#ifdef DEBUG // 处于开发阶段
#define HWLog(...) NSLog(__VA_ARGS__)
#else // 处于发布阶段
#define HWLog(...)
#endif

调用时,直接写:

HWLog(@"composeMsg");

上面的代码写得很清楚,如果是开发阶段,则打印出相应的日志,如果是发布状态,这些日志全部都不会输出,相当于注释:

//HWLog(@"composeMsg");
时间: 2024-12-05 05:26:43

iOS 自定义日志输出的相关文章

JAVA中自定义日志输出到指定文件

虽然JAVA日志包提供的功能已经很方便,但是假如我们有新的需求如:将日志文件保存到我们希望的位置并在日志文件名中添加日期且保存指定时间内的日志文件:按照自己希望的格式输出日志内容.对于这些需求我们只要扩展java.util.logging.StreamHandler(Handler的子类),java.util.logging.Formatter创建自定义的处理器及格式化器即可以实现.下面是个例子,它分别创建了Handler及Formatter的子类,以便实现将日志文件保存到我们需要的位置,及在日

HAproxy增加日志记录功能和自定义日志输出内容、格式

一.增加haproxy日志记录功能 1.1 由于数据分析的需要,我们必须打开haproxy日志,记录相关信息. 在配置前,我们先来了解一下日志的level:local0-local7 16-23保留为本地使用 emerg 0 系统不可用     alert 1 必须马上采取行动的事件     crit 2 关键的事件     err 3 错误事件     warning 4 警告事件     notice 5 普通但重要的事件     info 6 有用的信息     debug 7 调试信息

Django 中使用 logging 配置 logger 自定义日志输出

在使用 django 开发过程中,默认的日志输出是不能满足我们去排查问题的,往往需要自定义的日志输出,帮助我们去排查程序BUG,定位问题原因. 在使用 django 的开发过程中,我使用的是 python 内置日志模块 logginglogging 的详细使用讲解我就不多说了,度娘一抓一大抓:我只记录下我在 django settings 中的 logger 配置.方便以后使用 以下在我在 settings 中定义的 logger:# Custom output log LOGGING = {'

Android O版本自定义日志输出目录

Android原生系统默认情况下,log是不输出到文件的,这样对于只能用模拟器进行开发实验的人来说,不是很方便. 当然android默认不输出log到文件也是考虑到输入日志到文件会引起性能问题. 下面提供一种将日志定向到文件的方法 修改system/core/logcat/logcatd.rc文件,在文件的最后添加如何代码: # define my log directory service applogcat /system/bin/logcat -v threadtime -r 4096 -

Python之向日志输出中添加上下文信息

除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息.比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如:远程客户端的IP地址和用户名.这里我们来介绍以下几种实现方式: 通过向日志记录函数传递一个extra参数引入上下文信息 使用LoggerAdapters引入上下文信息 使用Filters引入上下文信息 一.通过向日志记录函数传递一个extra参数引入上下文信息 前面我们提到过,可以通过向日志记录函数传递一个extra参数来实现向日志输出

django 开发之自定义日志器

需求 在我们的真实环境中当我们出现错误的时候我们要记录下来,便于我们分析差错. 关于日志的代码文件 1 # 自定义日志输出信息 2 LOGGING = { 3 'version': 1, 4 'disable_existing_loggers': True, 5 'formatters': { 6 'standard': { 7 'format': '%(asctime)s [%(threadName)s:%(thread)d] [%(name)s:%(lineno)d] [%(module)s

【转】Python之向日志输出中添加上下文信息

[转]Python之向日志输出中添加上下文信息 除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息.比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如:远程客户端的IP地址和用户名.这里我们来介绍以下几种实现方式: 通过向日志记录函数传递一个extra参数引入上下文信息 使用LoggerAdapters引入上下文信息 使用Filters引入上下文信息 一.通过向日志记录函数传递一个extra参数引入上下文信息 前面我们提到过,可以通过向日

iOS 将Log日志输出到文件中保存

对于那些做后端开发的工程师来说,看LOG解Bug应该是理所当然的事,但我接触到的移动应用开发的工程师里面,很多人并没有这个意识,查Bug时总是一遍一遍的试图重现,试图调试,特别是对一些不太容易重现的Bug经常焦头烂额.而且iOS的异常机制比较复杂,Objective-C的语言驾驭也需要一定的功力,做出来的应用有时候挺容易产生崩溃闪退.一遍一遍的用XCode取应用崩溃记录.解析符号,通常不胜其烦,有时还对着解析出来的调用栈发呆,因为程序当时的内部状态常常难以看明白,只能去猜测. 对于真机,日志没法

log4j(五)——如何控制不同目的地的日志输出?

一:测试环境与log4j(一)--为什么要使用log4j?一样,这里不再重述 二:老规矩,先来个栗子,然后再聊聊感受 import org.apache.log4j.*; import java.io.*; public class UseLog4j { //日志记录器 private static Logger LOGGER = LogManager.getLogger(UseLog4j.class); //程序入口--主函数 public static void main(String[]a