Dela via


Aspire Java/Spring-hostningsintegration

Inkluderar: Värdintegrering ingår Endast värdintegrering – Hosting integration included integration not included integrering ingår inte

Anteckning

Den här integreringen Aspire är en del av Community Toolkit och stöds inte officiellt av Aspire teamet.

I den här artikeln får du lära dig hur du använder värdintegrering för Java/Spring för att hosta Java/Spring-program med hjälp av antingen Java-körmiljön eller en container.

Förutsättningar

Den här integreringen kräver att OpenTelemetry Agent för Java laddas ned och placeras i katalogen agents i roten för projektet. Beroende på vilket gränssnitt du föredrar använder du något av följande kommandon för att ladda ned agenten:

# bash/zsh
mkdir -p ./agents
wget -P ./agents \
    https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar

Linux och macOS-certifikatförtroende

På Linux och macOS-plattformar kan du behöva importera certifikatet AspireOpenTelemetry till Java-certifikatarkivet för att telemetri ska fungera korrekt. Utan det här steget startar Java-programmet, men telemetrisamlingen kan misslyckas med certifikatfel.

Om du vill lägga till certifikatet i Java-förtroendearkivet kan du använda följande steg:

  1. Exportera instrumentpanelscertifikatet Aspire (detta varierar beroende på konfigurationen)
  2. Importera den till Java-förtroendearkivet med hjälp av keytool kommandot :
keytool -import -trustcacerts -alias aspire-dashboard \
    -file aspire-dashboard.crt \
    -keystore $JAVA_HOME/lib/security/cacerts \
    -storepass changeit

Anteckning

De exakta stegen för att hämta och importera certifikatet kan variera beroende på din utvecklingsmiljö och Aspire konfiguration.

Sätta igång

Kom igång med Aspire Java/Spring-värdintegrering genom att 📦 installera CommunityToolkit.Aspire. Hosting.Java NuGet-paketet i AppHost-projektet.

dotnet add package CommunityToolkit.Aspire.Hosting.Java

Mer information finns i dotnet add package eller Hantera paketberoenden i .NET applikationer.

Exempel på användning

I följande avsnitt beskrivs olika exempel på användningsscenarier, från värd för en containerbaserad Spring-app till värd för en körbar Spring-app.

I filen för AppHost.cs ditt AppHost-projekt anropar AddSpringApp du metoden för att definiera den containerbaserade Spring-appen. Med JavaAppContainerResourceOptions kan du ange containeravbildningen och OpenTelemetry agentkonfigurationen.

var containerapp = builder.AddSpringApp(
    "containerapp",
    new JavaAppContainerResourceOptions
    {
        ContainerImageName = "your-registry/your-spring-app:latest",
        OtelAgentPath = "./agents"
    });

ContainerImageName Ska peka på Spring Boot-programmets containeravbildning och OtelAgentPath anger sökvägen i containern där Java-agenten OpenTelemetry finns.

Se även