Comments (3)
@cog-qlik thanks for bringing this to our attention. We'll stick this into the backlog for future improvements in the SDK.
from rollbar-go.
Yeah this is doable, it will require a version bump as it will be a breaking change because the new behavior would result in nothing getting sent until someone calls the init. There already is a constructor if you don't want to use the default one. The overhead of a single goroutine is pretty minimal. Perhaps we should make close on the transport actually close the channel which will terminate the range loop and therefore exit the goroutine. We can then add Close to the top level which will close the std one. Auto opening it just to have it closed is a tiny bit wasteful but that would be backwards compatible.
from rollbar-go.
Yes, I realized that implementing a different initialization mechanism implies a breaking change. Leaving the importer package the ability to decide whether to run goroutines in the back or not is preferrable IMHO.
@rokob adding a Close()
function to stop that dangling goroutine if the std transport is not required at least gives a way to get rid of the problem and, at the same time, it's a backwords-compatible change. It could be a good compromise.
from rollbar-go.
Related Issues (20)
- Prevent rollbar-go to start a Client by default HOT 1
- SetPlatform is overloaded
- Unexported function on the Transport interface prevents mocking HOT 1
- Consider tagging submodule "errors"?
- IP Logging should not depend on client knowing the remote IP address HOT 2
- Any example for adding rollbar to serverless ? HOT 1
- set a new transport HOT 1
- Take advantage of new Go 1.13 Unwrap method HOT 1
- Confusion around Wait() function HOT 6
- Bug: `LambdaWrapper` panics at runtime when panic occurs inside a lambda handler with multiple return values
- Stop hacker's from thefting HOT 5
- Unclear how to send messages with custom client instance HOT 2
- Segfault when using client HOT 2
- client/transport.Close() does not support context HOT 4
- Will you release this pkg anymore? HOT 3
- 422 Unprocessable Entity after Upgrading to v1.4.2 HOT 1
- Add support for FluentD
- Async transpot can panic HOT 2
- Unable to get IP addresses in gin middleware. HOT 3
- Breaking API change with release of v1.4.3 HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rollbar-go.