Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

Surveiller les applications du déploiement à l'aide de l'Agent de surveillance Microsoft

Vous pouvez surveiller localement les erreurs, problèmes de performances, ou autres problèmes des applications Web ASP.NET hébergées par IIS ou des applications SharePoint 2010 ou 2013 à l'aide de Microsoft Monitoring Agent. Vous pouvez enregistrer les événements de diagnostic fournis par l'agent au sein d'un fichier journal IntelliTrace (.iTrace). Vous pouvez ensuite ouvrir le journal dans Visual Studio Ultimate 2013 pour déboguer les problèmes avec tous les outils de diagnostics de Visual Studio.

Si vous utilisez System Center 2012, utilisez Microsoft Monitoring Agent avec Operations Manager pour obtenir des alertes à propos de problèmes et pour créer des éléments de travail Team Foundation Server ayant des liens vers les journaux sauvegardés IntelliTrace. Vous pouvez ensuite assigner ces éléments de travail à d'autres pour du débogage supplémentaire. Voir l'intégration du gestionnaire de opérations avec les processus de développement et de contrôle avec Microsoft Monitoring Agent.

Avant de commencer, vérifiez que la source et les symboles correspondent au code créé et déployé. Cela vous permet d'accéder directement au code d'application lorsque vous démarrez le débogage et que vous naviguez les événements de diagnostic dans IntelliTrace Logs. Définissez vos builds afin que Visual Studio puisse automatiquement rechercher et ouvrir la source correspondante pour votre code déployé.

  1. Installer Microsoft Monitoring Agent.

  2. Commencez l'analyse de votre application.

  3. Sauvegardez les événements enregistrés.

Installez l'agent autonome sur votre serveur Web pour exécuter des analyses locales sans modifier votre application. Si vous utilisez System Center 2012, allez voir Installation de Microsoft Monitoring Agent.

Installez l'agent autonome

  1. Assurez-vous que :

  2. Téléchargez Microsoft Monitoring Agent gratuitement, soit la version 32 bits MMASetup-i386.exe soit la version 64 bits MMASetup-AMD64.exe, à partir du Centre de Téléchargement Microsoft vers votre serveur Web.

  3. Exécutez le fichier exécutable téléchargé pour ouvrir l'Assistant Installation.

  4. Créez un répertoire sécurisé sur votre serveur Web pour stocker les journaux IntelliTrace, par exemple C:\IntelliTraceLogs.

    Assurez-vous de créer ce répertoire avant de démarrer l'analyse. Pour empêcher de ralentir votre application, choisissez un emplacement sur un disque local ultra-rapide qui n'est pas très actif.

    Note de sécurité Note de sécurité

    Les journaux IntelliTrace peuvent contenir des informations personnelles et sensibles. Restreignez ce répertoire uniquement aux identités qui doivent fonctionner avec les fichiers. Vérifiez la politique de confidentialité de votre société.

  5. Pour effectuer une analyse détaillée au niveau des fonctions ou surveiller des applications SharePoint, donnez au pool d'applications qui héberge votre application Web ou à l'application SharePoint des autorisations de lecture et d'écriture dans le répertoire des journaux IntelliTrace. Comment faire pour mettre en place des autorisations pour le pool d'applications ?

Hh398365.collapse_all(fr-fr,VS.120).gifQ & R

Hh398365.collapse_all(fr-fr,VS.120).gifQ : Que se passe-t-il si j'ai Windows PowerShell 2.0 ?

R : Nous recommandons fortement l'utilisation de PowerShell 3.0. Sinon, vous devrez importer les applets de commande PowerShell de Microsoft Monitoring Agent chaque fois que vous exécutez PowerShell. Vous n'aurez pas non plus accès au contenu d'aide téléchargeable.

  1. Ouvrez Windows PowerShell ou une fenêtre d'invite de commandes Windows PowerShell ISE en tant qu'administrateur.

  2. Importez le module PowerShell de Microsoft Monitoring Agent à partir de l'emplacement d'installation par défaut :

    PS C:>Import-Module "C:\Program Files\Microsoft Monitoring Agent\Agent\PowerShell\Microsoft.MonitoringAgent.PowerShell\Microsoft.MonitoringAgent.PowerShell.dll"

  3. Pour obtenir le contenu d'aide le plus récent, visitez TechNet.

