- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
クラッシュレポートとエラー追跡を有効にすると、リアルユーザーモニタリングで包括的なクラッシュレポートとエラートレンドを取得できます。
クラッシュレポートは Error Tracking に表示されます。
Datadog Flutter SDK for RUM をまだセットアップしていない場合は、アプリ内セットアップ手順に従うか、Flutter セットアップドキュメントを参照してください。
初期化スニペットを更新し、nativeCrashReportEnabled
を true
に設定することで iOS と Android のネイティブクラッシュレポートを有効化します。
例:
final configuration = DatadogConfiguration(
clientToken: '<DD_CLIENT_TOKEN>'
env: '<DD_ENV>'
site: DatadogSite.us1,
nativeCrashReportEnabled: true, // Set this flag
loggingConfiguration: DatadogLoggingConfiguration(),
rumConfiguration: DatadogRumConfiguration(
applicationId: '<DD_APP_ID>',
),
);
DatadogSdk.instance.initialize(configuration);
アプリケーションが致命的なクラッシュに見舞われた場合、アプリケーションの再起動後に、Datadog Flutter SDK は Datadog にクラッシュレポートをアップロードします。致命的でないエラーの場合、Datadog Flutter SDK はこれらのエラーを他の RUM データと共にアップロードします。
ネイティブ iOS クラッシュレポートは生のフォーマットで収集され、そのほとんどがメモリアドレスを含んでいます。これらのアドレスを読みやすいシンボル情報にマッピングするために、Datadog は .dSYM ファイルのアップロードを必要とし、これはアプリケーションのビルドプロセスで生成されます。
--split-debug-info
オプションセットと --obfuscate
オプションセットでビルドされたすべてのクラッシュレポートについて、その Android Proguard マッピングファイルと Flutter ビルドプロセスによって生成された Dart シンボルファイルをアップロードする必要があります。
コマンドラインツール @datadog/datadog-ci は、必要なファイル (dSYMs、Android Proguard Mapping、Dart Symbol Files) を 1 つのコマンドでアップロードすることに対応しています。
まず、上記の手順で datadog-ci
ツールをインストールし、プロジェクトのルートに datadog-ci.json
ファイルを作成し、API キーと (オプションで) Datadog サイトを記述します。
{
"apiKey": "<YOUR_DATADOG_API_KEY>",
"datadogSite": "datadoghq.eu" // datadoghq.com を使用している場合はオプション
}
このファイルには API キーが含まれているため、バージョン管理にはチェックインしないでください。
代わりに、環境変数 DATADOG_API_KEY
と DATADOG_SITE
を設定することも可能です。
次に、以下のコマンドを使用して、クラッシュレポートのシンボル化および難読化解除に必要なすべてのファイルをアップロードすることができます。
datadog-ci flutter-symbols upload --service-name <your_service_name> --dart-symbols-location <location_of_dart_symbols> --android-mapping --ios-dsyms
注: バージョンに変更がない場合、ソースマップを再アップロードしても既存のものはオーバーライドされません。
オプションの完全なリストは、datadog-ci
Flutter Symbols のドキュメントを参照してください。
Datadog は service-name
、version
、flavor
の組み合わせを使用して、難読化解除のための正しいシンボルを探します。クラッシュレポートが完全な情報を持つためには、datadog-ci
コマンドに送られるパラメーターと DatadogConfiguration で設定されたパラメーターが完全に一致する必要があります。
Flutter でアプリのフレーバーを使用している場合、フレーバーを自動検出できないため、DatadogConfiguration.flavor でフレーバーの名前を設定する必要があります。そして、これを datadog-ci
コマンドの --flavor
パラメーターに渡すことができます。
datadog-ci flutter-symbols upload --service-name <your_service_name> --dart-symbols-location <location_of_dart_symbols> --android-mapping --ios-dsyms --flavor my_flavor
Datadog SDK は、pubspec.yaml
で指定されたアプリケーションのバージョン番号を自動的に検出しますが、これにはビルド番号は含まれません。もし、アプリケーションのバージョンの一部としてビルド番号を使用していて、ビルドごとにシンボルをアップロードする必要がある場合は、バージョンを DatadogConfiguration.version に追加する必要があります。そして、これを datadog-ci
コマンドの --version
パラメーターに渡すことができます。
datadog-ci flutter-symbols upload --service-name <your_service_name> --dart-symbols-location <location_of_dart_symbols> --android-mapping --ios-dsyms --version 1.2.3+22
Datadog は +
を許さないバージョンのタグを使用することに注意してください。すべてのツールは、バージョンタグが Datadog で検索できるように、自動的に +
を -
に置き換えます。
お役に立つドキュメント、リンクや記事: