Skip to main content
🛟 Aarzel niet om contact met ons op te nemen als u problemen ondervindt bij het upgraden van het AppSignal voor Node.js-pakket van uw applicatie. We helpen u graag verder!
Deze documentatie beschrijft de wijzigingen tussen de 2.x- en 3.x-releases van het Node.js-pakket van AppSignal. Als u upgradet van 2.x naar 3.x moet u uw integratie aanpassen zodat deze succesvol blijft werken. Mocht u tegen problemen aanlopen bij het upgraden van uw applicatie, neem dan vooral contact met ons op voor ondersteuning.

3.x installeren

Voer het volgende commando uit in de hoofdmap van uw applicatie om AppSignal voor Node.js 3.x te installeren.

npm

AppSignal-client

Wanneer u upgradet van 2.x naar 3.x, moet u wijzigen hoe uw applicatie de AppSignal-client initialiseert en benadert.

AppSignal-client initialiseren

Om de AppSignal-client te initialiseren en te exporteren, dient u een nieuw appsignal.cjs-bestand aan te maken, zoals in onderstaand voorbeeld:
U moet uw appsignal.cjs-bestand vereisen (--require ./appsignal.cjs) bij het starten van uw applicatie. Bijvoorbeeld in het package.json-bestand van uw applicatie, zoals in onderstaand voorbeeld:

Javascript

AppSignal-client benaderen

In 3.x wordt de AppSignal-client benaderd vanuit het globaal geëxporteerde Appsignal.client-object. De onderstaande voorbeelden laten zien hoe u dit doet in de context van een aangepaste metrics counter.

2.x

3.x

Integraties

Express en Next.js vereisen een Error Handler.
AppSignal voor Node.js 3.x ondersteunt alle 2.x-integraties standaard. Dit betekent dat de pakketten voor elke integratie niet langer geïnstalleerd hoeven te worden. Bij het overstappen van 2.x naar 3.x moet u alle AppSignal-integratiepakketten die voor uw applicatie zijn geïnstalleerd, verwijderen.

Integraties verwijderen

De 2.x-integraties zijn niet compatibel met de 3.x Node.js-integratie. U moet de hieronder beschreven migratiestappen volgen om Node.js-integraties te gebruiken.
Om gebruik te maken van de standaardondersteuning voor integraties in AppSignal voor Node.js 3.x, moet u eerst de integratie-installaties die nodig waren in de 2.x-versie “ongedaan maken”.

Code die afhankelijk is van het AppSignal-pakket verwijderen

De onderstaande voorbeelden zijn ter illustratie en gebaseerd op de integratiedocumentatie van AppSignal 2.x en 3.x. De code in uw applicatie kan afwijken van de voorbeelden in deze documentatie.
Vergeet niet om het AppSignal-integratiepakket te verwijderen/deïnstalleren.

Apollo Server-integratie verwijderen

Het 2.x @appsignal/apollo-server-pakket is niet compatibel met de 3.x Node.js-integratie. U moet de hieronder beschreven migratiestappen volgen als u Apollo Server met onze 3.x-integratie wilt gebruiken.
Verwijder de 2.x-initialisatie van het AppSignal Apollo Server-pakket en de plug-in uit uw applicatie, en vervang deze door de 3.x-installatie-instructies. Uw Apollo-applicatie wordt automatisch geïnstrumenteerd.

2.x

3.x

Apollo Server wordt automatisch geïnstrumenteerd door het AppSignal voor Node.js-pakket. Lees de documentatie van de 3.x GraphQL-integratie Zodra u uw integratiecode heeft aangepast, moet u het Apollo AppSignal-pakket verwijderen uit uw applicatie.

Express-integratie verwijderen

Het 2.x @appsignal/express-pakket is niet compatibel met de 3.x Node.js-integratie. U moet de hieronder beschreven migratiestappen volgen als u express met onze 3.x-integratie wilt gebruiken.
Verwijder de 2.x-initialisatie van het AppSignal Express-pakket en de middleware uit uw applicatie, en vervang deze door de 3.x-installatie-instructies.

2.x

3.x

Lees de documentatie van de 3.x Express-integratie Zodra u uw integratiecode heeft aangepast, moet u het AppSignal Express-pakket verwijderen uit uw applicatie.

Koa.js-integratie verwijderen

Het 2.x @appsignal/koa-pakket is niet compatibel met de 3.x Node.js-integratie. U moet de hieronder beschreven migratiestappen volgen als u Koa.js met onze 3.x-integratie wilt gebruiken.
Verwijder de 2.x-initialisatie van het AppSignal Koa-pakket en de instrumentatie uit uw applicatie.

2.x

3.x

Koa.js wordt automatisch geïnstrumenteerd door het AppSignal voor Node.js-pakket. Lees de documentatie van de 3.x Koa.js-integratie Zodra u uw integratiecode heeft aangepast, moet u het Koa.js-pakket verwijderen uit uw applicatie.

Next.js-integratie verwijderen

Het 2.x @appsignal/nextjs-pakket is niet compatibel met de 3.x Node.js-integratie. U moet de hieronder beschreven migratiestappen volgen als u Next.js met onze 3.x-integratie wilt gebruiken.
De functie “Web Vitals Reporting” is afgeschaft en is niet langer beschikbaar in AppSignal voor Node.js 3.x.

2.x

3.x

Next.js wordt automatisch geïnstrumenteerd door het AppSignal voor Node.js-pakket. Lees de documentatie van de 3.x Next.js-integratie

Integratiepakket verwijderen

Zodra de imports en de code die afhankelijk is van die imports zijn verwijderd, moet u het integratiepakket deïnstalleren. Dit kan worden gedaan door npm uninstall uit te voeren, zoals in onderstaand voorbeeld.
Bash
De npm uninstall-commando’s verwijderen pakketafhankelijkheden en werken de package.json van uw applicatie en het package-lock.json-bestand van npm bij. Vervang @appsignal/express in bovenstaand voorbeeld door de naam van het integratiepakket dat u verwijdert.

Namen van AppSignal-integratiepakketten

Het Tracer-object

Er is geen aangepast AppSignal-tracer-object meer. OpenTelemetry stelt een tracer provider beschikbaar waarmee u nieuwe spans kunt aanmaken.

2.x:

3.x:

Lees meer over tracers in de 3.x instrumentatiedocumentatie.

Spans

Er is geen aangepast AppSignal-span-object meer. AppSignal’s tracer-functies, zoals rootSpan(), createSpan(), currentSpan() en withSpan(), zijn niet langer beschikbaar. Spans moeten worden aangemaakt door de methode startActiveSpan aan te roepen op een tracer-object. Nieuwe spans zijn automatisch de children van de span waarin ze werden aangemaakt.

2.x:

3.x:

Lees meer over spans in de 3.x instrumentatiedocumentatie.

Helpers voor span-attributen

De helperfuncties die worden gebruikt om span-attributen in te stellen zijn ook gewijzigd. setSQL is vervangen door setBody, set is hernoemd naar setTag en er zijn extra helperfuncties toegevoegd. setName is verwijderd, aangezien spans bij hun aanmaak een naam moeten krijgen.

2.x

3.x

Lees meer over helpers voor span-attributen in de 3.x instrumentatiedocumentatie.

Exception Handling

Tracer- en span-objecten zijn niet langer nodig bij het gebruik van setError() en sendError().

2.x

3.x

In sendError() kunnen helpers worden gebruikt om aanvullende gegevens toe te voegen aan de error-span.
Lees meer over exception handling in de 3.x documentatie over exception handling