AntPerformance.h 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. //
  2. // AntPerformance.h
  3. // APRemoteLogging
  4. //
  5. // Created by 卡迩 on 2017/9/29.
  6. // Copyright © 2017年 Alipay. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "AntLogLevel.h"
  10. #import "ATEvent.h"
  11. /**
  12. * 性能埋点模型
  13. */
  14. @interface AntPerformance : ATEvent
  15. @property (nonatomic, copy) NSString *bizType; /**< 字段12,业务类型,可用于控制日志分文件存储以及上报*/
  16. @property (nonatomic, copy) NSString *renderBiz; /**< 字段12,最终落在日志中的业务类型,该值为空时取bizType字段*/
  17. @property (nonatomic, copy) NSString *subType; /**< 字段13,子类别*/
  18. @property (nonatomic, copy) NSString *extParam1; /**< 字段14,扩展字段1*/
  19. @property (nonatomic, copy) NSString *extParam2; /**< 字段15,扩展字段2*/
  20. @property (nonatomic, copy) NSString *extParam3; /**< 字段16,扩展字段3*/
  21. @property (nonatomic, copy) NSDictionary *extParam4;/**< 字段17,扩展字段4,将key-value对转换成‘key=value^key1=value1’的形式落入日志.*/
  22. @property (nonatomic, copy) NSString *pageId; /**< 字段32,页面Id,格式为"spmId__utdid__timestampIn64_"*/
  23. @property (nonatomic, copy) NSString *appId; /**< 字段34,子应用ID*/
  24. @property (nonatomic, assign) AntLogLevel logLevel; /**< 字段37,日志等级,可用于控制日志上报*/
  25. @end
  26. @interface AntPerformance ()
  27. @property (nonatomic, strong) NSString *header; /**< 字段1,日志头*/
  28. @property (nonatomic, strong) NSDate *timestamp; /**< 字段2,客户端日志时间*/
  29. @property (nonatomic, strong) NSString *platformId; /**< 字段3,客户端日志时间*/
  30. @property (nonatomic, strong) NSString *clientVersion;/**< 字段4,客户端版本*/
  31. @property (nonatomic, strong) NSString *logVersion; /**< 字段5,客户端日志模型版本号*/
  32. @property (nonatomic, strong) NSString *clientId; /**< 字段6,[imei]|[imsi] 客户端ID*/
  33. @property (nonatomic, strong) NSString *sessionId; /**< 字段7,客户端会话ID*/
  34. @property (nonatomic, strong) NSString *userId; /**< 字段8,用户ID*/
  35. @property (nonatomic, strong) NSString *trackId; /**< 字段9,当前ACTIONID*/
  36. @property (nonatomic, strong) NSString *trackToken; /**< 字段10,当前ACTION_TOKEN*/
  37. @property (nonatomic, assign) unsigned long long sampleRate; /**< 字段11,当前抽样率0~1000,代表0.1%~100%*/
  38. @property (nonatomic, strong) NSString *systemName; /**< 字段18,系统名, e.g. "iOS" */
  39. @property (nonatomic, strong) NSString *systemVersion;/**< 字段19,操作系统版本号*/
  40. @property (nonatomic, strong) NSString *networkType; /**< 字段20,网络类型*/
  41. @property (nonatomic, strong) NSString *deviceModel; /**< 字段21,手机型号*/
  42. @property (nonatomic, strong) NSString *innerVersion; /**< 字段22,内部版本号*/
  43. @property (nonatomic, strong) NSString *distributionChannel; /**< 字段23,App发布渠道*/
  44. @property (nonatomic, strong) NSString *utdid; /**< 字段24,utdid设备ID*/
  45. @property (nonatomic, strong) NSString *language; /**< 字段25,App语言*/
  46. @property (nonatomic, strong) NSString *cpuCoreNum; /**< 字段26,Android独有,cpu核数*/
  47. @property (nonatomic, strong) NSString *cpuMaxFreq; /**< 字段27.Android独有,CPU MaxFreq,单位MHz*/
  48. @property (nonatomic, strong) NSString *totalMem; /**< 字段28.Android独有,TotalMem,单位MB*/
  49. @property (nonatomic, strong) NSString *hpVersion; /**< 字段29,hotpatch版本号*/
  50. @property (nonatomic, strong) NSString *apk; /**< 字段30.Android独有,apk唯一ID*/
  51. @property (nonatomic, strong) NSString *foundationExtended; /**< 字段31.全局扩展字段*/
  52. @property (nonatomic, strong) NSString *resolution; /**< 字段33,分辨率*/
  53. @property (nonatomic, strong) NSString *processName; /**< 字段35,Android独有,进程名*/
  54. @property (nonatomic, strong) NSString *logSequenceId;/**< 字段36,日志序列号*/
  55. @property (nonatomic, strong) NSString *logIDFA; /**< 字段38,IDFA值*/
  56. @end
  57. @interface AntPerformance (Compatibility)
  58. + (AntPerformance *)performanceWithBizType:(NSString *)bizType
  59. subType:(NSString *) subType
  60. extraParams:(NSArray *) extraParams
  61. actionControlID:(NSString *) controlID
  62. actionToken:(NSString *) actionToken
  63. formatterDictionary:(NSDictionary *)formatterDictionary
  64. perUploadNum:(NSUInteger) num;
  65. @end