War diese Seite hilfreich?
Ihr Feedback ist uns wichtig. Teilen Sie uns Ihre Meinung mit.
Weiteres Feedback?
1500 verbleibende Zeichen
Exportieren (0) Drucken
Alle erweitern

Durchführen einer bedarfsgesteuerten Übertragung

Letzte Aktualisierung: Dezember 2014

Sie können die Klassen in Microsoft.WindowsAzure.Diagnostics.Management verwenden, um eine bedarfsgesteuerte Übertragung von Diagnosedaten durchzuführen. Eine bedarfsgesteuerte Übertragung kann über den in einer Rolle ausgeführten Code, über eine andere in Microsoft Azure ausgeführte Anwendung oder über eine Anwendung außerhalb von Microsoft Azure durchgeführt werden. Vor dem Ausführen der Schritte in diesem Abschnitt müssen Sie den Diagnosemonitor initialisieren und das Speicherkonto angeben, das verwendet werden soll. Informationen hierzu finden Sie unter Aktivieren der Diagnose in Windows Azure.

Wenn Sie eine bedarfsgesteuerte Übertragung mithilfe von Code durchführen, der außerhalb von Microsoft Azure ausgeführt wird, müssen Sie den Bereitstellungsbezeichner, den Rollennamen und den Rolleninstanznamen für Ihre Anwendung abrufen, indem Sie diese manuell im Portal aufzeichnen.

  1. Melden Sie sich am Portal an.

  2. Klicken Sie auf Serverdienste, und erweitern Sie dann den Knoten für die Anwendung.

  3. Klicken Sie auf die Bereitstellung für die Anwendung.

  4. Notieren Sie den Wert für ID aus dem Eigenschaftenbereich. Dies ist der Bereitstellungsbezeichner des gehosteten Diensts.

  5. Erweitern Sie den Bereitstellungsknoten, und klicken Sie dann auf den Knoten der Rolle, aus der Sie Diagnosedaten sammeln möchten.

  6. Notieren Sie den Wert für Name aus dem Eigenschaftenbereich. Das ist der Name der Rolle.

  7. Erweitern Sie den Knoten der Rolle, und klicken Sie dann auf den Knoten für die Rolleninstanz.

  8. Notieren Sie den Wert für Name aus dem Eigenschaftenbereich. Dies ist der Bezeichner der Rolleninstanz.

Wenn Sie von innerhalb einer ausgeführten Rolle eine bedarfsgesteuerte Übertragung durchführen möchten, können Sie die Eigenschaften der RoleInstanceDiagnosticManager-Klasse verwenden.

noteHinweis
Dies gilt für Azure SDK 2.4 und niedriger.

  1. Öffnen Sie die Quelldatei für das Programm, das Sie für die Übertragung verwenden.

  2. Stellen Sie sicher, dass das Projekt auf die Datei Microsoft.WindowsAzure.Diagnostics.dll verweist und dass der Datei die folgenden using-Anweisungen hinzugefügt wurden:

    
    using Microsoft.WindowsAzure.Diagnostics; 
    using Microsoft.WindowsAzure.Diagnostics.Management;
    
    
  3. Rufen Sie die Anmeldeinformationen aus der Konfiguration ab. Im folgenden Codebeispiel wird gezeigt, wie die Parse-Methode zum Abrufen der Anmeldeinformationen verwendet wird:

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

    Weitere Informationen zum Verwenden von Verbindungszeichenfolgen finden Sie unter How to Configure Connection Strings.

  4. Erstellen Sie eine Instanz der DeploymentDiagnosticManager-Klasse. Im folgenden Codebeispiel wird gezeigt, wie mithilfe des Speicherkontoobjekts und des Bereitstellungsbezeichners eine neue Instanz erstellt wird:

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

    Hierbei ist <DeploymentID> der Wert, den Sie im vorherigen Verfahren abgerufen haben.

  5. Erstellen Sie einen Rolleninstanz-Diagnosemanager. Im folgenden Codebeispiel wird veranschaulicht, wie dieser Diagnosemanager erstellt wird:

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

    Hierbei sind <RoleName> und <RoleInstanceID> die Werte, die Sie im vorherigen Verfahren abgerufen haben.

  6. Geben Sie die Protokolle an, die Sie übertragen möchten. Im folgenden Codebeispiel wird gezeigt, wie Microsoft Azure-Protokolle übertragen werden:

    DataBufferName dataBuffersToTransfer = DataBufferName.Logs;
    

    Informationen zu den Datenpuffern, die hinzugefügt werden können, finden Sie unter DataBufferName.

  7. Geben Sie die Übertragungsoptionen an. Das folgende Codebeispiel veranschaulicht, wie die Einträge aus den letzten drei Stunden übertragen werden:

    
    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;
    
    

    Weitere Informationen zu den Übertragungsoptionen finden Sie unter OnDemandTransferOptions.

  8. Fordern Sie die Datenübertragung an. Im folgenden Codebeispiel wird gezeigt, wie die Übertragung mithilfe der Datenpuffer und der definierten Übergangsoptionen gestartet wird:

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

Siehe auch

Anzeigen:
© 2015 Microsoft