Aller au contenu principal

Architecture et diagnostic

Localiser une défaillance par le composant qui possède l'opération. Une réponse réussie du modèle, un calcul réussi et un artefact sauvegardé vérifié sont des observations différentes; recueillir les preuves pour l'étape qui a échoué.

Architecture et propriété​

flowchart LR
UI[Desktop or browser interface] --> MAIN[Shared Node backend]
MAIN --> STORE[Settings, database and managed files]
MAIN --> AGENT[Agent framework and model provider]
MAIN --> NB[Notebook runtime]
MAIN --> SERVICES[Connectors and Compute Hosts]
AGENT --> EVENTS[Messages and tool events]
NB --> EVENTS
SERVICES --> EVENTS
EVENTS --> UI
MAIN --> ART[Artifact versions and provenance]
ART --> UI
ComposantePossèdePreuves à vérifier
Rendu et prévisualisationAffichage de l'état, des contrôles, du contenu du fichier renduPage, projet/session sélectionné, nom de fichier, erreur de prévisualisation
Moteur NodeOpérations persistantes, services d'application et limites d'accèsErreur de fonctionnement et diagnostics associés
Cadre/fournisseur d'agentsConnexion du modèle, protocole d'exécution des tâches et flux de réponseCadre/fournisseur/modèle, test de connexion, outil défaillant ou tour
NotebookInterprète, exécution de code, sorties et variables en directID/version d'exécution, cellule défaillante, stdout/stderr et enregistrement d'exécution
ConnecteurDemande de service externeConnector/nom de l'outil, entrées désinfectées, état/erreur du service
Hôte de calcul à distanceAccès SSH et emplois directs/programmésHôte/mode, résultat de la sonde, ID de travail et journaux distants
Dépôt ArtifactVersions gérées, bilans de contrôle et preuves saisiesID de fichier/version, état du contenu, onglets Code/Environnement/Examen

Le chemin du bureau franchit la limite de précharge API. L'accès au navigateur utilise le service local protégé de l'application; Voir Service sans tête et accès au navigateur. Le navigateur n'est pas une deuxième base de données de recherche indépendante.

Distinguer le contenu des éléments de preuve​

État ou messageInterprétationProchaine vérification
Contenu de l'article disponibleLes octets sélectionnés sont lisibles et passent la vérification d'intégrité applicableVérifier si le résultat scientifique est correct
Contenu non disponible : manquantLe contenu attendu ne peut être trouvéPréserver l'identité de la version et vérifier la disponibilité du stockage
Contenu non disponible : inadéquation du total de contrôleLe contenu ne correspond pas à sa valeur d'intégrité enregistréeConserver le diagnostic; ne remplacez pas silencieusement les octets et appelez-le la même version
Capture partielle de l'environnementLe dossier environnemental est incompletLisez les avertissements de capture et conservez les détails de l'interprète ou du paquet indépendamment
Registre d'exécution bombéSeuls des éléments de preuve d ' exécution immuable ont été retenus.Inspecter les avertissements d'écart et le Notebook en direct, le cas échéant
Aucun avis pour cette versionAucun résultat de l'examinateur n'est jointNe pas déclarer cette version telle qu'examinée

Ces états peuvent coexister. Inspecter séparément l'intégrité du contenu, les preuves d'exécution et le statut d'examen.

Recherche d'erreur​

Surface de défaillanceRecherche canonique
Réponses du modèle/API, Connector ou du mandataire HTTPCodes d'état HTTP
L'application ne peut pas ouvrir sa base de donnéesCodes de démarrage de la base de données
Notebook importations, chemins de fichiers et permissionsMessages d'erreur
SSH transport, chemins éloignés et statut d'emploiErreurs à distance
Soumission de l'émission et aide communautaireSignaler un bug ou demander à la communauté

Gardez la source de l'erreur avec son identifiant. Un OS errno, une exception Python, un code d'erreur distant et le statut HTTP d'un fournisseur ne sont pas interchangeables. Copier le message d'accompagnement et la cause imbriquée lorsque disponible; un identificateur peut couvrir plusieurs chemins de défaillance.

Préserver un dossier de diagnostic utile​

Enregistrez la version de l'application, le système d'exploitation, le projet/session touché, l'exploitation, le résultat attendu, l'erreur exacte et ce qui s'est passé immédiatement avant. Inclure le total des contrôles d'exécution et d'entrée lorsqu'un calcul est en cause; inclure la version d'artefact ou l'identifiant de travail à distance lorsqu'il y en a un.

Utilisez une vue Details, Détails du diagnostic ou log disponible pour conserver la cause de l'erreur, plutôt que seulement son titre court. Reproduire avec un apport public ou minimal lorsque c'est possible. Inspectez tout ce que vous partagez pour les jetons de compte, les en-têtes, les chemins privés et le contenu de recherche.

Le logger principal-processus écrit des lignes structurées JSON. Ses fichiers par défaut tournent à 5 MiB et conservent trois fichiers au total; un comportement spécial fatal-écriture peut dépasser l'ordinaire lié par un seul enregistrement. Les journaux ont donc une fenêtre de conservation et ne constituent pas une piste de vérification permanente. Un champ de diagnostic peut également être tronqué. Préserver un dossier pertinent peu après l'échec et distinguer l'absence de la preuve qu'un événement n'a jamais eu lieu.

Source: Enregistreur et conservation, rougeur du diagnostic, détail de défaillance Notebook limité et état du contenu des artefacts.

Tout d'abord, il faut distinguer une opération échouée d'un rafraîchissement ou d'un nettoyage échoué après un changement commis et il faut distinguer l'achèvement des tâches de base de l'exécution des résultats. Inspecter l'état sauvé avant de réessayer une mutation. Le Tableau de recouvrement orienté utilisateur couvre la restauration de la file d'attente bloquée, a conservé les références PDF, les modifications de la collection stale et les messages d'installation Windows. Tâches en arrière-plan explique l'état de l'exécution; Les erreurs de surveillance à distance demeurent distinctes des résultats finals.

Archives diagnostiques des séances​

Export diagnostics… recueille les métadonnées de session, les enregistrements de base de données et les métadonnées disponibles dans une archive locale avec un registre de manifeste et d'exportation. Les sources manquantes n'arrêtent pas l'exportation totale; Les sources importantes ou endommagées peuvent produire des résumés. Les journaux d'applications actuels et historiques peuvent couvrir les activités en dehors de la session sélectionnée, donc examiner les sources sélectionnées et saisir les résultats.

Les sources de métadonnées ordinaires excluent les champs de contenu privé. Après une défaillance de paquet-exportation sensible-contenu, la boîte de dialogue peut également offrir des preuves de scanner expurgées et des fichiers d'origine marqués. Les fichiers originaux sont décochés par défaut; Les sélectionner explicitement inclut leurs octets originaux. Exporter ne fait aucune demande de téléchargement ou de modèle. Inspectez l'archive résultante avant de partager. Il ne remplace pas une sauvegarde de paquet de recherche ou une reproduction minimale. Voir la procédure d'exportation illustrée.

Le bureau et le moteur sont des processus séparés​

De v0.37.0, Electron possède le shell de bureau natif tandis qu'un moteur Node ordinaire possède des services partagés. Le bureau, l'interface utilisateur Web, CLI et SDK peuvent se connecter à ce même moteur. Identifiez le répertoire de configuration, la version et le port réel avec status --json lorsqu'un client ne peut pas se connecter. Une fenêtre de bureau visible à elle seule ne prouve pas que le moteur est sain. Suivez propriétaire du moteur avant de l'arrêter.