-
Notifications
You must be signed in to change notification settings - Fork 9
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
Only report extension load errors on start #1051
Conversation
I'm okay with this change but you need to update the tests for this. |
@tombruijn Yeah, the tests are correct to be failing -- now the message is not emitted at all. I'll see what I can do to fix it. |
2c0b1ce
to
b297d9a
Compare
✔️ All good! |
@tombruijn It's been fixed now -- but I've also changed a lot of other stuff in the process. I couldn't understand what the right place to emit these warnings in the client initialisation was, so I ended up rearranging it significantly to figure it out. |
This is a message from the daily scheduled checks. |
Worth it to add a changeset . |
Before this change, extension load errors would be reported whenever `@appsignal/nodejs` or the `client.ts` file was imported. Now they will only be reported whenever `Client` fails to initialise. This fixes an issue where the extension load errors would be reported when running `npm install` in the `appsignal-nodejs` folder. Rearrange the way that the client is initialised. Remove the `client.start()` method, as starting is done automatically during initialisation. Use early returns to clearly distinguish the client initialisation failure scenarios. Emit distinct error messages for different configuration-related failures. Change the `this.#isActive` method to reflect whether the client was actually initialised, rather than whether several factors in the configuration should mean that the client was initialised.
b297d9a
to
6bf596c
Compare
Before this change, extension load errors would be reported whenever
@appsignal/nodejs
or theclient.ts
file was imported. Now theywill only be reported whenever
Client
fails to initialise.This fixes an issue where the extension load errors would be reported
when running
npm install
in theappsignal-nodejs
folder.Rearrange the way that the client is initialised. Remove the
client.start()
method, as starting is done automatically duringinitialisation. Use early returns to clearly distinguish the client
initialisation failure scenarios. Emit distinct error messages for
different configuration-related failures.
Change the
Client.isActive
method to reflect whether the clientwas actually initialised, rather than whether several factors in
the configuration should mean that the client was initialised.
This is an improvement to #960, as AppSignal will no longer show an error about the extension not loading when
active
is set tofalse
. It would still be nice to have a dedicated, non-scary Windows error.