다음을 통해 공유


WAD(Windows Azure Diagnostics) 확장 구성 스키마 버전 및 기록

이 문서에서는 Microsoft Azure SDK의 일부로 제공되는 WAD(Windows용 Azure Diagnostics 확장) 스키마 버전의 버전 기록을 제공합니다.

Azure SDK 및 진단 버전 전달 차트

Azure SDK 버전 진단 확장 버전 모델
1.x 1.0 플러그 인
2.0 - 2.4 1.0 플러그 인
2.5 1.2 확장
2.6 1.3 "
2.7 1.4 "
2.8 1.5 "
2.9 1.6 "
2.96 1.7 "
2.96 1.8 "
2.96 1.8.1 "
2.96 1.9 "
2.96 1.11 "
2.96 1.21 "

Azure Diagnostics 버전 1.0은 먼저 플러그 인 모델로 제공되었습니다. 즉, Azure SDK를 설치할 때 Azure 진단 버전이 함께 제공되었습니다.

SDK 2.5(진단 버전 1.2)부터 Azure 진단은 확장 모델로 이동했습니다. 새 기능을 활용하는 도구는 최신 Azure SDK에서만 사용할 수 있었지만 Azure 진단을 사용하는 모든 서비스는 Azure에서 직접 최신 배송 버전을 선택합니다. 예를 들어 SDK 2.5를 사용하는 모든 사용자는 최신 기능을 사용하는지와 관계없이 이전 표에 표시된 최신 버전을 로드합니다.

스키마 색인

다른 버전의 Azure 진단은 서로 다른 구성 스키마를 사용합니다. 스키마 1.0 및 1.2는 더 이상 사용되지 않습니다. 버전 1.3 이상에 대한 자세한 내용은 진단 1.3 이상 구성 스키마를 참조 하세요.

버전 기록

진단 확장 1.11

Azure Monitor 싱크에 대한 지원이 추가되었습니다. 이 싱크는 성능 카운터에만 적용됩니다. VM, VMSS 또는 클라우드 서비스에 수집된 성능 카운터를 Azure Monitor에 사용자 지정 메트릭으로 보낼 수 있습니다. Azure Monitor 싱크는 다음을 지원합니다.

  • Azure Monitor 메트릭 API를 통해 Azure Monitor로 전송된 모든 성능 카운터 검색
  • Azure Monitor의 새로운 통합 경고 환경을 통해 Azure Monitor로 전송된 모든 성능 카운터에 대한 경고
  • 성능 카운터에서 와일드카드 연산자를 메트릭의 "인스턴스" 차원으로 처리합니다. 예를 들어 "LogicalDisk(*)/DiskWrites/sec" 카운터를 수집한 경우 “인스턴스” 차원을 기준으로 필터링 및 분할하여 각 논리 디스크(C:, D: 등)에 대해 Disk Writes/sec를 그리거나 경고할 수 있습니다.

진단 확장 구성에서 Azure Monitor를 새 싱크로 정의

"SinksConfig": {
    "Sink": [
        {
            "name": "AzureMonitorSink",
            "AzureMonitor": {}
        },
    ]
}
<SinksConfig>  
  <Sink name="AzureMonitorSink">
      <AzureMonitor/>
  </Sink>
</SinksConfig>

참고 항목

클래식 VM 및 클래식 CLoud 서비스에 대한 Azure Monitor 싱크를 구성하려면 진단 확장의 프라이빗 구성에 더 많은 매개 변수를 정의해야 합니다.

자세한 내용은 자세한 진단 확장 스키마 설명서를 참조하세요.

다음으로 Azure Monitor 싱크로 라우팅되도록 성능 카운터를 구성할 수 있습니다.

"PerformanceCounters": {
    "scheduledTransferPeriod": "PT1M",
    "sinks": "AzureMonitorSink",
    "PerformanceCounterConfiguration": [
        {
            "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
            "sampleRate": "PT1M",
            "unit": "percent"
        }
    ]
},
<PerformanceCounters scheduledTransferPeriod="PT1M", sinks="AzureMonitorSink">  
  <PerformanceCounterConfiguration counterSpecifier="\Processor(_Total)\% Processor Time" sampleRate="PT1M" unit="percent" />  
</PerformanceCounters>

진단 확장 1.9

Docker 지원이 추가되었습니다.

진단 확장 1.8.1

프라이빗 구성에서 스토리지 계정 키 대신 SAS 토큰을 지정할 수 있습니다. SAS 토큰이 제공되면 스토리지 계정 키가 무시됩니다.

