Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GA splunk-otel-ios #255

Open
22 of 27 tasks
dvernon-splunk opened this issue Sep 6, 2023 · 13 comments
Open
22 of 27 tasks

GA splunk-otel-ios #255

dvernon-splunk opened this issue Sep 6, 2023 · 13 comments
Assignees

Comments

@dvernon-splunk
Copy link

dvernon-splunk commented Sep 6, 2023

Which GDI repository do you wish to GA?

splunk-otel-ios https://github.com/signalfx/splunk-otel-ios

Does the repository follow the latest tagged minor release in GDI specification?

  • Has an appropriate maintainers team.
  • Permissions
    set correctly.
  • Branch protection
    in place.
  • Dependencies
    appropriately locked down.
  • GitHub Applications
    set up per spec.
  • Follows the configuration requirements,
    if appropriate.
  • Follows the semantic convention requirements,
    if appropriate.
  • Required Files
    in place.
    • CHANGELOG.md
    • CODE_OF_CONDUCT.md
    • CONTRIBUTING.md
    • .github/CODEOWNERS
    • LICENSE
    • README.md
      • Build status badge
      • Getting started
      • Troubleshooting
      • Link to official Splunk docs
      • License information
    • SECURITY.md
  • Releases
    done to spec.
  • Type specific requirements (remove what doesn't apply)
    • [ ] Data Collector
      • [ ] Documents all supported configuration parameters.
      • [ ] Documents sizing guidelines
    • ~~[ ] Instrumentation Library
      • [ ] Documents all supported configuration parameters.
      • [ ] Documents how to configure manual instrumentation.
      • [ ] Documents how to configure log correlation.
      • [ ] Documents minimum supported version of each auto-instrumentation framework.
    • Real User Monitoring Library
      • Documents all supported configuration parameters.
      • Documents how to configure manual instrumentation.
      • Documents supported instrumentation.
      • Documents supported platforms.

How long has the GDI repository been public?

Two years

Is the repository known to be used today?

yes

Is there a date by which this approval is needed?**

No

Additional context

None

@dvernon-splunk dvernon-splunk changed the title DRAFT: GA splunk-otel-ios GA splunk-otel-ios Sep 14, 2023
@dvernon-splunk
Copy link
Author

@pellared this repo is ready for review

@Kielek
Copy link
Contributor

Kielek commented Oct 10, 2023

@dvernon-splunk, I have removed all checkboxes from the description + updated links to 1.6.0. I will go through verification shortly.

@Kielek
Copy link
Contributor

Kielek commented Oct 18, 2023

  • Has an appropriate maintainers team.
  • Permissions
    set correctly.
    @signalfx/gdi-instrumentation-admins - set as admins
    @signalfx/gdi-ios-approvers - set as write

@Kielek
Copy link
Contributor

Kielek commented Oct 18, 2023

Fixed by: signalfx/splunk-otel-ios#174

  • CHANGELOG.md
  • CODE_OF_CONDUCT.md
  • CONTRIBUTING.md
  • .github/CODEOWNERS
  • LICENSE
  • SECURITY.md

@Kielek
Copy link
Contributor

Kielek commented Oct 18, 2023

[x] GitHub Applications
set up per spec.

It is technically fine, but repository is not using CodeCov.

@Kielek
Copy link
Contributor

Kielek commented Oct 19, 2023

For

Dependencies

@dvernon-splunk
Copy link
Author

We only have one dependency, Swifter, which is found in the Package.resolved file https://github.com/signalfx/splunk-otel-ios/blob/a9e464d31bb72398e9953f2b9bf708f087f52d95/SplunkRumWorkspace/SplunkRumWorkspace.xcworkspace/xcshareddata/swiftpm/Package.resolved#L6 It is locked to 1.5.0

@Kielek
Copy link
Contributor

Kielek commented Oct 31, 2023

@Kielek
Copy link
Contributor

Kielek commented Oct 31, 2023

Do you have a plan to GA also: https://github.com/signalfx/splunk-otel-ios-crashreporting ?
If so, I think that separate GA request is needed.

@Kielek
Copy link
Contributor

Kielek commented Oct 31, 2023

Based on https://docs.splunk.com/observability/en/gdi/get-data-in/rum/ios/configure-rum-ios-instrumentation.html and https://github.com/signalfx/gdi-specification/blob/v1.6.0/specification/configuration.md#real-user-monitoring-libraries
You should change a lot of configuration names:

  • realm - it is fine
  • rumAuth -> rumAccessToken
  • beaconUrl -> beaconEndpoint
  • globalAttributes seems fine
  • environment -> deploymentEnvironment
  • appName -> applicationName

There is a chance that I have missed something while code review, but additional things are required: Please confirm that it is fine/fix issues:

[1] Application name, authentication token and either realm or the beacon URL MUST be provided by the user. If any of these is missing, the RUM instrumentation library MUST fail to start.
[2] Systems that allow implementations to enforce the beaconEndpoint value is https (i.e. not Android) MUST do so. These implementations need to reject/fail to start if this condition is not meet. Implementations MAY offer an unrecommended allowInsecureBeacon option (default false) that turns off the check.
[3] If both realm and beaconEndpoint are set, a warning saying that realm will be ignored SHOULD be logged.

Based on #275 (will be part of 1.7.0 GDI) you should change also. Technically you can release based on 1.6.0 but, it will introduce much more issues that fixing it before 1.0.0.

  • enableDiskCache -> enableDiskBuffering
  • spanDiskCacheMaxSize -> limitDiskUsageMegabytes

Other

  1. allowInsecureBeacon - consider to drop this - per Implementations MAY offer an unrecommended allowInsecureBeacon option (default false) that turns off the check.. Not a hard requierment
  2. spanFilter required definition on GDI-spec RUM - common filter definition #278
  3. ignoreURLs seems to duplicates spanFilter functionality
  4. sessionSamplingRatio required definiton on GDI spec RUM - common setting for sessionSamplingRatio #279
  5. bspScheduleDelay Seems to be unique to ios.
  6. slowRenderingDetectionEnabled and slowFrameDetectionThresholdMs and frozenFrameDetectionThresholdMs - required gdi spec definition RUM - common definition for slow rendering detection #280 - keep in mind that android defines only 2 options (frozenFrameDetectionThresholdMs can be dropped?)
  7. debug - required gdi-spec changes: RUM - define debug mode #281
  8. showVCInstrumentation, screenNameSpans, networkInstrumentation seems to be ios specific

@Kielek
Copy link
Contributor

Kielek commented Oct 31, 2023

rum section seems to be fine/

@Kielek
Copy link
Contributor

Kielek commented Oct 31, 2023

@dvernon-splunk
Copy link
Author

Do you have a plan to GA also: https://github.com/signalfx/splunk-otel-ios-crashreporting ? If so, I think that separate GA request is needed.

Eventually, but not at this time

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants