Journalisation de la configuration
La journalisation de la configuration est une fonctionnalité qui capture les modifications apportées à la configuration du site et les activités administratives effectuées sur la base de données. Par défaut, cette fonction est activée. Vous pouvez utiliser le contenu consigné pour :
- Diagnostiquer et résoudre les problèmes après que des modifications sont apportées à la configuration. Le journal fournit une arborescence hiérarchique.
- Assister la gestion des modifications et suivre les configurations.
- Signaler les activités administratives.
Vous définissez les préférences de journalisation de la configuration, afficher les journaux de configuration et générer des rapports HTML et CSV à partir de Citrix Studio. Vous pouvez filtrer les affichages des journaux de configuration par plages de dates et selon les résultats de recherche en texte intégral. La journalisation obligatoire, lorsqu’elle est activée, empêche les modifications de la configuration à moins qu’elles puissent être journalisées. Avec des autorisations appropriées, vous pouvez supprimer des entrées dans le journal de configuration. Vous ne pouvez pas utiliser la fonction de journalisation de la configuration pour modifier le contenu du journal.
La journalisation de la configuration utilise un SDK PowerShell et le service de journalisation de la configuration. Le service de journalisation de la configuration s’exécute sur chaque Controller du site. Si un Controller échoue, le service sur un autre Controller traite automatiquement les demandes de journalisation.
Par défaut, la fonction de journalisation de la configuration est activée, et utilise la base de données qui est créée lorsque vous créez le site (la base de données de configuration de site). Vous pouvez spécifier un emplacement différent pour la base de données. La base de données de journalisation de la configuration prend en charge les mêmes fonctions haute disponibilité que la base de données de configuration de site.
L’accès à la journalisation de la configuration est contrôlé via l’administration déléguée, avec les autorisations Modifier les préférences de journalisation et Afficher les journaux de configuration.
Les journaux de configuration sont localisés lorsqu’ils sont créés. Par exemple, un journal créé en anglais est lu en anglais, quels que soient les paramètres régionaux du lecteur.
Qu’est-ce qui est journalisé
Les modifications de configuration et les activités administratives initiées depuis Studio, Director et des scripts PowerShell sont journalisées. Les exemples de modifications apportées à la configuration journalisées comprennent l’utilisation de (création, modification, suppression des attributions) :
- Catalogues de machines
- Groupes de mise à disposition (y compris la modification des paramètres de gestion de la puissance)
- Rôles et étendues de l’administrateur
- Ressources et connexions de l’hôte
- Stratégies Citrix au travers de Studio
Exemples de modifications administratives journalisées :
- Gestion de la puissance d’une machine virtuelle ou d’un bureau utilisateur
- Envoi d’un message à un utilisateur par Studio ou Director
Les opérations suivantes ne sont pas enregistrées :
- Opérations autonomes telles que la mise sous tension de la gestion du pool de machines virtuelles.
- Actions de stratégie implémentées au travers de la console de gestion des stratégies de groupe (GPMC) ; utilisez les outils Microsoft pour afficher des journaux de ces actions.
- Les modifications effectuées via le Registre, accès direct à la base de données, ou à partir de sources autres que Studio, Director ou PowerShell.
- Lorsque le déploiement est initialisé, la journalisation de la configuration est disponible lorsque la première instance du service de journalisation de la configuration s’enregistre auprès du service de configuration. Par conséquent, les premières étapes de configuration ne sont pas journalisées (par exemple, lorsque le schéma de base de données est obtenu et appliqué, lors de l’initialisation d’un hyperviseur).
Gérer la journalisation de la configuration
Par défaut, la journalisation de la configuration utilise la base de données qui est créée lorsque vous créez un site (également connu sous le nom de base de données de configuration de site). Citrix vous recommande d’utiliser un autre emplacement pour la base de données de journalisation de configuration (et la base de données de surveillance) pour les raisons suivantes :
- La stratégie de sauvegarde de la base de données de journalisation de la configuration est susceptible d’être différente de celle de la stratégie de sauvegarde de la base de données de configuration de site.
- Le volume de données collectées pour la journalisation de la configuration (et le service de surveillance) peut avoir un impact négatif sur l’espace disponible pour la base de données de configuration de site.
- Elle partage le point de défaillance unique pour les trois des bases de données.
Les éditions de produit qui ne prennent pas en charge la journalisation de la configuration ne disposent pas d’un nœud Journalisation dans Studio.
Activer/désactiver la journalisation de la configuration et la journalisation obligatoire
Par défaut, la journalisation de la configuration est activée et la journalisation obligatoire est désactivée.
- Connectez-vous à Web Studio et sélectionnez Journalisation dans le volet de gauche.
- Sélectionnez Préférences dans la barre d’actions. La boîte de dialogue Journalisation de la configuration contient des informations de base de données et indique si la journalisation de la configuration et la journalisation obligatoire sont activées ou désactivées.
-
Sélectionnez l’action souhaitée :
Pour activer la journalisation de la configuration, sélectionnez Activer. C’est le réglage par défaut. S’il est impossible d’écrire sur la base de données, les informations de journalisation sont ignorées, mais l’opération se poursuit.
Pour désactiver la journalisation de la configuration, sélectionnez Désactiver. Si la journalisation était préalablement activée, les journaux existants restent lisibles avec le SDK PowerShell.
Pour activer la journalisation obligatoire, sélectionnez Empêche les modifications à la configuration du site lorsque la BDD n’est pas disponible. Aucune modification de la configuration ou activité administrative ne sera enregistrée (contrairement à la normale) à moins qu’elle puisse être écrite dans la base de données de journalisation de la configuration. Vous pouvez activer la journalisation obligatoire uniquement lorsque la journalisation de la configuration est activée (c’est-à-dire lorsque Activer est sélectionné). Si le service de journalisation de la configuration échoue, et que la haute disponibilité n’est pas utilisée, la journalisation obligatoire est utilisée. Dans de tels cas, les opérations qui seraient normalement enregistrées ne le sont pas.
Pour désactiver la journalisation obligatoire, sélectionnez Autoriser modifications de la configuration du site lorsque la BDD n’est pas disponible. Les modifications de configuration et les activités administratives sont autorisées, même si la base de données utilisée pour la journalisation de la configuration est inaccessible. C’est le réglage par défaut.
Pour modifier l’emplacement de la base de données de journalisation de la configuration
Vous ne pouvez pas modifier l’emplacement de la base de données lorsque la journalisation obligatoire est activée, car la modification de l’emplacement inclut un bref intervalle qui ne peut pas être enregistré.
- Créez un serveur de base de données, à l’aide d’une version SQL Server prise en charge.
- Connectez-vous à Web Studio et sélectionnez Journalisation dans le volet de gauche.
- Sélectionnez Préférences dans la barre d’actions.
- Dans la boîte de dialogue Préférences de journalisation, sélectionnez Modifier la base de données de journalisation.
- Dans la boîte de dialogue Changer la base de données de journalisation, spécifiez l’emplacement du serveur contenant le nouveau serveur de base de données. Voir Formats d’adresse de base de données pour les formats valides.
- Pour autoriser Studio pour créer la base de données, cliquez sur OK. Lorsque vous y êtes invité, cliquez sur OK et la base de données sera créée automatiquement. Studio tente d’accéder à la base de données à l’aide des informations d’identification de l’utilisateur de Studio. Si la tentative échoue, vous êtes invité à entrer les informations d’identification de l’utilisateur de la base de données. Studio télécharge ensuite le schéma de base de données vers la base de données. (Les informations d’identification ne sont conservées que lors de la création de la base de données.)
- Pour créer la base de données manuellement, cliquez sur Générer script de base de données. Le script généré comprend des instructions pour la création manuelle de la base de données. Assurez-vous que la base de données est vide et qu’au moins un utilisateur est autorisé à accéder et modifier la base de données avant le chargement du schéma.
Les données journalisation de la configuration ne sont pas importées vers la nouvelle base de données. Les journaux ne peuvent pas être regroupés pour les deux bases de données lors de la récupération des journaux. La première entrée du journal dans la nouvelle base de données de journalisation de la configuration indique qu’une modification a été apportée dans une base de données, mais elle n’identifie pas la base de données précédente.
Afficher le contenu du journal de configuration
Lorsque vous effectuez des modifications de configuration et des activités administratives, les opérations de haut niveau créées par Studio et Director sont affichées dans la partie supérieure du panneau central dans Studio. Une opération de haut niveau se traduit par un ou plusieurs appels de service et de SDK, qui sont des opérations de bas niveau. Lorsque vous sélectionnez une opération de haut niveau dans le panneau supérieur, le panneau inférieur affiche les opérations de bas niveau.
Si une opération échoue avant la fin de l’opération, l’opération de journalisation peut ne pas être effectuée dans la base de données. Par exemple, un enregistrement de début n’aura pas d’enregistrement de fin correspondant. Dans de tels cas, le journal indique qu’il manque des informations. Lorsque vous affichez les journaux basés en fonction de plages de temps, les journaux incomplets sont affichés si les données dans les journaux correspondent aux critères. Par exemple, si tous les journaux des cinq derniers jours sont demandés et qu’un journal existe avec une heure de début dans les cinq derniers jours, mais sans date de fin, il est inclus.
Lors de l’utilisation d’un script pour appeler des applets de commande PowerShell, si vous créez une opération de bas niveau sans spécifier une opération de haut niveau parente, la journalisation de la configuration crée une opération de haut niveau de substitution.
Pour afficher le contenu du journal de configuration, sélectionnez Journalisation dans le panneau de navigation de Studio. Par défaut, le panneau central affiche le contenu du journal par ordre chronologique (la plus récente des entrées en premier), en les séparant par date. Vous pouvez :
- Trier l’affichage par en-tête de colonne.
- Filtrer l’affichage en spécifiant un intervalle de jours ou en entrant du texte dans la zone Rechercher. Pour revenir à l’affichage standard après la recherche, désactivez le texte dans la zone Rechercher.
- Choisissez les colonnes à afficher à l’écran en sélectionnant l’icône Colonnes à afficher dans le coin supérieur droit du tableau. Par exemple, pour afficher l’adresse IP utilisée par l’administrateur pour accéder à Web Studio, cliquez sur l’icône et ajoutez la colonne IP client.
Générer des rapports
Vous pouvez générer des rapports au format CSV et HTML contenant les données du journal de la configuration.
- Le rapport CSV contient toutes les données de journalisation à partir d’un intervalle de temps spécifié. La hiérarchie des données dans la base de données est aplatie dans un seul tableau CSV. Aucun aspect des données n’a la priorité dans le fichier. Aucune mise en forme n’est utilisée, les données sont donc inintelligibles. Le fichier (appelé sur MyReport) contient les données dans un format lisible. Les fichiers CSV sont souvent utilisés pour l’archivage des données ou en tant que source de données pour un outil de création de rapports ou de manipulation de données tel que Microsoft Excel.
- Le rapport HTML fournit un formulaire lisible des données de journalisation pour un intervalle de temps spécifié. Il fournit une vue structurée et navigable pour la vérification des modifications. Un rapport HTML se compose de deux fichiers appelés Résumé et Détails. Le fichier Résumé répertorie les opérations de haut niveau : moment auquel chaque opération se produit, personne qui réalise l’opération et le résultat. Si vous cliquez sur un lien Détails en regard de chaque opération, vous êtes amené aux opérations de bas niveau dans le fichier Détails, qui fournit des informations supplémentaires.
Pour générer un rapport du journal de configuration, sélectionnez Journalisation dans le panneau de navigation de Studio, puis sélectionnez Créer un rapport personnalisé dans la barre d’actions.
- Sélectionnez la plage de dates pour le rapport.
- Sélectionnez le format du rapport : CSV, HTML ou les deux.
- Accédez à l’emplacement où vous souhaitez enregistrer le rapport.
Supprimer le contenu du journal de configuration
Pour supprimer le journal de configuration, vous devez posséder certaines permissions d’administration déléguée et de base de données SQL Server.
-
Administration déléguée : vous devez disposer d’un rôle Administration déléguée qui permet la lecture de la configuration du déploiement. Le rôle d’administrateur complet dispose de cette autorisation. Les options En lecture seule ou Gérer doivent être sélectionnées dans la catégorie Autres permissions pour un rôle personnalisé.
Pour créer une copie de sauvegarde des données de journalisation de la configuration avant de les supprimer, les options En lecture seule ou Gérer doivent également être sélectionnées dans la catégorie Permissions de journalisation pour le rôle personnalisé.
-
Base de données SQL Server : vous devez disposer d’une connexion au serveur SQL avec la permission de supprimer des enregistrements de la base de données. Il existe deux façons de procéder :
-
Utiliser une connexion à une base de données SQL Server avec un rôle de serveur sysadmin, ce qui vous permet d’effectuer toute activité sur le serveur de base de données. Les rôles de serveur
serveradmin
ousetupadmin
vous permettent d’effectuer des opérations de suppression. -
Si votre déploiement requiert une sécurité supplémentaire, utilisez une connexion de base de données non-sysadmin mappée sur un utilisateur de base de données qui est autorisé à supprimer des enregistrements de la base de données.
- Dans SQL Server Management Studio, créez une connexion SQL Server avec un rôle de serveur autre que « sysadmin ».
- Mappez la connexion à un utilisateur dans la base de données. SQL Server crée automatiquement un utilisateur dans la base de données avec le même nom que la connexion.
- Dans l’appartenance au rôle de base de données, spécifiez au moins un des membres de rôle pour la base de données utilisateur :
ConfigurationLoggingSchema_ROLE
oudbowner
.
Pour de plus amples informations, consultez la documentation de SQL Server Management Studio.
-
Pour supprimer les journaux de configuration :
- Connectez-vous à Web Studio et sélectionnez Journalisation dans le volet de gauche.
- Sélectionnez Supprimer les journaux dans la barre d’actions.
- Vous êtes invité à indiquer si vous voulez créer une sauvegarde des journaux avant de les supprimer. Si vous choisissez de créer une copie de sauvegarde, naviguez jusqu’à l’emplacement où l’archive de sauvegarde est enregistrée. La sauvegarde va être créée en tant que fichier CSV.
Une fois les journaux de configuration effacés, la suppression du journal est la première activité consignée dans le journal vide. Cette entrée fournit des informations sur la personne qui a supprimé les journaux et la date à laquelle ils ont été supprimés.
Afficher les journaux de l’API et de PowerShell
Pour surveiller les requêtes d’API effectuées au cours de votre session en cours, cliquez sur l’onglet API. Les journaux d’API sont effacés lorsque vous vous déconnectez de Web Studio.
Pour afficher les commandes PowerShell correspondant aux actions de l’interface utilisateur que vous avez effectuées au cours de la journée, cliquez sur l’onglet PowerShell.
Associer des métadonnées aux journaux de configuration
Vous pouvez joindre des métadonnées aux journaux de configuration en associant une paire name-value
appelée MetadataMap
aux enregistrements des journaux.
Remarque :
- Vous ne pouvez associer des métadonnées qu’à des objets d’opération de haut niveau.
- Les métadonnées sont associées aux enregistrements existants au moment de l’exécution.
Définir les métadonnées
Exécutez la commande PowerShell Set-LogHighLevelOperationMetadata
pour associer un enregistrement de journal à MetadataMap
.
Set-LogHighLevelOperationMetadata
accepte les paramètres suivants :
- ID : ID de l’opération de haut niveau.
-
InputObject : opérations de haut niveau auxquelles vous ajoutez les métadonnées. Il s’agit d’une alternative au paramètre
Id
dans lequel un objet d’opération de haut niveau ou une liste d’objets est transmis à la commande PowerShell. -
Name : nom de propriété des métadonnées à ajouter. La propriété doit être unique pour l’opération de haut niveau spécifiée. La propriété ne peut contenir aucun des caractères suivants : ()/;:#.*?=<> []”’. - Value : valeur de la propriété.
-
Map : dictionnaire des paires (name, value) pour les propriétés. Il s’agit d’une alternative à la définition des métadonnées utilisant les paramètres
-Name
et-Value
.
Par exemple, pour associer les métadonnées à tous les enregistrements de journal de haut niveau portant l’ID 40, exécutez la commande PowerShell suivante :
Get-LogHighLevelOperation – Id 40 | Set-LogHighLevelOperationMetadata -Name A -Value B
Pour associer les métadonnées à l’enregistrement de haut niveau avec l’utilisateur abc@example.com
, exécutez la commande PowerShell suivante :
Get-LogHighLevelOperation – User `abc@example.com` | Set-LogHighLevelOperationMetadata -Name C -Value D
Récupérer les enregistrements à l’aide des métadonnées
Exécutez les commandes PowerShell suivantes pour utiliser les métadonnées associées afin de récupérer les enregistrements de journal :
-
Recherche par clé et par valeur :
Get-LogHighLevelOperation -Metadata "Key:Value"
-
Recherche par valeur et n’importe quelle clé :
Get-LogHighLevelOperation -Metadata "*:Value"
-
Recherche par clé et par n’importe quelle valeur :
Get-LogHighLevelOperation -Metadata "Key:*"
Supprimer les métadonnées
Exécutez la commande PowerShell Remove-LogHighLevelOperationMetadata
pour supprimer les métadonnées associées.
Remove-LogHighLevelOperationMetadata
utilise les paramètres suivants :
- ID : ID de l’opération de haut niveau.
-
InputObject : opérations de haut niveau auxquelles vous ajoutez les métadonnées. Il s’agit d’une alternative au paramètre
Id
` dans lequel un objet d’opération de haut niveau ou une liste d’objets est transmis à la commande PowerShell. - Name : nom de propriété des métadonnées à supprimer. Définissez cette valeur sur $null pour supprimer toutes les métadonnées de l’objet spécifié.
- Map : dictionnaire des paires (name, value) pour les propriétés. Il peut s’agir d’une table de hachage (créée avec @{“name1” = “val1”; “name2” = “val2”}) ou d’un dictionnaire de chaînes (créé avec new-object “System.Collections.Generic.Dictionary[String, String]”). Les propriétés dont les noms correspondent aux clés du dictionnaire sont supprimées.
Dans cet article
- Qu’est-ce qui est journalisé
- Gérer la journalisation de la configuration
- Activer/désactiver la journalisation de la configuration et la journalisation obligatoire
- Pour modifier l’emplacement de la base de données de journalisation de la configuration
- Afficher le contenu du journal de configuration
- Générer des rapports
- Supprimer le contenu du journal de configuration
- Afficher les journaux de l’API et de PowerShell
- Associer des métadonnées aux journaux de configuration