このトピックでは、iOSデバイスからFull-stack Observabilityアプリケーションにユーザーエクスペリエンスのモニタリングデータを収集する方法について説明します。
前提条件
フルスタックのObservabilityインスタンスまたはトレースインスタンスが作成されます。 フルスタックのObservabilityインスタンスを推奨します。 詳細については、「インスタンスの作成」および「トレースインスタンスの作成」をご参照ください。
Full-stack Observabilityインスタンスのバージョンが2.1.0以降であることを確認してください。 インスタンスリストでバージョン情報を表示できます。
このトピックでは、Full-stack Observabilityアプリケーションを使用し、モニタリングデータをFull-stack Observabilityインスタンスに収集します。
ステップ1: SDKの統合
プロジェクトフォルダでPodfileを作成し、Podfileで次の設定を構成します。
# Specify a source.
source 'https://gitee.com/aliyun-sls/Specs.git'
# Add the following pods:
pod 'AliyunLogProducer', '4.0.0'
pod 'AliyunLogOTelCommon', '4.0.0'
pod 'AliyunLogOtlpExporter', '4.0.0'
pod 'AliyunLogCrashReporter', '4.0.0'
ステップ2: SDKの初期化
次のサンプルコードに基づいてSDKを初期化します。
[ConfigurationManager.shared setProviderWithAccessKeyProvider:^AccessKey * _Nullable(NSString * _Nonnull scope) {
return [AccessKey initWithAccessKeyId:@"${access-key-id}"
accessKeySecret:@"${access-key-secret}"
accessKeySecuritToken:@"${access-key-token}"
];
} workspaceProvider:^Workspace * _Nullable(NSString * _Nonnull scope) {
return [Workspace initWithEndpoint:@"https://${endpoint}"
project:@"${project}"
instanceId:@"${instanceId}"
];
} environmentProvider:^Environment * _Nullable(NSString * _Nonnull scope) {
// Configure the environment information.
return [Environment initWithEnv:@"default" // The default value is default. In most cases, we recommend you set this parameter to dev if you use the debug version and to pub if you use the release version.
uid:@"123456780" // The user ID. This parameter is optional.
utdid:@"" // The device ID. This parameter is optional. If you specify an invalid value, the SDK automatically generates a valid value.
channel:@"" // The channel. This parameter is optional.
];
}];
// In most cases, we recommend that you set this parameter to YES if you use the debug version and to NO if you use the release version.
BOOL debuggable = NO;
[[CrashReporter shared] initWithDebuggable:debuggable];
変数
変数 | 説明 | 例 |
${endpoint} | Simple Log Serviceプロジェクトのエンドポイント。 | cn-hangzhou.log.aliyuncs.com |
${project} | Simple Log Serviceプロジェクトの名前。 | test-project |
${instance} | Full-stack ObservabilityインスタンスのID。 詳細は、インスタンスの作成をご参照ください。 | テストトレース |
${access-key-id} | Alibaba CloudアカウントのAccessKey ID。 Simple Log Serviceプロジェクトの書き込み権限のみを持つResource Access Management (RAM) ユーザーのAccessKeyペアを使用することを推奨します。 AccessKey ペアは、AccessKey ID と AccessKey Secret で構成されます。 指定したプロジェクトの書き込み権限をRAMユーザーに付与する方法の詳細については、「カスタムポリシーを使用してRAMユーザーに権限を付与する」をご参照ください。 AccessKeyペアを取得する方法の詳細については、「AccessKeyペア」をご参照ください。 | なし |
${access-key-secret} | Alibaba CloudアカウントのAccessKeyシークレット。 Simple Log Serviceプロジェクトに対する書き込み権限のみを持つRAMユーザーのAccessKeyペアを使用することを推奨します。 | なし |
${access-key-token} | Alibaba CloudアカウントのAccessKeyトークン。 この変数は、Security Token Service (STS) 操作を呼び出してAccessKeyペアを取得した場合にのみ必要です。 |