{
    "storageAccountName": "diagstorageaccount",
    "storageAccountEndPoint": "https://core.windows.net",
    "storageAccountSasToken": "{sas token}",
    "SecondaryStorageAccounts": {
        "StorageAccount": [
            {
                "name": "secondarydiagstorageaccount",
                "endpoint": "https://core.windows.net",
                "sasToken": "{sas token}"
            }
        ]
    }
}
<PrivateConfig>
    <StorageAccount name="diagstorageaccount" endpoint="https://core.windows.net" sasToken="{sas token}" />
    <SecondaryStorageAccounts>
        <StorageAccount name="secondarydiagstorageaccount" endpoint="https://core.windows.net" sasToken="{sas token}" />
    </SecondaryStorageAccounts>
</PrivateConfig>

진단 확장 1.8

PublicConfig에 스토리지 유형이 추가되었습니다. StorageType은 Table, Blob, TableAndBlob수 있습니다. 테이블 이 기본값입니다.

{
    "WadCfg": {
    },
    "StorageAccount": "diagstorageaccount",
    "StorageType": "TableAndBlob"
}
<PublicConfig>
    <WadCfg />
    <StorageAccount>diagstorageaccount</StorageAccount>
    <StorageType>TableAndBlob</StorageType>
</PublicConfig>

진단 확장 1.7

EventHub로 라우팅하는 기능이 추가되었습니다.

진단 확장 1.5

Application Insights에 진단 데이터를 전송하는 싱크 요소 및 기능이 추가되어 시스템 및 인프라 수준뿐만 아니라 애플리케이션 전반에 나타나는 문제를 쉽게 진단할 수 있습니다.

Azure SDK 2.6 및 진단 확장 1.3

Visual Studio에서 클라우드 서비스 프로젝트의 경우 다음 사항이 변경되었습니다. (이러한 변경 내용은 이후 버전의 Azure SDK에도 적용됩니다.)

  • 이제 로컬 에뮬레이터에서 진단을 지원합니다. 따라서 Visual Studio에서 개발 및 테스트하는 동안 진단 데이터를 수집하고 애플리케이션에서 올바른 추적을 생성하고 있는지 확인할 수 있습니다. 이 연결 문자열 UseDevelopmentStorage=true Azure Storage 에뮬레이터를 사용하여 Visual Studio에서 클라우드 서비스 프로젝트를 실행하는 동안 진단 데이터 수집을 사용하도록 설정합니다. 모든 진단 데이터는 (Development Storage) 스토리지 계정에 수집됩니다.
  • 진단 스토리지 계정 연결 문자열(Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString)는 서비스 구성(.cscfg) 파일에 다시 한 번 저장됩니다. Azure SDK 2.5에서 진단 스토리지 계정은 diagnostics.wadcfgx 파일에 지정되었습니다.

Azure SDK 2.4 이하와 Azure SDK 2.6 이상 버전에서 연결 문자열이 작동하는 방식 간에 몇 가지 주목할 만한 차이점이 있습니다.

  • Azure SDK 2.4 이하 버전에서는 진단 로그를 전송하기 위한 스토리지 계정 정보를 가져오기 위해 진단 플러그인에 의해 런타임으로 연결 문자열이 사용되었습니다.
  • Azure SDK 2.6 이상 버전에서 Visual Studio는 게시하는 동안 진단 연결 문자열을 사용하여 적절한 스토리지 계정 정보로 진단 확장을 구성합니다. 이 연결 문자열 사용하면 Visual Studio에서 게시할 때 사용할 다양한 서비스 구성에 대해 서로 다른 스토리지 계정을 정의할 수 있습니다. 그러나 진단 플러그 인을 더 이상 사용할 수 없으므로(Azure SDK 2.5 이후), .cscfg 파일 자체는 진단 확장을 사용하도록 설정할 수 없습니다. Visual Studio 또는 PowerShell과 같은 도구를 통해 별도로 확장을 사용하도록 설정해야 합니다.
  • PowerShell을 사용하여 진단 확장을 구성하는 프로세스를 간소화하기 위해 Visual Studio의 패키지 출력에는 각 역할에 대한 진단 확장에 대한 공용 구성 XML도 포함됩니다. Visual Studio에서는 진단 연결 문자열을 사용하여 공용 구성에 있는 스토리지 계정 정보를 채웁니다. 퍼블릭 구성 파일이 Extensions 폴더에서 생성되고 PaaSDiagnostics.<RoleName>.PubConfig.xml 패턴을 따릅니다. 모든 PowerShell 기반 배포는 이 패턴을 사용하여 각 구성을 역할에 매핑할 수 있습니다.
  • .cscfg 파일의 연결 문자열 모니터링 탭에 표시할 수 있도록 Azure Portal에서 진단 데이터에 액세스하는 데도 사용됩니다. 포털에서 자세한 모니터링 데이터를 표시하도록 서비스를 구성하려면 연결 문자열 필요합니다.