Hh398365.collapse_all(fr-fr,VS.120).gifQ: Comment faire pour mettre en place des autorisations pour le pool d'applications ?

R: Utilisez la commande icacls Windows ou l'Explorateur Windows (ou l'Explorateur de fichiers). Par exemple :

  • Pour configurer les autorisations avec la commande icacls Windows :

    • Pour une application Web du pool d'applications DefaultAppPool :

      icacls "C:\IntelliTraceLogs" /grant "IIS APPPOOL\DefaultAppPool":RX

    • Pour une application SharePoint du pool d'applications SharePoint - 80 :

      icacls "C:\IntelliTraceLogs" /grant "IIS APPPOOL\SharePoint - 80":RX

    ou

  • Pour configurer les autorisations avec l'Explorateur Windows (ou l'Explorateur de fichiers) :

    1. Ouvrez Propriétés pour accéder au répertoire de journal IntelliTrace.

    2. Sous l'onglet Sécurité, cliquez sur Modifier, Ajouter.

    3. Vérifiez que les Principaux de sécurité intégrés apparaissent dans la zone Sélectionnez ce type d'objet. Si ce n'est pas le cas, choisissez Types d’objets pour l'ajouter.

    4. Vérifiez que votre ordinateur local s'affiche dans la zone À partir de cet emplacement. Si ce n'est pas le cas, choisissez Emplacements pour le modifier.

    5. Dans la zone Entrez les noms des objets à sélectionner, ajoutez le pool d'applications pour l'application web ou l'application SharePoint.

    6. Choisissez Vérifier les noms pour résoudre le nom. Cliquez sur OK.

    7. Vérifiez que le pool d'applications dispose des autorisations de lecture & et exécution .

