Splunk iOS RUM インストルメンテーションを設定する 🔗
Splunk OpenTelemetry Instrumentation for iOS の iOS RUM ライブラリを設定することで、カスタム属性の追加、環境やアプリケーションに合わせたインストルメンテーション、サンプリングのカスタマイズなどを行うことができます。
iOS RUM ライブラリを設定するには、SplunkRum
モジュールを初期化する際にメソッドとして設定を渡します。Splunk Observability Cloud レルムと RUM トークンは、SplunkRumBuilder
関数の引数として渡されます。
次の例は、RUMトークン、レルム、環境名、アプリ名、およびその他の設定を構成する方法を示しています:
import SplunkOtel
//..
SplunkRumBuilder(realm: "<realm>", rumAuth: "<rum-token>")
// Call functions to configure additional options
.allowInsecureBeacon(enabled: true)
.debug(enabled: true)
.globalAttributes(globalAttributes: ["strKey": "strVal", "intKey": 7, "doubleKey": 1.5, "boolKey": true])
.deploymentEnvironment(environment: "env")
.setApplicationName("<your_app_name>")
.ignoreURLs(ignoreURLs: try! NSRegularExpression(pattern: ".*ignore_this.*"))
.screenNameSpans(enabled: true)
// The build method always come last
.build()
@import SplunkOtel;
//...
SplunkRumBuilder *builder = [[SplunkRumBuilder alloc] initWithBeaconUrl:@"https://rum-ingest.<realm>.signalfx.com/v1/rum" rumAuth: @"<rum-token>"]];
[builder allowInsecureBeaconWithEnabled:true];
[builder globalAttributesWithGlobalAttributes:[NSDictionary dictionary]];
[builder debugWithEnabled:true];
[builder deploymentEnvironmentWithEnvironment:@"environment-name"];
[builder setApplicationName:@"<your_app_name>"];
NSError* error = nil;
[builder ignoreURLsWithIgnoreURLs: [NSRegularExpression regularExpressionWithPattern: @".*ignore_this.*" options: 0 error: &error]];
[builder screenNameSpansWithEnabled:true];
// The build method always come last
[builder build];
一般設定 🔗
iOS RUMライブラリを構成するには、以下の設定を使用します:
オプション |
説明 |
---|---|
|
組織のレルムの名前、例えば |
|
エージェントがテレメトリデータを Splunk Observability Cloud に送信することを許可する RUM トークン。RUM アクセストークンを生成するには、Generate your RUM access token in Splunk Observability Cloud を参照してください。 |
|
エージェントが収集したテレメトリを送信するインジェスト URL。URL には Splunk Observability Cloud のレルムを含める必要があります。たとえば、 |
|
すべてのスパンに追加される属性を設定します。属性は、カンマで区切られたキーと値のペアの配列として定義されます。例: |
|
アプリケーションによって生成されるすべてのスパンの環境。例えば、 |
|
アプリケーション名を設定します。設定しない場合、ライブラリは代わりにバンドル名を使用します。デフォルト値は nil です。 |
iOS RUMの特徴 🔗
iOS RUMインストルメンテーションの動作を設定するには、以下の設定を使用します:
オプション |
説明 |
---|---|
|
HTTPアクティビティを報告する際に無視したいURLにマッチする正規表現パターン。 |
|
スパンを修正または無視するための |
|
サンプリングするセッションの割合。 |
|
|
|
エクスポートされたスパンのキャッシュを有効にします。すべてのスパンはローカル・ストレージに書き込まれ、エクスポートが成功すると削除されます。デフォルト値は |
|
ディスク・キャッシュからスパンが削除され始める閾値(メガバイト単位)。最も古いスパンが最初に削除されます。ディスク・キャッシュが有効な場合にのみ適用されます。デフォルト値は |
|
連続する2つのスパンエクスポート間の最大間隔を設定します。デフォルト値は5秒です。 |
|
低速レンダリング検出機能を有効にします。デフォルト値は |
|
ミリ秒単位で指定された時間以上かかったすべてのフレームを遅いとしてタグ付けするオプション設定。デフォルト値は |
|
ミリ秒単位で指定された時間以上かかったすべてのフレームを凍結としてタグ付けするオプション設定。デフォルト値は |
|
デバッグロギングを有効にします。デフォルト値は |
インストルメンテーション設定 🔗
以下の設定を使用して、特定のデータの収集を有効または無効にします:
オプション |
説明 |
---|---|
|
|
|
スクリーン名の変更に対するスパンの作成を有効にします。デフォルト値は |
|
ネットワークアクティビティ用のスパンの作成を有効にします。デフォルト値は |