bugsnag / bugsnag-cocoa-performance

Monitor the start-up, screen loading and network requests of your iOS app and see the results in your BugSnag dashboard.
https://docs.bugsnag.com/performance/integration-guides/ios
MIT License
10 stars 7 forks source link

[PLAT-12317] Allow setting the parent context by span ID and trace ID rather than requiring an actual span object #280

Closed kstenerud closed 3 months ago

kstenerud commented 3 months ago

Goal

Setting the parent ID of a span required an existing Bugsnag span, which made it impossible to receive a span from an outside source and make it a parent of a Bugsnag span.

Design

BugsnagPerformanceSpan has been made a subclass of BugsnagPerformanceSpanContext, and the APIs relating to span parentage have been updated to take a BugsnagPerformanceSpanContext (or subclass) instead.

The API changes will not break existing usage since it's technically more permissive than before.

Testing

Added a new e2e test.

github-actions[bot] commented 3 months ago

BugsnagPerformance.framework binary size increased by 1,816 bytes from 459,640 to 461,456

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +1.0% +1.07Ki  +1.0% +1.07Ki    String Table
  +0.7%    +656  +0.7%    +656    Symbol Table
  +2.7%    +328  +2.7%    +328    __DATA,__objc_const
  +0.2%    +188  +0.2%    +188    __TEXT,__text
  +1.0%    +110  +1.0%    +110    __TEXT,__objc_methname
  +3.6%    +103  +3.6%    +103    __TEXT,__objc_methtype
  +6.2%     +80  +6.2%     +80    __DATA,__objc_data
   +17%     +32   +17%     +32    Export Info
  +0.3%     +32  +0.3%     +32    __TEXT,__objc_stubs
  +6.6%     +30  +6.6%     +30    __TEXT,__objc_classname
  +2.9%     +24  +2.9%     +24    Rebase Info
  +0.2%      +8  +0.2%      +8    Binding Info
  +0.2%      +8  +0.2%      +8    [1 Others]
  +3.4%      +8  +3.4%      +8    __DATA,__objc_ivar
  +0.3%      +8  +0.3%      +8    __DATA,__objc_selrefs
   +11%      +8   +11%      +8    __DATA,__objc_superrefs
  +6.2%      +8  +6.2%      +8    __DATA_CONST,__objc_classlist
  -0.2%      -8  -0.2%      -8    [__DATA_CONST]
  -3.0%    -432  -3.0%    -432    [__DATA]
  -1.4%    -471  -1.4%    -471    [__TEXT]
  [ = ]       0 -11.7% -1.77Ki    [__LINKEDIT]
  +0.4% +1.77Ki  [ = ]       0    TOTAL

Generated by :no_entry_sign: Danger