Condividi tramite


Stringhe di connessione in Application Insights

Le stringhe di connessione specificano a quale risorsa di Application Insights l'applicazione instrumentata deve inviare dati di telemetria. Un stringa di connessione è costituito da più impostazioni, ognuna rappresentata come coppia chiave-valore e separata da punti e virgola. Questo metodo di configurazione consolidato semplifica il processo di installazione eliminando la necessità di più impostazioni proxy.

Importante

La stringa di connessione contiene una chiave ikey e un ApplicationId.

La chiave ikey è un identificatore univoco usato dal servizio di inserimento per associare i dati di telemetria a una risorsa di Application Insights specifica. Gli identificatori univoci di chiave Ikey non sono token di sicurezza o chiavi di sicurezza e non sono considerati segreti. Le stringhe di connessione vengono migliorate aggiungendo il valore ApplicationId. Questo aggiornamento è una nuova funzionalità che supporta la strumentazione automatica per gli scenari che usano Open Telemetry SDK. Se si vuole proteggere la risorsa di Application Insights dall'uso improprio, l'endpoint di inserimento fornisce opzioni di inserimento dei dati di telemetria autenticate in base all'ID Microsoft Entra.

Nota

Il 31 marzo 2025, il supporto per l'inserimento delle chiavi di strumentazione terminerà. L'inserimento delle chiavi di strumentazione continuerà a funzionare, ma non saranno più garantiti aggiornamenti o supporto per la funzionalità. Eseguire la transizione alle stringhe di connessione per sfruttare le nuove funzionalità.

Funzionalità della stringa di connessione

  • Affidabilità: rimuovendo le dipendenze dagli endpoint di inserimento globali, le stringhe di connessione rendono più affidabile l'inserimento dei dati di telemetria.
  • Sicurezza: grazie all'autenticazione di Microsoft Entra per Application Insights, le stringhe di connessione consentono l'inserimento di dati di telemetria autenticati.
  • Endpoint personalizzati (ambienti cloud sovrani o ibridi): le impostazioni degli endpoint consentono l'invio di dati a un'area specifica di Azure per enti pubblici. (vedere gli esempi).
  • Privacy (endpoint regionali): le stringhe di connessione semplificano i problemi di privacy inviando dati agli endpoint regionali, assicurando che i dati non lascino un'area geografica.

Trovare la stringa di connessione

La stringa di connessione viene visualizzata nella sezione Panoramica della risorsa di Application Insights.

Screenshot che mostra la panoramica di Application Insights e la stringa di connessione.

SCHEMA

Gli elementi dello schema sono illustrati nelle sezioni seguenti.

Lunghezza massima

La lunghezza massima supportata per la connessione è di 4.096 caratteri.

Coppie chiave-valore

Una stringa di connessione è costituita da un elenco di impostazioni rappresentate come coppie chiave-valore, separate da un punto e virgola: key1=value1;key2=value2;key3=value3

Suggerimento

Le coppie chiave-valore configurabili sono illustrate in questo documento. Alcune coppie chiave-valore non sono configurabili e vengono impostate automaticamente, ad esempio ApplicationId. Queste coppie possono essere tranquillamente ignorate se osservate nel vostro ambiente.