Utilisez la commande Start-WebApplicationMonitoring de Windows PowerShell pour commencer à surveiller votre application. Si vous utilisez System Center 2012, voir Surveillez des applications Web avec Microsoft Monitoring Agent.

  1. Sur votre serveur Web, ouvrez une fenêtre d'invite de commandes Windows PowerShell ou une fenêtre d'invite de commandes Windows PowerShell ISE en tant qu'administrateur.

    Ouvrir Windows PowerShell en tant qu'administrateur

  2. Exécutez la commande Start-WebApplicationMonitoring afin de commencer à surveiller votre application. Cela redémarrera toutes les applications Web sur votre serveur Web.

    Voici la syntaxe courte :

    Start-WebApplicationMonitoring "<appName>" <monitoringMode> "<outputPath>" <UInt32> "<collectionPlanPathAndFileName>"

    Voici un exemple qui utilise juste le nom de l'application Web et son mode Monitor léger :

    PS C:\>Start-WebApplicationMonitoring "Fabrikam\FabrikamFiber.Web" Monitor "C:\IntelliTraceLogs"

    Voici un exemple qui utilise le chemin IIS et Monitor le mode léger :

    PS C:\>Start-WebApplicationMonitoring "IIS:\sites\Fabrikam\FabrikamFiber.Web" Monitor "C:\IntelliTraceLogs"

    Après avoir commencé l'analyse vous pouvez constater que Microsoft Monitoring Agent s'interrompt pendant le redémarrage de vos applications.

    Démarrer la surveillance avec la confirmation de l'agent de surveillance Microsoft

    "<appName>"

    Spécifiez le chemin d'accès au site Web et le nom de l'application Web dans IIS. Vous pouvez également inclure le chemin d'accès IIS, si vous préférez.

    "<IISWebsiteName>\<IISWebAppName>"

    ou

    "IIS:\sites \<IISWebsiteName>\<IISWebAppName>"

    Vous pouvez rechercher ce chemin d'accès dans le Gestionnaire des services IIS. Par exemple :

    Chemin d'accès vers le site Web IIS et l'application Web

    Vous pouvez également utiliser les commandes Get-WebSite et Get WebApplication .

    <monitoringMode>

    Spécifier le mode d'analyse :

    • Monitor: Enregistrement des détails minimaux concernant les événements d'exception et les événements de performance. Ce mode utilise le plan de collection par défaut.

    • Trace: Enregistrement des détails de niveau fonction ou surveillez vos applications SharePoint 2010 et SharePoint 2013 en utilisant le plan de collection spécifié. Ce mode peut rendre l'exécution de votre application plus lente.

      Cet exemple enregistre les événements d'une application SharePoint hébergée sur un site SharePoint :

      Start-WebApplicationMonitoring "FabrikamSharePointSite\FabrikamSharePointApp" Trace "C:\Program Files\Microsoft Monitoring Agent\Agent\IntelliTraceCollector\collection_plan.ASP.NET.default.xml" "C:\IntelliTraceLogs"

    • Custom: Enregistrement des détails personnalisés à l'aide du plan de collection spécifié. Vous devrez redémarrer l'analyse si vous modifiez le plan de collection après que l'analyse ait démarré.

    "<outputPath>"

    Spécifiez le chemin d'accès complet pour stocker les journaux IntelliTrace. Assurez-vous de créer ce répertoire avant de démarrer l'analyse.

    <UInt32>

    Spécifiez la taille maximum du fichier journal IntelliTrace. La taille maximale par défaut du journal IntelliTrace est de 250 Mo.

    Lorsque le journal atteint cette limite, l'agent remplace les premières entrées pour libérer de l'espace pour plus d'entrées. Pour modifier cette limite, utilisez l'option -MaximumFileSizeInMegabytes ou modifiez l'attribut MaximumLogFileSize dans le plan de collection.

    "<collectionPlanPathAndFileName>"

    Spécifiez le chemin d'accès complet ou chemin d'accès relatif et le nom de fichier du plan de collection. Ce plan est un fichier .xml qui configure les paramètres de l'agent.

    Ces plans sont inclus avec l'agent et fonctionnent avec les applications web et les applications SharePoint :

    • collection_plan.ASP.NET.default.xml

      Collecte uniquement les événements, tels que les exceptions, les événements de performances, les appels de base de données, et les demandes de serveur Web.

    • collection_plan.ASP.NET.trace.xml

      Collecte des appels de niveau de fonction en plus de toutes les données contenues dans le plan de collection par défaut. Ce plan est judicieux pour l'analyse détaillée mais peut ralentir votre application.

    Vous pouvez rechercher les versions localisées de ces projets dans les sous-dossiers de l'agent. Personnalisez ces plans ou créez vos propres plans afin d'éviter de ralentir votre application. Placez tous les plans personnalisés dans le même emplacement sécurisé que l'agent.

    Comment obtenir le maximum de données autrement sans ralentir mon application ?

    Pour plus d'informations sur la syntaxe complète et d'autres exemples, exécutez la commande get-help Start-WebApplicationMonitoring –detailed ou la commande get-help Start-WebApplicationMonitoring –examples.

  3. Pour vérifier l'état de toutes les applications surveillées de votre site Web, exécutez la commande Get-WebApplicationMonitoringStatus .

Hh398365.collapse_all(fr-fr,VS.120).gifQ & R

Hh398365.collapse_all(fr-fr,VS.120).gifQ: Comment obtenir le maximum de données sans ralentir mon application ?

