605 Views
November 14, 24
スライド概要
2024/11/14 Flutter Tokyo Community #0
https://flutter-tokyo-community.connpass.com/event/337029/
Android Engineer
DatadogSDK導入のTips 2024/11/14 Copyright © 2019 FOLIO Co., Ltd. All Rights Reserved.
自己紹介 mkikuchi 所属:株式会社FOLIO Android, Flutterエンジニア 2
今日話すポイント • DatadogSDKの紹介と導 • DatadogSDKを導 した経緯 する際のTips 入 入 3
今日話すポイント → • DatadogSDKの紹介と導 した経緯 • DatadogSDKを導 する際のTips 入 入 4
DatadogSDKを導入した経緯 toC向け資産運 サービス https://ai.folio-sec.com/ toB向け投資 任運 サービスSaaS https://4rap.folio-sec.com/ 用 用 一 5
DatadogSDKを導入した経緯 こちらの対 toC向け資産運 サービス https://ai.folio-sec.com/ 営業 toB向け投資 アプリでFlutterを使 任運 サービスSaaS https://4rap.folio-sec.com/ 用 用 用 用 一 面 6
DatadogSDKを導 した経緯 • Webのサポートが必要になった • 初期はiOSのみが対象でCrashlyticsを使 していたが、 CrashlyticsはWebをサポートしていない • BEのモニタリングに既にDatadogを使 していた ⇩ DatadogSDKでエラーログの収集を うことに 用 用 行 入 7
FlutterでDatadogを使 するためのパッケージ • datadog_flutter_plugin • 各プラットフォーム向けのSDKをラップしている • iOS • dd-sdk-ios • Web • browser-sdk 用 8
FlutterでDatadogを使 するためのパッケージ • datadog_flutter_plugin 用 9
今回触れないこと • RUMに関する内容には触れません • RUM = Datadog Real User Monitoring • リアルタイムパフォーマンスなどを視覚化して分析できる • 弊社ではエラーログの収集だけで使 しているため • iOS, Web以外のプラットフォームについて 用 10
今日話すポイント • DatadogSDKの紹介と導 した経緯 → • DatadogSDKを導 する際のTips 入 入 11
DatadogSDKを導 する際のTips TagとAttributeを使 する場合 用 入 12
TagとAttributeを使 する場合 • Tag • host, env, versionなど、特定の情報に基づいたデータの 絞り込みなどで使 する • Attribute • ユーザーID, HTTPステータスコードなど、ログへの追加情 報として使 する 用 用 用 13
TagとAttributeを使 する場合 用 14
TagとAttributeを使 する場合 用 15
TagとAttributeを使 する場合 • iOS向け • addGlobalAttributeを 呼んでいる • Web向け • 空実装 用 16
TagとAttributeを使 する場合 用 17
TagとAttributeを使 する場合 用 18
TagとAttributeを使 する場合 用 19
TagとAttributeを使 する場合 用 20
TagとAttributeを使 • Attributeは両 する場合 のプラットフォームで使 できる • GlobalAttributeとTagはWebでサポートされていない • https://github.com/DataDog/browser-sdk/issues/462 • TagとAttributeを統合する作業中らしい? 用 用 方 21
TagとAttributeを使 • Remapperを使 する場合 してAttributeをTagに変換する 用 用 https://github.com/DataDog/browser-sdk/issues/462#issuecomment-893350296 22
する際のTips 動でのエラーハンドリングをする場合 23 入 手 DatadogSDKを導
• https://docs.flutter.dev/testing/errors • FlutterError.onError • Flutter がトリガーするコールバックで発 するエラー • e.g. ビルド、レイアウト、ペイントなど • PlatformDispatcher.instance.onError • Flutterのコールバック内で発 • e.g. しないエラー 同期処理など 生 生 身 自 24 非 手 動でのエラーハンドリングをする場合
手 動でのエラーハンドリングをする場合 25
手 動でのエラーハンドリングをする場合 • WebではPlatformDispatcher.instance.onErrorでハンドリ ングできない😇 https://github.com/flutter/flutter/issues/100277 26
• 回避策としてはrunZonedGuardedを使 する 27 用 手 動でのエラーハンドリングをする場合
DatadogSDKを導 する際のTips プロキシを設定する場合 入 28
プロキシを設定する場合 • customEndpointを設定することでプロキシを設定すること ができる 29
プロキシを設定する場合 • iOSとWebでプロキシサーバーに送られるデータが異なる • iOS • http://localhost:3500/?ddsource=flutter • Web • http://localhost/?ddforward=/api/v2/logs? ddsource=browser&ddtags=sdk_version:5.21.0, …. 30
THANK YOU