You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks for stopping by! This document should cover most topics surrounding contributing to this repo.
4
+
5
+
*[How to contribute](#how-to-contribute)
6
+
*[Reporting issues](#reporting-issues)
7
+
*[Fixing issues](#fixing-issues)
8
+
*[Adding features](#adding-features)
9
+
10
+
## Reporting issues
11
+
Are you having trouble getting started? Please [contact us directly](mailto:support@bugsnag.com?subject=%5BGitHub%5D%20bugsnag-js-performance%20-%20having%20trouble%20getting%20started%20with%20BugSnag) for assistance with integrating BugSnag into your application.
12
+
If you have spotted a problem with this module, feel free to open a [new issue](https://github.com/bugsnag/bugsnag-js-performance/issues/new?template=Bug_report.md). Here are a few things to check before doing so:
13
+
14
+
* Are you using the latest version of BugSnag? If not, does updating to the latest version fix your issue?
15
+
* Has somebody else [already reported](https://github.com/bugsnag/bugsnag-js-performance/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen) your issue? Feel free to add additional context to or check-in on an existing issue that matches your own.
16
+
* Is your issue caused by this module? Only things related to `@bugsnag/browser-performance`, `@bugsnag/react-native-performance`, and performance related plugins (such as `@bugsnag/plugin-react-navigation-performance`) should be reported here. For anything else, please [contact us directly](mailto:support@bugsnag.com) and we'd be happy to help you out.
17
+
18
+
### Fixing issues
19
+
20
+
If you've identified a fix to a new or existing issue, we welcome contributions!
21
+
Here are some helpful suggestions on contributing that help us merge your PR quickly and smoothly:
22
+
23
+
*[Fork](https://help.github.com/articles/fork-a-repo) the
24
+
[library on GitHub](https://github.com/bugsnag/bugsnag-js-performance)
25
+
* Build and test your changes. You can use `npm pack` to build the module locally and install it in a real app.
26
+
* Commit and push until you are happy with your contribution
27
+
*[Make a pull request](https://help.github.com/articles/using-pull-requests)
28
+
29
+
### Adding features
30
+
31
+
Unfortunately we’re unable to accept PRs that add features or refactor the library at this time.
32
+
However, we’re very eager and welcome to hearing feedback about the library so please contact us directly to discuss your idea, or open a
33
+
[feature request](https://github.com/bugsnag/bugsnag-js-performance/issues/new?template=Feature_request.md) to help us improve the library.
34
+
35
+
Here’s a bit about our process designing and building the BugSnag libraries:
36
+
37
+
* We have an internal roadmap to plan out the features we build, and sometimes we will already be planning your suggested feature!
38
+
* Our open source libraries span many languages and frameworks so we strive to ensure they are idiomatic on the given platform, but also consistent in terminology between platforms. That way the core concepts are familiar whether you adopt BugSnag for one platform or many.
39
+
* Finally, one of our goals is to ensure our libraries work reliably, even in crashy, multi-threaded environments. Oftentimes, this requires an intensive engineering design and code review process that adheres to our style and linting guidelines.
this.logger.warn(`Span attribute ${name} in span ${this.spanName} was truncated as the string exceeds the ${this.spanAttributeLimits.attributeStringValueLimit} character limit set by attributeStringValueLimit.`)
this.logger.warn(`Span attribute ${name} in span ${this.spanName} was truncated as the array exceeds the ${this.spanAttributeLimits.attributeArrayLengthLimit} element limit set by attributeArrayLengthLimit.`)
this.logger.warn(`Span attribute ${name} in span ${this.spanName} was dropped as the number of attributes exceeds the ${this.spanAttributeLimits.attributeCountLimit} attribute limit set by attributeCountLimit.`)
95
+
return
96
+
}
97
+
98
+
if(name.length>ATTRIBUTE_KEY_LENGTH_LIMIT){
99
+
this._droppedAttributesCount++
100
+
this.logger.warn(`Span attribute ${name} in span ${this.spanName} was dropped as the key length exceeds the ${ATTRIBUTE_KEY_LENGTH_LIMIT} character fixed limit.`)
101
+
return
102
+
}
103
+
21
104
this.attributes.set(name,value)
22
105
}
23
106
}
@@ -27,12 +110,13 @@ export class SpanAttributes {
* Converts a span attribute into an OTEL compliant value i.e. { stringValue: 'value' }
170
+
* @param key the name of the span attribute
171
+
* @param attribute the value of the attribute. Can be of type string | number | boolean | string[] | number[] | boolean[]. Invalid types will be removed from array attributes.
0 commit comments