R: Microsoft Monitoring Agent peut collecter beaucoup de données et affecte plus ou moins les performances de votre application selon les données que vous choisissez de collecter et la façon dont vous les collectez. Voici certains moyens d'obtenir les données sans ralentir votre application :

  • Pour les applications Web et SharePoint, l'agent enregistre des données pour chaque application qui partage le pool d'applications spécifié. Cela peut ralentir les applications qui partagent le même pool d'applications, même si vous avez la possibilité de restreindre la collecte aux modules d'une seule application. Pour éviter de ralentir les autres applications, hébergez chaque application dans son propre pool d'applications.

  • Examinez les événements pour lesquels l'agent collecte des données dans le plan de collection. Modifiez le plan de collecte pour désactiver les événements qui ne sont pas pertinents ou qui ne vous intéressent pas. Cela peut améliorer les performances de démarrage et les performances d'exécution.

    Pour désactiver un événement, affectez à l'attribut enabled pour l'élément <DiagnosticEventSpecification> la valeur false :

    <DiagnosticEventSpecification enabled="false">

    Si l'attribut enabled n'existe pas, l'événement est activé.

    Par exemple :

    • Désactivez les événements Windows Workflow pour les applications qui n'utilisent pas Windows Workflow.

    • Désactivez les événements de registre pour les applications qui accèdent au registre mais qui n'indiquent pas de problèmes avec les paramètres du registre.

  • Examinez les modules pour lesquels l'agent collecte des données dans le plan de collection. Modifier le plan de collection pour n'y inclure que les modules qui vous intéressent.

    Ainsi, la quantité d'informations sur les appels de méthode et autres données d'instrumentation collectées par l'agent s'en trouve réduite, lorsque l'application démarre et est exécutée. Ces données vous permet de parcourir votre code lorsque vous déboguez et examinez des valeurs transmises et retournées par les appels de fonction.

    1. Ouvrez le plan de collecte. Recherchez l'élément <ModuleList>.

    2. Dans <ModuleList>, affectez la valeur false à l'attribut isExclusionList.

    3. Utilisez l'élément <Name> pour spécifier chaque module avec l'un des éléments suivants : nom de fichier, valeur de chaîne pour inclure tout module dont le nom contient cette chaîne ou cette clé publique.

    Cet exemple crée une liste qui collecte les données du seul module principal de l'application Web de Fabrikam Fiber :

    <ModuleList isExclusionList="false">
       <Name>FabrikamFiber.Web.dll</Name>
    </ModuleList>
    
    

    Pour collecter des données à partir de tout module dont le nom contient « Fabrikam », créez une liste comme celle ci-dessous :

    <ModuleList isExclusionList="false">
       <Name>Fabrikam</Name>
    </ModuleList>
    
    

    Pour collecter les données à partir de modules en spécifiant leurs jetons de clé publique, créez une liste comme celle ci-dessous :

    <ModuleList isExclusionList="false">
       <Name>PublicKeyToken:B77A5C561934E089</Name>
       <Name>PublicKeyToken:B03F5F7F11D50A3A</Name>
       <Name>PublicKeyToken:31BF3856AD364E35</Name>
       <Name>PublicKeyToken:89845DCD8080CC91</Name>
       <Name>PublicKeyToken:71E9BCE111E9429C</Name>
    </ModuleList>
    
    

    Q: Pourquoi ne simplement pas plutôt exclure les modules ?

    R: Les plans de collecte excluent les modules en affectant la valeur true à l'attribut isExclusionList par défaut. Toutefois, ceci peut tout de même collecter des données depuis les modules ne répondant pas aux critères de la liste ou étant susceptibles de ne pas vous intéresser, tels que des modules tiers ou les modules open source.

Hh398365.collapse_all(fr-fr,VS.120).gifQ: Quelles valeurs l'agent collecte-il ?

R: Pour réduire l'impact sur les performances, l'agent collecte uniquement les valeurs suivantes :

  • Les types de données primitifs qui sont transmises et retournées par des méthodes

  • Les types de données primitifs dans les champs pour les objets de premier niveau transmises et retournés par des méthodes

Par exemple, supposez que vous avez une signature de méthode AlterEmployee qui accepte un id entier et un objet oldemployeeEmployee :

public Employee AlterEmployee(int id, Employee oldemployee)

Le type Employee a les attributs suivants : Id, Name et HomeAddress. Une relation d'association existe entre Employee et le type Address.

Relations entre employés et adresse

L'agent enregistre des valeurs pour id, Employee.Id, Employee.Name et l'objet Employee retourné par la méthode AlterEmployee. Toutefois, la seule information enregistrée par l'agent à propos de l'objet Address se résume au fait que sa valeur est null ou non. L'agent n'enregistre pas non plus de données concernant les variables locales dans la méthode AlterEmployee sauf si d'autres méthodes les utilisent en tant que paramètres. Auquel cas, elles sont enregistrées en tant que paramètres de méthode.

