내보내기(0) 인쇄
모두 확장

요청 시 전송 수행

업데이트 날짜: 2013년 12월

Microsoft.WindowsAzure.Diagnostics.Management의 클래스를 사용하여 진단 데이터의 요청 시 전송을 수행할 수 있습니다. 역할 내에서 실행되는 코드, Windows Azure에서 실행되는 다른 응용 프로그램 또는 Windows Azure 외부의 응용 프로그램에서 요청 시 전송을 완료할 수 있습니다. 이 섹션의 단계를 완료하기 전에 진단 모니터를 초기화하고 사용할 저장소 계정을 지정해야 합니다. 자세한 방법은 Windows Azure에서 진단 사용을 참조하십시오.

배포 식별자, 역할 이름 및 역할 인스턴스 이름 가져오기

Windows Azure 외부에서 실행되는 코드에서 요청 시 전송을 수행할 경우 포털에 표시되는 응용 프로그램의 배포 식별자, 역할 이름 및 역할 인스턴스 이름을 적어서 수동으로 가져와야 합니다.

배포 식별자, 역할 이름 및 역할 인스턴스 이름을 가져오려면

  1. 포털에 로그온합니다.

  2. 계산 서비스를 클릭한 다음 응용 프로그램에 해당하는 노드를 확장합니다.

  3. 응용 프로그램의 배포를 클릭합니다.

  4. 속성 창에서 ID 값을 기록합니다. 이 값이 호스팅된 서비스의 배포 식별자입니다.

  5. 배포 노드를 확장한 다음 진단 데이터를 수집할 역할에 대한 노드를 클릭합니다.

  6. 속성 창에서 이름 값을 기록합니다. 이 값은 역할의 이름입니다.

  7. 역할 노드를 확장한 다음 역할 인스턴스에 대한 노드를 클릭합니다.

  8. 속성 창에서 이름 값을 기록합니다. 이 값은 역할 인스턴스의 식별자입니다.

진단 데이터의 요청 시 전송 수행

실행 중인 역할 내에서 요청 시 전송을 수행하려는 경우 RoleInstanceDiagnosticManager 클래스의 속성을 사용할 수 있습니다.

요청 시 전송을 수행하려면

  1. 전송을 수행하는 데 사용할 프로그램의 원본 파일을 엽니다.

  2. 프로젝트가 Microsoft.WindowsAzure.Diagnostics.dll 파일을 참조하며, 이 파일에 다음 using 문이 추가되어 있는지 확인합니다.

    
    using Microsoft.WindowsAzure.Diagnostics; 
    using Microsoft.WindowsAzure.Diagnostics.Management;
    
    
  3. 구성에서 저장소 자격 증명을 가져옵니다. 다음 코드 예제에 Parse 메서드를 사용하여 자격 증명을 가져오는 방법이 나와 있습니다.

    var storageAccount = CloudStorageAccount.Parse("DefaultEndpointsProtocol=https;AccountName=AccountName;AccountKey=<AccountKey>");
    

    연결 문자열 사용에 대한 자세한 내용은 Windows Azure 연결 문자열 구성을 참조하십시오.

  4. DeploymentDiagnosticManager의 인스턴스를 만듭니다. 다음 코드 예제는 저장소 계정 개체 및 배포 식별자를 사용하여 새 인스턴스를 만드는 방법을 보여 줍니다.

    
    var diagManager = new DeploymentDiagnosticManager(storageAccount, "<DeploymentID>"); 
    
    

    여기서 <DeploymentID>는 이전 단계에서 구한 값입니다.

  5. 역할 인스턴스 진단 관리자를 만듭니다. 다음 코드 예제는 이 진단 관리자를 만드는 방법을 보여 줍니다.

    var roleInstDiagMgr = diagManager.GetRoleInstanceDiagnosticManager("<RoleName>", "<RoleInstanceID>");
    

    여기서 <RoleName> 및 <RoleInstanceID>는 이전 단계에서 구한 값입니다.

  6. 전송할 로그를 지정합니다. 다음 코드 예제는 Windows Azure 로그를 전송하는 방법을 보여 줍니다.

    DataBufferName dataBuffersToTransfer = DataBufferName.Logs;
    

    추가할 수 있는 데이터 버퍼에 대한 자세한 내용은 DataBufferName을 참조하십시오.

  7. 전송 옵션을 지정합니다. 다음 코드 예제는 3시간 전부터 지금까지의 항목을 전송하는 방법을 보여 줍니다.

    
    OnDemandTransferOptions transferOptions = new OnDemandTransferOptions();
    transferOptions.NotificationQueueName = "wad-on-demand-transfers";
    var timeInterval = new TimeSpan(3, 0, 0);
    transferOptions.From = DateTime.UtcNow.Subtract(timeInterval);
    transferOptions.To = DateTime.UtcNow;
    
    

    전송 옵션에 대한 자세한 내용은 OnDemandTransferOptions를 참조하십시오.

  8. 데이터 전송을 요청합니다. 다음 코드 예제는 정의된 데이터 버퍼 및 전송 옵션을 사용하여 전송을 시작하는 방법을 보여 줍니다.

    Guid requestID = roleInstDiagMgr.BeginOnDemandTransfer(dataBuffersToTransfer, transferOptions);
    

참고 항목

Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
표시:
© 2014 Microsoft