Bug fixes
- Fixed an issue where calling
recordErrorunder low-memory conditions could terminate the host application. Error reports are now dropped and logged, and New Relic agent frames are trimmed from the top of the recorded stack. - Fixed a crash in
NRMALoggerBridge::logcaused by a missing argument in a log format string when removing session attributes. Corrected two additional invalid format strings in the same component. - Fixed an issue where distributed tracing timestamps (
tracestateand payloadti) were sent in seconds instead of milliseconds when using the new event system. - Fixed an issue where successful
MobileRequestevents lost all distributed tracing attributes when a cross-platform SDK passedtraceHeaders. - Updated the native agent to prevent adding duplicate distributed traces to requests reported with
traceHeadersby Flutter, React Native, or other hybrid agents. This applies to bothMobileRequestandMobileRequestErrorin both event systems. - Enforced minimum and maximum boundary limits for
MaxEventPoolSizeandMaxEventBufferTimeconfiguration settings (maximum buffer time capped at 600 seconds). - Updated
recordCustomEventto return a boolean indicating whether the event was successfully added when using the new event system, rather than always returningYES. - Updated React Native JavaScript error uploads to pass the correctly cased
ReactNativeplatform value, matching the Android agent behavior.
新機能
- 文書化された最小プラットフォーム要件に合わせて、iOS 15.0およびtvOS 15.0の最小デプロイメントバージョンをターゲットにするようにXCFrameworkのビルド設定を更新しました。
バグ修正
harvest設定の読み取り中に発生したクラッシュ(
objc_msgSend内のSIGSEGV)を解決しました。/connectレスポンスまたはNSUserDefaultsディクショナリからのautorelease poolのドレイン後、assignとして宣言されたNRMAHarvesterConfigurationの8つのオブジェクトプロパティがダングリングポインタを保持していました。/connect応答でat_capture属性が省略された場合に、セッションのすべてのアクティビティトレースが破棄される問題を解決しました。React Nativeのエラーとともに報告される
platformの値を、ReactNativeとして報告するように修正しました。ホストプラットフォームのバージョンではなく、iOSエージェントのバージョンを正確に報告するように、JavaScriptエラーペイロードの
agentVersionフィールドを修正しました。カスタムアトリビュートの検証を更新しました:イベント属性として
NSArrayまたはNSDictionaryオブジェクトを渡すと、一般的な"value must be an NSString, NSNumber, or BOOL"の警告メッセージの代わりに、サポートされていないタイプを特定する明示的なエラーがログに記録されるようになりました。
このリリースで修正された点
Meta/FullSnapshotより前のセッションリプレイイベントの並べ替えを修正しました。
NRMAExceptionMetaDataStoreを書き換えることで、潜在的なデータの欠落を修正しました。RNソースマップアップロードスクリプトを修正しました。
checkAndHandleSessionTimeoutでの潜在的なセッション再起動の問題を修正しました。
このリリースで修正された点
setUserIdをnilで呼び出すと常に新しいセッションが開始されるバグを修正しました。
古いセッションリプレイのフレームが新しいセッションと一緒にアップロードされるのを防ぎました。
毎回呼び出すのではなく、変更時にコールバックを更新するようにreachabilityを変更しました。
hex invalidateのクラッシュを修正しました。
setUserIdのvendorIdに関するクラッシュを修正しました。
NRMAトレースのコレクション全体における原子性を修正しました。
setUserIdが同期を維持するように修正しました。
セッションリプレイをTimerからDispatchSourceTimerに変更することで、クラッシュを修正しました。
CoreData NRMAMethodProfilerのクラッシュを修正しました。
sessionAttributeJSONStringが辞書のスナップショットを取得するようにして、クラッシュを修正しました。
SwiftUIのテキスト幅補正オフセットをコンテンツにクランプすることで、MSRテキストを修正しました。
JSErrorControllerのメモリリークを修正しました。
バイナリのボールド特性の代わりに正確な数値のフォントウェイトを参照することで、MSRテキストを修正しました。
dSYMアップロードツールを更新し、dsym-upload-tools run-symbol-toolにappVersionパラメーターを追加しました。
MSRでSwiftUIのモーダルが表示されない問題を修正しました。
新機能
シミュレーターデバイスは、simulator-(deviceType)として報告されるようになりました。
このリリースで修正された点
- 7.7.3で不安定になる原因となっていたKMP検出を削除しました。
- 非同期Web requestsを記録する際に発生する可能性があったクラッシュを修正しました。
- ハーベスト設定の競合状態によるクラッシュを修正しました。
New Features
Offline storage functionality for Mobile Session Replay.
Fixed in this release
Replaced timestamp-seeded LCG in IGuidGenerator with arc4random_buf.
Added EU region detection to RN Sourcemap upload.
Blocked recursion for MAUI style default interaction swizzle.
Renamed appVersionId to appVersion in RN source map upload.
Fixed infinite loop in EventDeserializer that froze the agent on launch.
Changed default session replay masking mode to not allow unmasking using programmatic APIs and fixed UIKit override APIs.
Fixed crash that could occur in NRMAWKWebViewNavigationDelegate webViewWebContentProcessDidTerminate.
Ensured session replay data uploads on next launch if it failed to upload when the app closed.
Discarded permanently-rejected (400/403) crash reports.
Added TTL eviction for offline storage (#786).
Fixed NRMAHarvestController initialize crash (#793).