애플리케이션 Insights 계측 키에서 연결 문자열로 마이그레이션

이 가이드에서는 계측 키에서 연결 문자열로 마이그레이션하는 방법을 안내합니다.

사전 요구 사항

마이그레이션

Screenshot displaying Application Insights overview and connection string.

  1. Application Insights 리소스의 개요 블레이드로 이동합니다.

  2. 오른쪽에 표시된 연결 문자열을 찾습니다.

  3. 연결 문자열을 마우스로 가리키고 "클립보드에 복사" 아이콘을 선택합니다.

  4. 연결 문자열을 설정하는 방법에 따라 Application Insights SDK를 구성합니다.

중요

연결 문자열과 계측 키를 모두 사용하는 것은 권장되지 않습니다. 마지막으로 설정된 것이 우선적으로 적용됩니다.

대규모 마이그레이션

환경 변수를 사용하여 Application Insights SDK 또는 에이전트에 연결 문자열을 전달합니다.

환경 변수를 통해 연결 문자열을 설정하려면 연결 문자열의 값을 "APPLICATIONINSIGHTS_CONNECTION_STRING"이라는 환경 변수에 배치합니다.

이 프로세스는 Azure 배포에서 자동화할 수 있습니다. 예를 들어 다음 ARM 템플릿은 App Services 배포에 올바른 연결 문자열을 자동으로 포함할 수 있는 방법을 보여 줍니다(앱에 필요한 다른 앱 설정을 포함해야 합니다).

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "appServiceName": {
            "type": "string",
            "metadata": {
                "description": "Name of the App Services resource"
            }
        },
        "appServiceLocation": {
            "type": "string",
            "metadata": {
                "description": "Location to deploy the App Services resource"
            }
        },
        "appInsightsName": {
            "type": "string",
            "metadata": {
                "description": "Name of the existing Application Insights resource to use with this App Service. Expected to be in the same Resource Group."
            }
        }
    },
    "resources": [
        {
            "apiVersion": "2016-03-01",
            "name": "[parameters('appServiceName')]",
            "type": "microsoft.web/sites",
            "location": "[parameters('appServiceLocation')]",
            "properties": {
                "siteConfig": {
                    "appSettings": [
                        {
                            "name": "APPLICATIONINSIGHTS_CONNECTION_STRING",
                            "value": "[reference(concat('microsoft.insights/components/', parameters('appInsightsName')), '2015-05-01').ConnectionString]"
                        }
                    ]
                },
                "name": "[parameters('appServiceName')]"
            }
        }
    ]
}

새로운 기능

연결 문자열은 단일 구성 설정을 제공하므로 여러 프록시 설정이 필요하지 않습니다.

  • 신뢰성: 연결 문자열은 전역 수집 엔드포인트에 대한 종속성을 제거하여 원격 분석 수집을 보다 안정적으로 만듭니다.

  • 보안: 연결 문자열은 Application Insights용 Azure AD 인증을 사용하여 인증된 원격 분석 수집을 허용합니다.

  • 사용자 지정된 엔드포인트(소버린 또는 하이브리드 클라우드 환경): 엔드포인트 설정을 사용하면 특정 Azure Government 지역으로 데이터를 보낼 수 있습니다. (예제 참조)

  • 개인 정보(지역 엔드포인트) – 연결 문자열은 데이터를 지역 엔드포인트로 전송하여 데이터가 지리적 지역을 벗어나지 않도록 하여 개인 정보 문제를 완화합니다.

지원되는 SDK 버전

  • .NET 및 .NET Core LTS
  • Java v2.5.1 및 Java 3.0+
  • JavaScript v2.3.0+
  • NodeJS v1.5.0+
  • Python v1.0.0+

문제 해결

경고: "데이터 수집에 연결 문자열 사용으로 전환"

이 문서의 마이그레이션 단계에 따라 이 경고를 해결합니다.

누락된 데이터

  • 지원되는 SDK 버전을 사용하고 있는지 확인합니다. 다른 Azure 제품에서 Application Insights 통합을 사용하는 경우 연결 문자열을 올바르게 구성하는 방법에 대한 설명서를 확인합니다.

  • 계측 키와 연결 문자열을 동시에 설정하지 않는지 확인합니다. 계측 키 설정은 구성에서 제거해야 합니다.

  • 연결 문자열이 Azure Portal에 제공된 것과 정확히 일치하는지 확인합니다.

환경 변수가 작동하지 않음

애플리케이션 코드에서 계측 키를 하드 코딩하는 경우 해당 프로그래밍이 환경 변수보다 우선할 수 있습니다.

FAQ

내 연결 문자열은 어디에서 찾을 수 있나요?

연결 문자열은 Application Insights 리소스에 대한 ARM 리소스 속성에도 "ConnectionString" 필드 이름 아래에 포함됩니다.

이는 자동 계측에 어떤 영향을 미칩니까?

자동 계측 시나리오는 영향을 받지 않습니다.

자동 계측과 함께 Azure AD 인증을 사용할 수 있나요?

자동 계측 시나리오에는 Azure AD 인증을 사용하도록 설정할 수 없습니다. 향후 이러한 제한 사항을 해결할 계획입니다.

전역 및 지역 수집의 차이점은 무엇인가요?

전역 수집은 이 데이터가 저장되는 위치에 관계없이 모든 원격 분석 데이터를 단일 엔드포인트로 보냅니다. 지역 수집을 사용하면 데이터 수집을 위해 지역당 특정 엔드포인트를 정의하여 처리 및 스토리지 중에 데이터가 특정 지역 내에 유지되도록 할 수 있습니다.

연결 문자열은 청구에 어떻게 영향을 주나요?

청구는 영향을 받지 않습니다.

Microsoft Q&A

답변 포럼에 질문을 게시합니다.