Sous-système de support
Sous-système de support active les outils que vous pouvez utiliser pour diagnostiquer les problèmes dans un environnement ThingWorx. Vous pouvez utiliser ce sous-système pour configurer l'exécution de traces de pile et de heap dumps dans votre environnement. Dans ThingWorx 9.0.11, 9.1.6 et 9.2.2 et versions ultérieures, le sous-système de support est activé par défaut et ne peut pas être arrêté ni désactivé.
Ce sous-système remplace l'extension PTC Support Tools, qui n'est plus prise en charge.
Services
Services spécifiques au Sous-système de support
Description
DeleteStacktraceFiles
Supprime tous les fichiers du SupportRepository qui ont le même format que les fichiers de trace de pile générés par le Sous-système de support. Vous pouvez utiliser ce service pour supprimer les fichiers de trace de pile précédents inutiles afin que de nouvelles traces de pile puissent être effectuées.
DisableHeapDumps
Attribue la valeur "faux" à la case à cocher Activer le vidage de la mémoire dans la table de configuration Paramètres de surveillance. Lorsque l'option Activer le vidage de la mémoire est définie sur "faux", les services DumpHeap et DumpHeapAndAllThreads ne peuvent pas s'exécuter.
DumpAllThreads
Collecte les traces de pile de tous les threads sur la plateforme qui exécutent le service. Dans un environnement de cluster, seule la plateforme qui reçoit la demande collectera une trace de pile. Une fois la trace de pile collectée, un fichier est généré dans SupportRepository, nommé stacktrace_<id-plateforme>, où <id-plateforme> est l'ID de plateforme dans le fichier platform-settings.json de cette plateforme. Si le service est à nouveau appelé sur la même plateforme, une nouvelle trace de pile est collectée et ajoutée à la fin du fichier existant. DumpAllThreads ne s'exécutera pas s'il y a moins de 5 % d'espace disque disponible dans SupportRepository.
DumpHeap
Collecte un heap dump sur la plateforme qui exécute le service. Si la case à cocher Activer le vidage de la mémoire dans la configuration Paramètres de surveillance est définie sur "faux" (valeur par défaut) ou si le service EnableHeapDumps n'est pas appelé, aucun heap dump n'est collecté.
Dans un environnement de cluster, seule la plateforme qui reçoit l'appel de service collectera le heap dump. Une fois le heap dump collecté, un fichier est généré dans SupportRepository, nommé heapdump_<id-plateforme>_<horodatage>.hprof<id-plateforme> est l'ID de plateforme affecté à cette plateforme dans son fichier platform-settings.json et où <horodatage> est l'heure système actuelle en millisecondes. DumpHeap génère un nouveau fichier de heap dump chaque fois que ce service est appelé. DumpHeap ne s'exécutera pas s'il y a moins de 5 % d'espace disque disponible dans SupportRepository.
Le mécanisme utilisé pour vider le segment de mémoire d'une plateforme en cours d'exécution repose sur certaines mécanismes de la JVM qui peuvent ne pas exister ou être pris en charge par chaque JVM. S'il n'est pas possible d'effectuer un heap dump par la JVM, un message d'erreur s'affiche.
DumpHeapAndAllThreads
Effectue les services DumpHeap et DumpAllThreads en un seul appel de service. Le résultat est un fichier de heap dump avec un horodatage unique et des informations de trace de pile supplémentaires dans tous les fichiers de trace de pile existants sur la plateforme qui a appelé le service. Si aucun fichier de trace de pile n'existe, il sera créé. Si la case à cocher Activer le vidage de la mémoire est définie sur "faux", ce service n'effectue pas de heap dumps ni de traces de pile.
EnableHeapDumps
Attribue la valeur "vrai" à la case à cocher Activer le vidage de la mémoire dans la table de configuration Paramètres de surveillance. La valeur par défaut est false.
Lorsque cette option est activée, DumpHeap et DumpHeapAndAllThreads peuvent être appelés plusieurs fois.
GetRepositoryFreePercent
Renvoie un NUMBER, qui indique le pourcentage d'espace disque utilisable dans SupportRepository. Ce service est utilisé par d'autres services pour déterminer si les heap dumps et les traces de pile doivent continuer à être collectés ou si l'espace disque restant est insuffisant.
GetSupportFileLinks
Renvoie une table d'informations contenant des informations sur tous les heap dumps et traces de pile, y compris les liens pour télécharger les fichiers générés à partir du référentiel. Ce service fonctionne exactement comme GetFileListingWithLinks, dans lequel le masque de nom fourni récupère chaque fichier de heap dump et de trace de pile.
GetWatchdogInterval
Récupère la valeur de configuration Intervalle de surveillance, qui est un type de base INTEGER de 1 seconde ou plus.
SetWatchdogInterval
Modifie la valeur de configuration Intervalle de surveillance dans la table de configuration Paramètres de surveillance. Cette valeur de configuration modifie l'intervalle de trace de pile pris lorsque DiagnosticWatchdog est en cours d'exécution. La valeur d'intervalle peut être un type de base INTEGER de 1 seconde ou plus.
StartDiagnosticWatchdog
Lance un processus d'arrière-plan sur chaque plateforme du cluster. Le processus génère continuellement des traces de pile pour chaque plateforme à un intervalle donné. Le fichier est généré dans SupportRepository et est nommé watchdog-stacktrace_<id-plateforme>, où <id-plateforme> désigne l'ID affecté à cette plateforme dans le fichier platform-settings.json associé. Le DiagnosticWatchdog s'exécute sur chaque plateforme ou aucune des plateformes.
Vous pouvez définir l'intervalle de trace de pile en secondes dans le champ Intervalle de surveillance ou en utilisant le service SetWatchdogInterval.
Le service StartDiagnosticWatchdog génère également un fichier runstacktrace dans SupportRepository. DiagnosticWatchdog collecte les traces de pile tant que ce fichier existe. Si ce fichier est renommé ou supprimé, DiagnosticWatchdog reste inactif. Si le fichier runstacktrace est réintroduit lorsque DiagnosticWatchdog est activé, les traces de pile reprendront à leur intervalle défini. Le fichier runstacktrace est supprimé lorsque DiagnosticWatchdog est désactivé. En outre, DiagnosticWatchdog ne collecte pas les heap dumps ou les traces de pile s'il reste moins de 5 % d'espace disque disponible dans SupportRepository.
Si une plateforme ou un cluster ne démarre pas et que le Sous-système de support est inaccessible, vous pouvez forcer l'activation de DiagnosticWatchdog lorsque la plateforme démarre ou lorsque la première plateforme à accéder au cluster démarre. Pour ce faire, créez le répertoire SupportRepository dans le répertoire ThingworxStorage/repositories s'il n'existe pas déjà. Ensuite, créez un nouveau fichier nommé runstacktrace. Vous n'avez pas besoin d'ajouter une extension ni non plus de contenu. Démarrez la plateforme. La plateforme doit détecter le fichier, puis automatiquement attribuer la valeur "vrai" à la case à cocher Activer la surveillance et exécuter DiagnosticWatchdog.
* 
Dans ThingWorx 9.0.10, 9.1.5, et 9.2.1 et versions antérieures, vous pouvez activer DiagnosticWatchdog en attribuant la valeur "vrai" à la case à cocher Activer la surveillance de la table de configuration Paramètres de surveillance.
StopDiagnosticWatchdog
Attribue la valeur "faux" à la case à cocher Activer la surveillance dans la table de configuration Paramètres de surveillance. Si ce paramètre est défini sur "faux", DiagnosticWatchdog est arrêté, ce qui met fin à toute collecte de traces de pile automatisée. Il supprime également le fichier runwatchdog. Il ne supprime pas les fichiers de heap dump ou de trace de pile existants.
CreateRunStackTraceFile
Crée le fichier runstacktrace dans le référentiel de fichiers du sous-système de support.
* 
Ce service est disponible dans ThingWorx 9.0.11, 9.1.6, et 9.2.2 et versions ultérieures.
RemoveRunStackTraceFile
Supprime le fichier runstacktrace dans le référentiel de fichiers du sous-système de support.
* 
Ce service est disponible dans ThingWorx 9.0.11, 9.1.6, et 9.2.2 et versions ultérieures.
Configuration
Paramètres de surveillance
Type de base
Par défaut
Remarques
Activer la surveillance
BOOLEAN
true
Par défaut, l'option est activée.
* 
Dans ThingWorx 9.0.10, 9.1.5, et 9.2.1 et versions antérieures, ce paramètre est défini sur "false" par défaut.
Intervalle de surveillance
INTEGER
30
La valeur de l'intervalle peut être définie sur une ou plusieurs secondes.
Activer le vidage de la mémoire
BOOLEAN
false
Par défaut, l'option est désactivée.
Est-ce que cela a été utile ?