Azure SDK 2.6 이상으로 프로젝트 마이그레이션

Azure SDK 2.5에서 Azure SDK 2.6 이상으로 마이그레이션할 때 .wadcfgx 파일에 진단 스토리지 계정이 지정된 경우 해당 계정이 유지됩니다. 다양한 스토리지 구성에 다른 스토리지 계정을 유연하게 사용하려면 프로젝트에 연결 문자열 수동으로 추가해야 합니다. Azure SDK 2.4 이하에서 Azure SDK 2.6으로 프로젝트를 마이그레이션하는 경우 진단 연결 문자열 유지됩니다. 그러나 이전 섹션에서 지정한 대로 Azure SDK 2.6에서 연결 문자열 처리되는 방식이 변경되었습니다.

Visual Studio에서 진단 스토리지 계정을 결정하는 방법

  • 진단 연결 문자열이.cscfg 파일에 지정된 경우 Visual Studio에서는 게시할 때와 패키징 중 공용 구성 xml 파일을 생성할 때 이 문자열을 사용하여 진단 확장을 구성합니다.
  • 진단 연결 문자열이.cscfg 파일에 지정되지 않은 경우 Visual Studio에서는 게시할 때와 패키징 중 공용 구성 xml 파일을 생성할 때 .wadcfgx 파일에 지정된 스토리지 계정을 대신 사용하여 진단 확장을 구성합니다.
  • .cscfg 파일의 진단 연결 문자열은 .wadcfgx 파일의 스토리지 계정보다 우선합니다. 진단 연결 문자열 .cscfg 파일에 지정된 경우 Visual Studio는 이를 사용하고 .wadcfgx의 스토리지 계정을 무시합니다.

"개발 스토리지 연결 문자열 업데이트..."는 무엇인가요? 확인란을 선택하시겠습니까?

Microsoft Azure에 게시할 때 Microsoft Azure Storage 계정 자격 증명을 사용하여 진단 및 캐싱을 위한 개발 스토리지 연결 문자열 업데이트 확인란은 게시하는 동안 지정된 Azure Storage 계정으로 개발 스토리지 계정 연결 문자열을 업데이트하는 편리한 방법을 제공합니다.

예를 들어 이 확인란을 선택하고 진단 연결 문자열 지정한다고 가정합니다UseDevelopmentStorage=true. 프로젝트를 Azure에 게시하면 Visual Studio는 게시 마법사에서 지정한 스토리지 계정으로 진단 연결 문자열 자동으로 업데이트합니다. 그러나 실제 스토리지 계정이 진단 연결 문자열 지정된 경우 해당 계정이 대신 사용됩니다.

Azure SDK 2.4 이전 버전과 Azure SDK 2.5 이상 간의 진단 기능 차이점

프로젝트를 Azure SDK 2.4에서 Azure SDK 2.5 이상으로 업그레이드하는 경우 다음과 같은 진단 기능 차이점을 염두에 두어야 합니다.

  • 구성 API는 더 이상 사용되지 않습니다. 진단의 프로그래밍 방식 구성은 Azure SDK 2.4 이전 버전에서 사용할 수 있지만 Azure SDK 2.5 이상에서는 더 이상 사용되지 않습니다. 코드에 진단 구성이 현재 정의된 경우 계속해서 진단하려면 마이그레이션된 프로젝트에서 해당 설정을 처음부터 다시 구성해야 합니다. Azure SDK 2.4에 대한 진단 구성 파일은 diagnostics.wadcfg 및 Azure SDK 2.5 이상용 diagnostics.wadcfgx입니다.
  • 클라우드 서비스 애플리케이션에 대한 진단은 인스턴스 수준이 아닌 역할 수준에서만 구성할 수 있습니다.
  • 앱을 배포할 때마다 진단 구성이 업데이트됨 – 이로 인해 서버 탐색기에서 진단 구성을 변경한 후 앱을 다시 배포하는 경우 패리티 문제가 발생할 수 있습니다.
  • Azure SDK 2.5 이상에서 코드가 아닌 진단 구성 파일에 크래시 덤프가 구성됨 – 코드에 크래시 덤프가 구성된 경우, Azure SDK 2.6으로 마이그레이션하는 동안 크래시 덤프가 전송되지 않으므로 해당 구성을 코드에서 구성 파일로 수동으로 전송해야 합니다.