Frissítés az Application Insights Java 2.x SDK-ról
A 3.x-re való frissítéskor általában nincsenek kódmódosítások. A 3.x SDK-függőségek a 2.x SDK-függőségek nem op api-verziói. A 3.x Java-ügynökkel való használat esetén azonban a 3.x Java-ügynök biztosítja a megvalósítást. Ennek eredményeképpen az egyéni rendszerállapot korrelál a 3.x Java-ügynök által biztosított új autoinstrumentációval.
2.x függőség | Művelet | Megjegyzések |
---|---|---|
applicationinsights-core |
A verzió frissítése vagy újabb verziója 3.4.3 |
|
applicationinsights-web |
Frissítse a verziót vagy újabb verziót 3.4.3 , és távolítsa el az Application Insights webszűrőt a fájlból web.xml . |
|
applicationinsights-web-auto |
Cserélje le a 3.4.3 applicationinsights-web |
|
applicationinsights-logging-log4j1_2 |
Távolítsa el a függőséget, és távolítsa el az Application Insights-hozzáfűzőt a Log4j-konfigurációból. | Már nincs rá szükség, mivel a Log4j 1.2 automatikusan be van adva a 3.x Java-ügynökbe. |
applicationinsights-logging-log4j2 |
Távolítsa el a függőséget, és távolítsa el az Application Insights-hozzáfűzőt a Log4j-konfigurációból. | Már nincs rá szükség, mivel a Log4j 2 automatikusan be van adva a 3.x Java-ügynökbe. |
applicationinsights-logging-logback |
Távolítsa el a függőséget, és távolítsa el az Application Insights-hozzáfűzőt a bejelentkezési konfigurációból. | Már nincs rá szükség, mivel a bejelentkezés automatikusan be van adva a 3.x Java-ügynökben. |
applicationinsights-spring-boot-starter |
Cserélje le a 3.4.3 applicationinsights-web |
A felhőbeli szerepkör neve már nem alapértelmezett.spring.application.name A felhőbeli szerepkör nevének konfigurálásáról a 3.x konfigurációs dokumentációban olvashat. |
Adja hozzá a 3.x Java-ügynököt a Java-alapú virtuális gép (JVM) parancssori argjeihez, például:
-javaagent:path/to/applicationinsights-agent-3.6.2.jar
Ha az Application Insights 2.x Java-ügynököt használja, cserélje le a meglévőt -javaagent:...
az előző példára.
Megjegyzés
Ha a spring-boot-startert használta, és ha szeretné, van alternatíva a Java-ügynök használatára. Lásd: 3.x Spring Boot.
Lásd a kapcsolati sztring konfigurálását.
A dokumentum többi része a 2.x-ről 3.x-re való frissítéskor előforduló korlátozásokat és módosításokat, valamint néhány hasznos kerülő megoldást ismertet.
A 2.x SDK TelemetryInitializers nem fut a 3.x ügynök használatakor.
A korábban szükséges TelemetryInitializer
használati esetek nagy része megoldható az Application Insights Java 3.x-ben egyéni dimenziók konfigurálásával.
Vagy öröklött attribútumok használata.
A 2.x SDK TelemetryProcessors nem fut a 3.x ügynök használatakor.
A korábban szükséges TelemetryProcessor
használati esetek nagy része megoldható az Application Insights Java 3.x-ben a mintavételezési felülbírálások konfigurálásával.
Ez a használati eset az Application Insights Java 3.x-ben támogatott felhőbeli szerepkörnév-felülbírálások (előzetes verzió) és/vagy kapcsolati sztringek felülbírálása (előzetes verzió) használatával.
Az Application Insights Java 2.x SDK-ban bizonyos esetekben a műveletnevek a teljes elérési utat tartalmazzák, például:
Az Application Insights Java 3.x-ben a műveletnevek úgy módosultak, hogy általában jobb összesített nézetet biztosítsanak az Application Insights Portál U/X-ben, például:
Egyes alkalmazások esetében azonban továbbra is előnyben részesítheti az előző műveletnevek által biztosított összesített nézetet az U/X-ben. Ebben az esetben a 3.x telemetriai processzorok (előzetes verzió) funkciójával replikálhatja az előző viselkedést.
Az alábbi kódrészlet három olyan telemetriai processzort konfigurál, amelyek kombinálva replikálják az előző viselkedést. A telemetriai processzorok a következő műveleteket hajtják végre (sorrendben):
Az első telemetriai processzor egy attribútumfeldolgozó (típussal
attribute
rendelkezik), ami azt jelenti, hogy minden olyan telemetriára vonatkozik, amely attribútumokkal rendelkezik (jelenlegrequests
ésdependencies
hamarosan istraces
).Megfelel minden olyan telemetriának, amelynek attribútumai el vannak nevezve
http.request.method
ésurl.path
.Ezután kinyeri az attribútumot
url.path
egy új, névvel ellátotttempName
attribútumba.A második telemetriai processzor egy span processzor (típus
span
), ami azt jelenti, hogy vonatkozik ésrequests
dependencies
.Megfelel minden olyan tartománynak, amelynek egy attribútuma van.
tempPath
Ezután frissíti a span nevet az attribútumból
tempPath
.Az utolsó telemetriai processzor egy attribútumfeldolgozó, amely megegyezik az első telemetriai processzor típusával.
Megfelel minden olyan telemetriának, amely rendelkezik egy attribútummal.
tempPath
Ezután törli a névvel ellátott
tempPath
attribútumot, és az attribútum egyéni dimenzióként jelenik meg.
{
"preview": {
"processors": [
{
"type": "attribute",
"include": {
"matchType": "strict",
"attributes": [
{ "key": "http.request.method" },
{ "key": "url.path" }
]
},
"actions": [
{
"key": "url.path",
"pattern": "https?://[^/]+(?<tempPath>/[^?]*)",
"action": "extract"
}
]
},
{
"type": "span",
"include": {
"matchType": "strict",
"attributes": [
{ "key": "tempPath" }
]
},
"name": {
"fromAttributes": [ "http.request.method", "tempPath" ],
"separator": " "
}
},
{
"type": "attribute",
"include": {
"matchType": "strict",
"attributes": [
{ "key": "tempPath" }
]
},
"actions": [
{ "key": "tempPath", "action": "delete" }
]
}
]
}
}
Ezt a Java 2.x SDK-projektet a rendszer a 3.x Java-ügynök használatával migrálja egy új projektbe.