5 // Copyright (c) 2015 Crashlytics, Inc. All rights reserved.
8 #import "CLSAttributes.h"
9 #import <Foundation/Foundation.h>
11 NS_ASSUME_NONNULL_BEGIN
18 * The CLS_LOG macro provides as easy way to gather more information in your log messages that are
19 * sent with your crash data. CLS_LOG prepends your custom log message with the function name and
20 * line number where the macro was used. If your app was built with the DEBUG preprocessor macro
21 * defined CLS_LOG uses the CLSNSLog function which forwards your log message to NSLog and CLSLog.
22 * If the DEBUG preprocessor macro is not defined CLS_LOG uses CLSLog only.
25 * -[AppDelegate login:] line 134 $ login start
27 * If you would like to change this macro, create a new header file, unset our define and then define
28 * your own version. Make sure this new header file is imported after the Crashlytics header file.
31 * #define CLS_LOG(__FORMAT__, ...) CLSNSLog...
36 #define CLS_LOG(__FORMAT__, ...) CLSNSLog((@"%s line %d $ " __FORMAT__), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
38 #define CLS_LOG(__FORMAT__, ...) CLSLog((@"%s line %d $ " __FORMAT__), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
44 * Add logging that will be sent with your crash data. This logging will not show up in the system.log
45 * and will only be visible in your Crashlytics dashboard.
50 OBJC_EXTERN void CLSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2);
51 OBJC_EXTERN void CLSLogv(NSString *format, va_list ap) NS_FORMAT_FUNCTION(1,0);
55 * Add logging that will be sent with your crash data. This logging will show up in the system.log
56 * and your Crashlytics dashboard. It is not recommended for Release builds.
59 OBJC_EXTERN void CLSNSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2);
60 OBJC_EXTERN void CLSNSLogv(NSString *format, va_list ap) NS_FORMAT_FUNCTION(1,0);