콘텐츠로 이동

빠른 시작

이 문서는 macOS RUM SDK를 가장 짧은 경로로 연동하여 최소한의 단계로 데이터 업로드를 검증할 수 있도록 안내합니다.

사전 준비

시작하기 전에 다음 준비를 완료하세요.

  1. 실제 사용자 모니터링(RUM) 에서 macOS 애플리케이션을 생성하고 RUM App ID를 획득합니다.
  2. 업로드 주소와 인증 방식을 확인합니다.
  3. 로컬 환경 배포: datakitUrl 준비
  4. 공용 네트워크 DataWay: datawayUrl 및 clientToken 준비
  5. 프로젝트에 SDK 설치가 완료되었는지 확인합니다. CocoaPods 또는 Swift Package Manager를 지원합니다.

통합 단계

  1. 프로젝트에 FTMacOSSDK를 설치합니다.
  2. 애플리케이션 시작 전에 FTSDKConfig를 초기화합니다.
  3. FTRumConfig를 초기화하고 View, Action, Resource, 크래시 및 ANR(앱 멈춤) 수집을 활성화합니다.
  4. 디버그 로그를 켜고 애플리케이션을 실행하여 창 전환 또는 네트워크 요청을 트리거합니다.
  5. 콘솔과 Guance 플랫폼에서 데이터가 성공적으로 업로드되었는지 확인합니다.

SDK 설치

설치 방법은 애플리케이션 연동을 직접 참조하세요.

빠른 검증만 원할 경우 CocoaPods 또는 Swift Package Manager를 우선 사용하는 것을 권장합니다.

최소 초기화 예제

첫 번째로 표시되는 뷰 NSViewController의 viewDidLoad 메서드와 NSWindowController의 windowDidLoad 메서드 호출이 AppDelegate의 applicationDidFinishLaunching보다 먼저 실행되므로, 첫 번째 뷰의 생명 주기 수집이 비정상적으로 동작하는 것을 방지하기 위해 main.m 또는 main.swift에서 SDK를 초기화하는 것을 권장합니다.

// main.m 파일
#import "FTMacOSSDK.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // 로컬 환경 배포 시 [[FTSDKConfig alloc] initWithDatakitUrl:datakitUrl] 사용
        FTSDKConfig *config = [[FTSDKConfig alloc] initWithDatawayUrl:datawayUrl clientToken:clientToken];
        config.enableSDKDebugLog = YES;
        [FTSDKAgent startWithConfigOptions:config];

        FTRumConfig *rumConfig = [[FTRumConfig alloc] initWithAppid:appid];
        rumConfig.enableTrackAppCrash = YES;
        rumConfig.enableTrackAppANR = YES;
        rumConfig.enableTrackAppFreeze = YES;
        rumConfig.enableTraceUserAction = YES;
        rumConfig.enableTraceUserView = YES;
        rumConfig.enableTraceUserResource = YES;
        rumConfig.errorMonitorType = FTErrorMonitorAll;
        rumConfig.deviceMetricsMonitorType = FTDeviceMetricsMonitorAll;
        [[FTSDKAgent sharedInstance] startRumWithConfigOptions:rumConfig];
    }
    return NSApplicationMain(argc, argv);
}
import Cocoa
import FTMacOSSDK

let delegate = AppDelegate()
NSApplication.shared.delegate = delegate

// 로컬 환경 배포 시 FTSDKConfig(datakitUrl: datakitUrl) 사용
let config = FTSDKConfig(datawayUrl: datawayUrl, clientToken: clientToken)
config.enableSDKDebugLog = true
FTSDKAgent.start(withConfigOptions: config)

let rumConfig = FTRumConfig(appid: appid)
rumConfig.enableTraceUserAction = true
rumConfig.enableTrackAppANR = true
rumConfig.enableTraceUserView = true
rumConfig.enableTraceUserResource = true
rumConfig.enableTrackAppCrash = true
rumConfig.enableTrackAppFreeze = true
rumConfig.errorMonitorType = .all
rumConfig.deviceMetricsMonitorType = .all
rumConfig.monitorFrequency = .rare
FTSDKAgent.sharedInstance().startRum(withConfigOptions: rumConfig)

_ = NSApplicationMain(CommandLine.argc, CommandLine.unsafeArgv)

Swift 사용 시 먼저 main.swift 파일을 생성하고 AppDelegate.swift에서 @main 또는 @NSApplicationMain을 제거하세요.

선택 사항: Log 및 Trace 초기화

로그 수집 또는 분산 추적이 추가로 필요한 경우 다음 초기화를 계속 추가할 수 있습니다.

FTLoggerConfig *loggerConfig = [[FTLoggerConfig alloc] init];
loggerConfig.enableCustomLog = YES;
loggerConfig.enableLinkRumData = YES;
[[FTSDKAgent sharedInstance] startLoggerWithConfigOptions:loggerConfig];

FTTraceConfig *traceConfig = [[FTTraceConfig alloc] init];
traceConfig.enableAutoTrace = YES;
traceConfig.enableLinkRumData = YES;
[[FTSDKAgent sharedInstance] startTraceWithConfigOptions:traceConfig];
let loggerConfig = FTLoggerConfig()
loggerConfig.enableCustomLog = true
loggerConfig.enableLinkRumData = true
FTSDKAgent.sharedInstance().startLogger(withConfigOptions: loggerConfig)

let traceConfig = FTTraceConfig()
traceConfig.enableAutoTrace = true
traceConfig.enableLinkRumData = true
FTSDKAgent.sharedInstance().startTrace(withConfigOptions: traceConfig)

연동 성공 확인

  1. enableSDKDebugLog = YES/true를 켜고 애플리케이션을 실행합니다.
  2. 창을 열거나 URLSession 네트워크 요청을 실행합니다.
  3. Xcode 콘솔에서 SDK 초기화 및 데이터 동기화 관련 로그가 나타나는지 확인합니다.
  4. Guance 콘솔로 돌아가 애플리케이션에서 해당 RUM 데이터가 표시되는지 확인합니다.

추가 문제 해결이 필요하면 문제 해결을 참조하세요.

다음 단계

문서 평가

이 페이지가 도움이 되었나요?