Files
youle_app_ios/Pods/Qiniu/QiniuSDK/Collect/QNReportItem.h

144 lines
5.5 KiB
Objective-C

//
// QNReportItem.h
// QiniuSDK
//
// Created by yangsen on 2020/5/12.
// Copyright © 2020 Qiniu. All rights reserved.
//
#import "QNUploadInfoReporter.h"
#import "QNResponseInfo.h"
NS_ASSUME_NONNULL_BEGIN
@interface QNReportItem : NSObject
+ (instancetype)item;
/// 设置打点日志字段
/// @param value log value
/// @param key log key
- (void)setReportValue:(id _Nullable)value forKey:(NSString * _Nullable)key;
/// 移除打点日志字段
/// @param key log key
- (void)removeReportValueForKey:(NSString * _Nullable)key;
@end
@interface QNUploadInfoReporter(ReportItem)
- (void)reportItem:(QNReportItem *)item token:(NSString *)token;
@end
@interface QNResponseInfo(Report)
@property(nonatomic, assign, readonly)NSNumber *requestReportStatusCode;
@property(nonatomic, copy, readonly)NSString *requestReportErrorType;
@property(nonatomic, copy, readonly)NSString *qualityResult;
@end
//MARK:-- 日志类型
extern NSString *const QNReportLogTypeRequest;
extern NSString *const QNReportLogTypeBlock;
extern NSString *const QNReportLogTypeQuality;
//MARK:-- 请求信息打点⽇志
extern NSString *const QNReportRequestKeyLogType;
extern NSString *const QNReportRequestKeyUpTime;
extern NSString *const QNReportRequestKeyStatusCode;
extern NSString *const QNReportRequestKeyRequestId;
extern NSString *const QNReportRequestKeyHost;
extern NSString *const QNReportRequestKeyHttpVersion;
extern NSString *const QNReportRequestKeyRemoteIp;
extern NSString *const QNReportRequestKeyPort;
extern NSString *const QNReportRequestKeyTargetBucket;
extern NSString *const QNReportRequestKeyTargetKey;
extern NSString *const QNReportRequestKeyTotalElapsedTime;
extern NSString *const QNReportRequestKeyDnsElapsedTime;
extern NSString *const QNReportRequestKeyConnectElapsedTime;
extern NSString *const QNReportRequestKeyTLSConnectElapsedTime;
extern NSString *const QNReportRequestKeyRequestElapsedTime;
extern NSString *const QNReportRequestKeyWaitElapsedTime;
extern NSString *const QNReportRequestKeyResponseElapsedTime;
extern NSString *const QNReportRequestKeyFileOffset;
extern NSString *const QNReportRequestKeyBytesSent;
extern NSString *const QNReportRequestKeyBytesTotal;
extern NSString *const QNReportRequestKeyPid;
extern NSString *const QNReportRequestKeyTid;
extern NSString *const QNReportRequestKeyTargetRegionId;
extern NSString *const QNReportRequestKeyCurrentRegionId;
extern NSString *const QNReportRequestKeyErrorType;
extern NSString *const QNReportRequestKeyErrorDescription;
extern NSString *const QNReportRequestKeyUpType;
extern NSString *const QNReportRequestKeyOsName;
extern NSString *const QNReportRequestKeyOsVersion;
extern NSString *const QNReportRequestKeySDKName;
extern NSString *const QNReportRequestKeySDKVersion;
extern NSString *const QNReportRequestKeyClientTime;
extern NSString *const QNReportRequestKeyHttpClient;
extern NSString *const QNReportRequestKeyNetworkType;
extern NSString *const QNReportRequestKeySignalStrength;
extern NSString *const QNReportRequestKeyPrefetchedDnsSource;
extern NSString *const QNReportRequestKeyDnsSource;
extern NSString *const QNReportRequestKeyDnsErrorMessage;
extern NSString *const QNReportRequestKeyPrefetchedBefore;
extern NSString *const QNReportRequestKeyPrefetchedErrorMessage;
extern NSString *const QNReportRequestKeyNetworkMeasuring;
extern NSString *const QNReportRequestKeyPerceptiveSpeed;
extern NSString *const QNReportRequestKeyHijacking;
//MARK:-- 分块上传统计⽇志
extern NSString *const QNReportBlockKeyLogType;
extern NSString *const QNReportBlockKeyUpTime;
extern NSString *const QNReportBlockKeyTargetBucket;
extern NSString *const QNReportBlockKeyTargetKey;
extern NSString *const QNReportBlockKeyTargetRegionId;
extern NSString *const QNReportBlockKeyCurrentRegionId;
extern NSString *const QNReportBlockKeyTotalElapsedTime;
extern NSString *const QNReportBlockKeyBytesSent;
extern NSString *const QNReportBlockKeyRecoveredFrom;
extern NSString *const QNReportBlockKeyFileSize;
extern NSString *const QNReportBlockKeyPid;
extern NSString *const QNReportBlockKeyTid;
extern NSString *const QNReportBlockKeyUpApiVersion;
extern NSString *const QNReportBlockKeyClientTime;
extern NSString *const QNReportBlockKeyOsName;
extern NSString *const QNReportBlockKeyOsVersion;
extern NSString *const QNReportBlockKeySDKName;
extern NSString *const QNReportBlockKeySDKVersion;
extern NSString *const QNReportBlockKeyPerceptiveSpeed;
extern NSString *const QNReportBlockKeyHijacking;
//MARK:-- 上传质量统计
extern NSString *const QNReportQualityKeyLogType;
extern NSString *const QNReportQualityKeyUpType;
extern NSString *const QNReportQualityKeyUpTime;
extern NSString *const QNReportQualityKeyResult;
extern NSString *const QNReportQualityKeyTargetBucket;
extern NSString *const QNReportQualityKeyTargetKey;
extern NSString *const QNReportQualityKeyTotalElapsedTime;
extern NSString *const QNReportQualityKeyUcQueryElapsedTime;
extern NSString *const QNReportQualityKeyRequestsCount;
extern NSString *const QNReportQualityKeyRegionsCount;
extern NSString *const QNReportQualityKeyBytesSent;
extern NSString *const QNReportQualityKeyFileSize;
extern NSString *const QNReportQualityKeyCloudType;
extern NSString *const QNReportQualityKeyErrorType;
extern NSString *const QNReportQualityKeyErrorDescription;
extern NSString *const QNReportQualityKeyOsName;
extern NSString *const QNReportQualityKeyOsVersion;
extern NSString *const QNReportQualityKeySDKName;
extern NSString *const QNReportQualityKeySDKVersion;
extern NSString *const QNReportQualityKeyPerceptiveSpeed;
extern NSString *const QNReportQualityKeyHijacking;
NS_ASSUME_NONNULL_END