DynamicLogging.m 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. #import "DynamicLogging.h"
  2. #import "PerformanceTesting.h"
  3. #import "DDLogMacros.h"
  4. #define FILENAME @"DynamicLogging"
  5. // Debug levels: off, error, warn, info, verbose
  6. static DDLogLevel ddLogLevel = DDLogLevelWarning; // NOT CONST
  7. @implementation DynamicLogging
  8. + (DDLogLevel)ddLogLevel
  9. {
  10. return ddLogLevel;
  11. }
  12. + (void)ddSetLogLevel:(DDLogLevel)logLevel
  13. {
  14. ddLogLevel = logLevel;
  15. }
  16. + (void)speedTest0
  17. {
  18. // Log statements that will not be executed due to log level
  19. for (NSUInteger i = 0; i < SPEED_TEST_0_COUNT; i++)
  20. {
  21. DDLogVerbose(@"%@: SpeedTest0 - %lu", FILENAME, (unsigned long)i);
  22. }
  23. }
  24. + (void)speedTest1
  25. {
  26. // Log statements that will be executed asynchronously
  27. for (NSUInteger i = 0; i < SPEED_TEST_1_COUNT; i++)
  28. {
  29. DDLogWarn(@"%@: SpeedTest1 - %lu", FILENAME, (unsigned long)i);
  30. }
  31. }
  32. + (void)speedTest2
  33. {
  34. // Log statements that will be executed synchronously
  35. for (NSUInteger i = 0; i < SPEED_TEST_2_COUNT; i++)
  36. {
  37. DDLogError(@"%@: SpeedTest2 - %lu", FILENAME, (unsigned long)i);
  38. }
  39. }
  40. + (void)speedTest3
  41. {
  42. // Even Spread:
  43. //
  44. // 25% - Not executed due to log level
  45. // 50% - Executed asynchronously
  46. // 25% - Executed synchronously
  47. for (NSUInteger i = 0; i < SPEED_TEST_3_COUNT; i++)
  48. {
  49. DDLogError(@"%@: SpeedTest3A - %lu", FILENAME, (unsigned long)i);
  50. }
  51. for (NSUInteger i = 0; i < SPEED_TEST_3_COUNT; i++)
  52. {
  53. DDLogWarn(@"%@: SpeedTest3B - %lu", FILENAME, (unsigned long)i);
  54. }
  55. for (NSUInteger i = 0; i < SPEED_TEST_3_COUNT; i++)
  56. {
  57. DDLogInfo(@"%@: SpeedTest3C - %lu", FILENAME, (unsigned long)i);
  58. }
  59. for (NSUInteger i = 0; i < SPEED_TEST_3_COUNT; i++)
  60. {
  61. DDLogVerbose(@"%@: SpeedTest3D - %lu", FILENAME, (unsigned long)i);
  62. }
  63. }
  64. + (void)speedTest4
  65. {
  66. // Custom Spread
  67. for (NSUInteger i = 0; i < SPEED_TEST_4_ERROR_COUNT; i++)
  68. {
  69. DDLogError(@"%@: SpeedTest4A - %lu", FILENAME, (unsigned long)i);
  70. }
  71. for (NSUInteger i = 0; i < SPEED_TEST_4_WARN_COUNT; i++)
  72. {
  73. DDLogWarn(@"%@: SpeedTest4B - %lu", FILENAME, (unsigned long)i);
  74. }
  75. for (NSUInteger i = 0; i < SPEED_TEST_4_INFO_COUNT; i++)
  76. {
  77. DDLogInfo(@"%@: SpeedTest4C - %lu", FILENAME, (unsigned long)i);
  78. }
  79. for (NSUInteger i = 0; i < SPEED_TEST_4_VERBOSE_COUNT; i++)
  80. {
  81. DDLogVerbose(@"%@: SpeedTest4D - %lu", FILENAME, (unsigned long)i);
  82. }
  83. }
  84. @end