Sintassi

  • InstrumentationKey (ad esempio, 00000000-0000-0000-0000-000000000000). InstrumentationKey è un campo obbligatorio.

  • Authorization (ad esempio, ikey). Questa impostazione è facoltativa, poiché attualmente viene supportata solo l'autorizzazione ikey.

  • EndpointSuffix (ad esempio, applicationinsights.azure.cn). L'impostazione del suffisso dell'endpoint indica all'SDK a quale cloud di Azure connettersi. L'SDK assembla il resto dell'endpoint per i singoli servizi.

  • Endpoint espliciti. Qualsiasi servizio può essere sottoposto a override in modo esplicito nella stringa di connessione:

    • IngestionEndpoint (ad esempio, https://dc.applicationinsights.azure.com)
    • LiveEndpoint (ad esempio, https://live.applicationinsights.azure.com)
    • ProfilerEndpoint (ad esempio, https://profiler.monitor.azure.com)
    • SnapshotEndpoint (ad esempio, https://snapshot.monitor.azure.com)

Schema dell'endpoint

<prefix>.<suffix>

  • Prefisso: definisce un servizio.
  • Suffisso: definisce il nome di dominio comune.

Suffissi validi

  • applicationinsights.azure.cn
  • applicationinsights.us

Per altre informazioni, vedere Aree che richiedono la modifica dell'endpoint.

Prefissi validi

Esempi di stringhe di connessione

Si riportano di seguito alcuni esempi di stringhe di connessione.

Stringa di connessione con un suffisso dell'endpoint

InstrumentationKey=00000000-0000-0000-0000-000000000000;EndpointSuffix=ai.contoso.com;

In questo esempio la stringa di connessione specifica il suffisso dell'endpoint e l'SDK costruisce gli endpoint di servizio:

  • Lo schema di autorizzazione usa come impostazione predefinita "ikey"
  • Chiave di strumentazione: 00000000-0000-0000-0000-000000000000
  • Gli URI (Uniform Resource Identifier) del servizio a livello di area si basano sul suffisso dell'endpoint fornito:
    • Inserimento: https://dc.ai.contoso.com
    • Metriche in tempo reale: https://live.ai.contoso.com
    • Profiler per .NET: https://profiler.ai.contoso.com
    • Debugger: https://snapshot.ai.contoso.com

Stringa di connessione con override degli endpoint espliciti

InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://custom.com:111/;LiveEndpoint=https://custom.com:222/;ProfilerEndpoint=https://custom.com:333/;SnapshotEndpoint=https://custom.com:444/;

In questo esempio la stringa di connessione specifica gli override espliciti per ogni servizio. L'SDK usa gli endpoint esatti forniti senza modifiche:

  • Lo schema di autorizzazione usa come impostazione predefinita "ikey"
  • Chiave di strumentazione: 00000000-0000-0000-0000-000000000000
  • Gli URI del servizio a livello di area si basano sui valori di override espliciti:
    • Inserimento: https://custom.com:111/
    • Metriche in tempo reale: https://custom.com:222/
    • Profiler per .NET: https://custom.com:333/
    • Debugger: https://custom.com:444/

Stringa di connessione con un'area esplicita

InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://southcentralus.in.applicationinsights.azure.com/

In questo esempio la stringa di connessione specifica l'area Stati Uniti centro-meridionali:

  • Lo schema di autorizzazione usa come impostazione predefinita "ikey"
  • Chiave di strumentazione: 00000000-0000-0000-0000-000000000000
  • Gli URI del servizio a livello di area si basano sui valori di override espliciti:
    • Inserimento: https://southcentralus.in.applicationinsights.azure.com/

Per elencare le aree disponibili, eseguire il comando seguente nell'interfaccia della riga di comando di Azure:

az account list-locations -o table

Impostare una stringa di connessione

Tutti i nostri servizi OpenTelemetry e le versioni SDK seguenti supportano stringhe di connessione.

  • .NET v2.12.0
  • JavaScript v2.3.0
  • NodeJS v1.5.0
  • Python v1.0.0
  • Java v3.1.1

È possibile impostare un stringa di connessione nel codice usando una variabile di ambiente o un file di configurazione.

Variabile di ambiente

Stringa di connessione: APPLICATIONINSIGHTS_CONNECTION_STRING

Esempi di codice

Lingua API classica OpenTelemetry
ASP.NET Core Application Insights SDK AzMon OTel Distro
.NET Framework Application Insights SDK AzMon Exporter
Giava Non disponibile Agente Java
JavaScript Script del caricatore SDK JavaScript (Web) Non disponibile
Node.js Application Insights SDK Distro AzMon OTel
Pitone OpenCensus Python SDK AzMon OTel Distro

Domande frequenti

Questa sezione fornisce le risposte alle domande comuni.

Le nuove aree di Azure richiedono l'uso di stringhe di connessione?

Le nuove aree di Azure richiedono l'uso di stringhe di connessione anziché di chiavi di strumentazione. Una stringa di connessione identifica la risorsa alla quale associare i dati di telemetria. Inoltre, consente di modificare gli endpoint che la risorsa utilizza come destinazione per i dati di telemetria. Copiare la stringa di connessione e aggiungerla al codice dell'applicazione o a una variabile di ambiente.

È necessario usare stringhe di connessione o chiavi di strumentazione?

È consigliabile usare le stringhe di connessione anziché le chiavi di strumentazione.

Quando è necessario impostare la variabile di ambiente?

APPLICATIONINSIGHTS_CONNECTION_STRING Impostare manualmente in tutti gli scenari in cui il sistema non lo fornisce automaticamente. Questi scenari includono, ma non sono limitati a: sviluppo locale e funzioni isolate .NET usando l'integrazione di ASP.NET Core. In questi casi, la variabile di ambiente garantisce che la pipeline OpenTelemetry possa inviare dati di telemetria ad Application Insights. Per altre informazioni sulla configurazione delle stringhe di connessione con una variabile di ambiente, vedere Configurazione di OpenTelemetry in Application Insights.

Domande frequenti: Come si instrumenta un'applicazione Web globale per soddisfare i requisiti di conformità dei dati a livello di area?

Per soddisfare i requisiti di conformità dei dati a livello di area, usare gli endpoint di Application Insights a livello di area anziché l'endpoint globale. L'endpoint globale non garantisce che i dati rimangano all'interno di un'area specifica. Gli endpoint a livello di area consentono di garantire che i dati di telemetria degli utenti in aree regolamentate vengano inviati solo ai data center in tali aree.

Per configurare l'applicazione Web globale per la conformità a livello di area:

  • Creare una risorsa di Application Insights per area con requisiti di conformità rigorosi, ad esempio l'Unione europea o gli Stati Uniti.
  • Creare un'altra risorsa di Application Insights per gli utenti in tutte le altre aree.
  • Configurare l'applicazione per inviare dati di telemetria alla risorsa di Application Insights appropriata in base all'area di ogni utente. Determinare l'area usando segnali come indirizzo IP, metadati dell'account o impostazioni della posizione.
  • Connettere tutte le risorse di Application Insights a un'area di lavoro Log Analytics se è necessaria un'esperienza di query unificata tra aree.

Per esempio:

  • Inviare dati dagli utenti dell'area A alla risorsa di Application Insights della Regione A utilizzando la stringa di connessione della Regione A.
  • Invia i dati dagli utenti dell'Area B alla risorsa di Application Insights dell'Area B utilizzando la stringa di connessione dell'Area B.
  • Inviare tutti gli altri dati utente a una risorsa di Application Insights per utilizzo generico usando una stringa di connessione diversa.

Importante

L'uso dell'endpoint globale non garantisce la conformità a livello di area. Per soddisfare i requisiti di residenza dei dati, usare sempre endpoint specifici dell'area e indirizzare i dati di telemetria in base all'area dell'utente.

Il diagramma seguente illustra un esempio di configurazione per un'applicazione Web globale:

Diagramma che mostra il routing in base all'area a risorse specifiche di App Insights.

Passaggi successivi

Introduzione in fase di esecuzione a:

Inizia durante la fase di sviluppo con: