내보내기(0) 인쇄
모두 확장
이 항목은 아직 평가되지 않았습니다.- 이 항목 평가

Windows Azure 진단 구성 초기화 또는 변경

업데이트 날짜: 2013년 12월

서비스 모델에 Windows Azure 진단 모듈을 가져온 다음 진단 데이터를 수집할 데이터 원본을 구성하여 진단 데이터를 수집합니다. Windows Azure 및 Windows Azure 계산 에뮬레이터에서 진단 모니터가 실행되어 역할 인스턴스에 대한 진단 데이터를 수집합니다. 역할을 위해 서비스 모델에 진단 모듈을 가져온 경우 역할 인스턴스가 시작될 때 진단 모니터가 자동으로 시작됩니다. 진단 데이터를 수집할 진단 모니터의 구성에 데이터 원본을 추가해야 합니다. 진단 모니터를 구성하지 않으면 역할이 시작될 때 기본 구성이 사용됩니다. 기본 구성에서는 사용 가능한 데이터 원본의 일부만 진단 모니터에 추가되므로 diagnostics.wadcfg 파일을 사용하여 다른 데이터 원본의 컬렉션을 구성해야 합니다. 진단 데이터가 수집되어 역할 인스턴스에 저장되지만 저장소에 계속 보관하려면 ServiceConfiguration.cscfg 파일에서 저장소 계정을 지정해야 합니다. Windows Azure에 응용 프로그램을 배포한 후에는 Windows Azure 외부에서 실행 중인 응용 프로그램에서 진단 모니터 구성을 원격으로 변경할 수 있습니다. 응용 프로그램에서 진단을 설정하는 자세한 단계는 클라우드 서비스에서 진단을 사용하는 방법을 참조하십시오.

진단 데이터를 수집하려면 서비스 모델에서 진단 데이터를 수집할 각 역할에 대해 진단 모듈을 가져와야 합니다. ServiceDefinition.csdef 파일에 Import 요소를 추가하여 모듈을 가져올 수 있습니다. 다음 예는 웹 역할에 대해 정의된 Import 요소를 보여 줍니다.

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="MyHostedService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2012-10.1.8">
  <WebRole name="WebRole1">
    <!--<Sites> ... </Sites> -->
    <!-- <Endpoints> ... </Endpoints> -->
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  </WebRole>
</ServiceDefinition>

서비스 정의 파일과 서비스 구성 파일을 정의하는 자세한 방법은 스키마 참조를 참조하십시오. 호스팅된 서비스에 대해 서비스 모델을 정의하는 자세한 방법은 Windows Azure의 클라우드 서비스 설정을 참조하십시오.

진단 데이터는 기본적으로 저장소에 계속 보관되지 않습니다. 진단 데이터를 저장소로 전송하려면 ServiceConfiguration.cscfg 파일에 연결 문자열을 정의해야 합니다. 다음 예는 Windows Azure 저장소 에뮬레이터로 데이터를 전송하기 위한 연결 문자열을 정의하는 방법을 보여 줍니다.

<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="MyHostedService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="1" osVersion="*">
  <Role name="WebRole1">
    <Instances count="1" />
    <ConfigurationSettings>
    <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
    </ConfigurationSettings>
  </Role>
</ServiceConfiguration>

Windows Azure에서 저장소 계정을 사용하려는 경우 다음과 같이 계정 이름 및 계정 키를 포함하도록 연결 문자열을 변경해야 합니다.


<ConfigurationSettings>
   <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=<AccountName>;AccountKey=<AccountKey>"/>
</ConfigurationSettings>

Windows Azure 관리 포털에서 액세스 키 관리 아래 저장소 계정 대시보드에 AccountNameAccountKey 값이 표시됩니다. 연결 문자열은 https 프로토콜을 사용해야 합니다.

기본적으로 사용 가능한 데이터 원본의 일부만 진단 모니터에 추가되므로 기타 수집할 진단 데이터의 특정 유형을 추가해야 합니다. 응용 프로그램에서 수집하도록 구성할 수 있는 진단 데이터의 유형에 대한 자세한 내용은 Diagnostics Data Sources를 참조하십시오.

서비스 모델에 진단 모듈을 가져온 다음 진단 데이터를 수집할 데이터 원본을 구성하여 진단 데이터를 수집합니다. 진단 데이터를 수집할 진단 모니터의 구성에 데이터 원본을 추가해야 합니다. 진단을 구성하는 방식은 여러 가지가 있지만 전체 역할에 대한 구성을 관리하기 위해서는 배포에서 diagnostics.wadcfg 구성 파일을 사용하는 방식이 효과적입니다. 자세한 내용은 Diagnostics Configuration Mechanisms and Order of Precedence을 참조하십시오.

클라우드 서비스를 배포한 후에는 Windows Azure 외부에서 실행 중인 다른 응용 프로그램에서 응용 프로그램의 진단 모니터 구성을 원격으로 변경할 수 있습니다.

프로그래밍 방식으로 진단 모니터를 구성할 수 있지만, Windows Azure SDK를 사용하면 XML 구성 파일(diagnostics.wadcfg)을 사용하여 진단을 구성할 수 있습니다. 이 방법은 OnStart 메서드에서 코드를 작성하는 것과 비교하여 다음과 같은 여러 이점이 있습니다.

  1. OnStart 메서드가 실행되기 전에 진단이 시작되므로 시작 작업의 오류를 파악하여 기록할 수 있습니다.

  2. 런타임에서 적용한 구성 변경이 다시 시작한 후에도 유지됩니다.

  3. 코드를 다시 작성할 필요 없이 진단 구성을 변경할 수 있습니다.

  4. 추가 코드(잘못될 경우 예외가 발생하여 역할을 시작하지 못할 수 있음)를 적용할 필요 없이 특정 구성을 사용하여 진단 모니터를 자동으로 시작할 수 있습니다.

웹 역할의 경우 diagnostics.wadcfg 구성 파일이 역할의 루트 디렉터리 아래 bin 디렉터리에 배치됩니다. 작업자 역할의 경우 diagnostics.wadcfg 구성 파일이 역할의 루트 디렉터리에 배치됩니다. 진단 모듈을 가져올 때 이러한 위치 중 하나에 구성 파일이 있으면 진단 모니터가 기본 설정 대신 구성 파일을 사용하여 설정을 구성합니다. 웹 또는 작업자 역할을 배포할 때 diagnostics.wadcfg 파일의 구성 정보가 저장소 계정의 wad-control-container 컨테이너에 기록됩니다. 자세한 진단 구성 파일 사용 방법은 Windows Azure 진단 구성 파일 사용을 참조하십시오.

DiagnosticMonitorConfiguration과 함께 Start 메서드를 사용하여 역할의 OnStart 메서드에서 진단 구성을 설정할 수 있습니다. 새 배포에서는 이 접근 방식이 효과적이지만 배포를 업데이트할 경우에는 효과적이지 않으므로 사용하지 않는 것이 좋습니다.

클라우드 서비스를 배포한 후에는 DeploymentDiagnosticManager 클래스를 사용하여 Windows Azure 외부의 응용 프로그램에서 실행 중인 코드에서 진단 모니터의 구성을 원격으로 변경할 수 있습니다. 이 클래스에서 하나 이상의 역할 인스턴스에 대해 진단 모니터를 수정할 수 있습니다. 또한 RoleInstanceDiagnosticManager 클래스를 사용하여 단일 역할 인스턴스에 대해 진단 모니터의 구성을 변경할 수도 있습니다. 자세한 내용은 진단 모니터 구성 원격 변경을 참조하십시오.

참고 항목

표시:
© 2014 Microsoft. All rights reserved.