Lorsque vous identifiez une erreur ou un problème de performance, sauvegardez les événements enregistrés dans un journal IntelliTrace. L'agent crée le journal uniquement s'il a enregistré des événements. Si vous utilisez System Center 2012, voir Surveillez des applications Web avec Microsoft Monitoring Agent.

Hh398365.collapse_all(fr-fr,VS.120).gifSauvegardez les événements enregistrés mais continuez l'analyse

Procédez comme suit pour créer le journal IntelliTrace mais ne souhaitez pas redémarrer votre application ou arrêter votre analyse. L'agent continue l'analyse même si le serveur ou l'application redémarre.

  1. Sur votre serveur Web, ouvrez une fenêtre d'invite de commandes Windows PowerShell en tant qu'administrateur.

  2. Exécutez la commande Checkpoint-WebApplicationMonitoring afin d'enregistrer un instantané du journal IntelliTrace :

    Checkpoint-WebApplicationMonitoring "<IISWebsiteName>\<IISWebAppName>"

    - ou -

    Checkpoint-WebApplicationMonitoring "IIS:\sites \<IISWebsiteName>\<IISWebAppName>"

    Par exemple :

    PS C:\>Checkpoint-WebApplicationMonitoring "Fabrikam\FabrikamFiber.Web"

    ou

    PS C:\>Checkpoint-WebApplicationMonitoring "IIS:\sites\Fabrikam\FabrikamFiber.Web"

    Pour plus d'informations, exécutez la commande get-help Checkpoint-WebApplicationMonitoring –detailed ou la commande get-help Checkpoint-WebApplicationMonitoring –examples.

  3. Copiez le journal dans un dossier partagé sécurisé, puis ouvrez le journal à partir d'un ordinateur sur lequel est installé Visual Studio 2013 Ultimate.

    Note de sécurité Note de sécurité

    Soyez prudent lorsque vous partagez des journaux IntelliTrace parce qu'ils peuvent contenir des informations personnelles et sensibles. Vérifiez que ceu qui peuvent accéder à ces journaux ont l'autorisation de consulter ces données. Vérifiez la politique de confidentialité de votre société.

Ensuite : Diagnostiquez les événements enregistrés dans Visual Studio Ultimate 2013

Hh398365.collapse_all(fr-fr,VS.120).gifEnregistrez les événements enregistrés et arrêter l'analyse

Suivez les étapes ci-après si vous souhaitez simplement obtenir des informations de diagnostic lors de la reproduction d'un problème spécifique. Cela redémarrera toutes les applications Web sur votre serveur Web.

  1. Sur votre serveur Web, ouvrez une fenêtre d'invite de commandes Windows PowerShell en tant qu'administrateur.

  2. Exécutez la commande Stop-WebApplicationMonitoring pour créer le journal IntelliTrace et arrêter l'analyse d'une application Web spécifique :

    Stop-WebApplicationMonitoring "<IISWebsiteName>\<IISWebAppName>"

    - ou -

    Stop-WebApplicationMonitoring "IIS:\sites \<IISWebsiteName>\<IISWebAppName>"

    Sinon, pour arrêter la surveillance de toutes les applications Web :

    Stop-WebApplicationMonitoring -All

    Par exemple :

    PS C:\>Stop-WebApplicationMonitoring "Fabrikam\iFabrikamFiber.Web"

    - ou -

    PS C:\>Stop-WebApplicationMonitoring "IIS:\sites\Fabrikam\FabrikamFiber.Web"

    Pour plus d'informations, exécutez la commande get-help Stop-WebApplicationMonitoring –detailed ou la commande get-help Stop-WebApplicationMonitoring –examples.

  3. Copiez le journal dans un dossier partagé sécurisé, puis ouvrez le journal à partir d'un ordinateur sur lequel est installé Visual Studio 2013 Ultimate.

Ensuite : Diagnostiquez les événements enregistrés dans Visual Studio Ultimate 2013

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft