# Vérification des statuts des services

Cette section décrira la procédure générale à suivre et les éléments à vérifier lors du dépannage des problèmes de la plateforme Navixy. Elle couvre le dépannage de base des services Java, du serveur Web et du serveur de base de données. Savoir comment vérifier et redémarrer les services vous aidera à comprendre la cause du problème et à le résoudre de manière plus précise.

Il est recommandé de consulter d’abord les informations sur [Composants du système](https://www.navixy.com/docs/on-premise/fr/on-premise/how-to-guide/troubleshooting/system-components) page afin de connaître les emplacements de configuration et des fichiers journaux des services.

## Vérification générale de l’état

Sur les instances Navixy On-premise à jour fonctionnant sous Linux, un script est implémenté pour effectuer une vérification rapide de l’état de tous les principaux composants de la plateforme : base de données, site Web et services backend. Pour l’utiliser, connectez-vous en tant que root et tapez la commande suivante dans l’interface CLI de votre serveur :

```
check-navixy
```

La sortie affichera le type d’installation (basée sur systemd ou exécutée dans Docker) ainsi que l’état de chacun des services. La sortie doit être la suivante :

![](https://866637922-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-f77ee4f9b417215ab5a1cebd5e21a71174914494%2Fimage-20250221-074604.png?alt=media)

Si vous voyez que l’un des services est arrêté, cela justifie de prendre des mesures d’urgence, car dans ce cas la plateforme n’est pas entièrement fonctionnelle.

![](https://866637922-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-21e2293e9c5698c8b43814946ddfb53d45e86246%2Fimage-20250221-080138.png?alt=media)

Selon le service concerné par le problème, vous devrez vous référer à la section appropriée du manuel ou contacter le support technique pour rétablir son fonctionnement.

{% hint style="info" %}
Le `check-navixy` script est disponible uniquement pour les instances basées sur Linux. Pour Windows, voir les instructions ci-dessous.
{% endhint %}

## Services Java

Vous pouvez vérifier individuellement les services Java (backend Navixy) pour obtenir plus de détails sur leur état actuel et les redémarrer si nécessaire.

#### Linux

Sous Linux, Navixy utilise **systemd**, qui est inclus dans les distributions Linux les plus courantes, et constitue une alternative aux scripts init.d traditionnels. Auparavant, runit était utilisé à la même fin, mais il est désormais obsolète.

Pour vérifier l’état des services Java de Navixy, utilisez les commandes suivantes :

```
systemctl status api-server
systemctl status sms-server
systemctl status tcp-server
```

**Lorsque tout fonctionne normalement**, la sortie de chaque commande doit afficher le **active (running)** statut, ainsi que le temps de fonctionnement actuel, la quantité de mémoire utilisée et d’autres informations techniques. Par exemple, la sortie normale d’api-server ressemble à ceci :

```
● api-server.service - Navixy API Server
     Loaded: loaded (/home/java/api-server/api-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2023-08-10 08:44:31 UTC; 1 weeks 5 days ago
   Main PID: 3666212 (java)
      Tasks: 277 (limit: 37888)
     Memory: 2.2G
        CPU: 13h 8min 11.334s
```

Elle affichera également les dernières entrées du journal du service, ce qui peut être extrêmement utile à des fins de dépannage.

**Lorsque l’un des services est arrêté**, la commande retournera **inactive (dead)** statut. Exemple :

```
○ api-server.service - Navixy API Server
     Loaded: loaded (/etc/systemd/system/api-server.service; enabled; vendor pr>
     Active: inactive (dead) since Tue 2023-08-22 13:59:59 UTC; 3s ago
    Process: 1002 ExecStart=/bin/bash /home/java/api-server/bin/service-run.sh >
   Main PID: 1002 (code=exited, status=143)
        CPU: 15.664s
```

Dans ce cas, vous devez examiner les journaux du service non fonctionnel. Par défaut, tous les journaux se trouvent dans le répertoire `/home/java/<service_name>/log/` .

Si un service ne parvient pas à démarrer, il y aura généralement des erreurs associées dans les journaux. Essayez de vérifier les informations avant `Server stopped` entrée ou toute entrée récente commençant par `WARN` ou `ERROR`. Vous pouvez également essayer de redémarrer le service et vérifier quelles nouvelles entrées apparaissent en utilisant la commande `tail -f log.txt`.

{% hint style="info" %}
Pour des informations sur le redémarrage des services, consultez la page correspondante : [Redémarrage de l’instance - Linux](https://www.navixy.com/docs/on-premise/fr/on-premise/maintenance/restarting-instance#restarting-on-linux).
{% endhint %}

#### Windows

Sous Windows, les services Java Navixy sont installés en tant que services Windows NT classiques. Pour accéder aux services, ouvrez le **services.msc** module complémentaire, et vous trouverez trois services Navixy dans la liste :

![Vérification des statuts des services - Windows](https://866637922-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-1691294aeb602185076255c5d9a97fe09a1cbbbe%2Fimage-20230823-082858.png?alt=media)

Les services doivent avoir un *Running* statut. Si ce n’est pas le cas pour l’un des services, essayez de le démarrer et voyez s’il fonctionne correctement. Si le service plante, la raison doit être recherchée dans les journaux. L’emplacement standard des journaux est `C:\java\<service_name>\log\`. Si un service ne parvient pas à démarrer, il y aura généralement des erreurs associées dans les journaux. Essayez de vérifier les informations avant `Server stopped` entrée ou toute entrée récente commençant par `WARN` ou `ERROR`. Il est recommandé d’utiliser des éditeurs de texte avancés tels que Notepad++ ou Sublime Text pour consulter les journaux. Un Bloc-notes standard échoue généralement à ouvrir de gros fichiers texte.

{% hint style="info" %}
Pour des informations sur le redémarrage des services, consultez la page correspondante : [Redémarrage de l’instance - Windows.](https://www.navixy.com/docs/on-premise/fr/on-premise/maintenance/restarting-instance#restarting-on-windows)
{% endhint %}

## Serveur Web

Si les services Java sont en cours d’exécution, mais que vous ne pouvez toujours pas accéder à l’interface, vous devez vérifier si le serveur Web Nginx fonctionne.

#### Linux

Sur une instance Linux, vérifiez l’état de Nginx avec la commande suivante :

```
/etc/init.d/nginx status
```

La sortie doit afficher le **active (running)** statut, ainsi que le temps de fonctionnement actuel, la quantité de mémoire utilisée, d’autres informations techniques et les dernières entrées du journal Nginx.

Si le service a un **inactive (dead)** statut, essayez de le lancer avec cette commande :

```
/etc/init.d/nginx start
```

Assurez-vous que Nginx a démarré et fonctionne normalement ; sinon, vérifiez d’éventuelles erreurs dans son journal.

#### Windows

Sous Windows, Nginx n’est pas un service mais simplement une petite application s’exécutant en arrière-plan. Pour vérifier s’il est lancé, ouvrez le Gestionnaire des tâches (onglet Détails) et recherchez les processus **nginx.exe**  - il y en a généralement deux ou plus.

![Vérification de l’état de Nginx - Windows](https://866637922-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-5d0477d299086259e4d8be9329bb0a113198eaac%2Fimage-20230823-090304.png?alt=media)

Si vous ne trouvez pas **nginx.exe** dans la liste, essayez d’exécuter son fichier exécutable depuis `C:\nginx` manuellement ou avec les commandes suivantes dans CMD :

```
cd /nginx
start nginx
```

{% hint style="info" %}
Si Nginx est opérationnel mais que vous ne pouvez toujours pas accéder à la plateforme, référez-vous aux guides de dépannage respectifs de [panneau d’administration](https://app.gitbook.com/o/YVLWhgAwCZPoU5vlRsCs/s/KdgeXg71LpaDrwexQYwp/) ou [interface utilisateur](https://app.gitbook.com/o/YVLWhgAwCZPoU5vlRsCs/s/446mKak1zDrGv70ahuYZ/) .
{% endhint %}

## Base de données

Si vous suspectez des problèmes de connexion à la base de données (ou avez trouvé des informations pertinentes dans les journaux des services), vous devez vérifier son état. Navixy utilise le SGBD MySQL, donc assurez-vous d’abord que le serveur MySQL est bien démarré et en cours d’exécution. Sous Linux, utilisez la commande suivante :

```
/etc/init.d/mysql status
```

Sous Windows, vérifiez que MySQL a un *Running* statut dans `services.msc` snap-in.

Si le SGBD fonctionne mais que vous avez toujours des erreurs de connexion à la base de données dans les journaux, essayez de vous connecter à MySQL avec le même compte que les services Java. Par exemple, ouvrez le fichier `/home/java/api-server/conf/db.properties` , récupérez le nom d’utilisateur et le mot de passe de la base de données à partir de celui-ci, et utilisez-les pour vous connecter à MySQL depuis le shell :

```
mysql -u<username> -p<password> google
```

Assurez-vous que les autres services Java peuvent également se connecter.

Si votre base de données est hébergée sur un serveur séparé, assurez-vous que la connexion à celui-ci est disponible sur le port MySQL par défaut 3306 (ou un port personnalisé si l'installation a été effectuée de cette manière - vérifiez `db.properties` fichier de l'un des services Java).

{% hint style="info" %}
Si vous voyez des erreurs dans les journaux qui ne sont pas liées à l’accessibilité de la base de données, mais à l’exécution de certaines requêtes SQL, veuillez en informer le support technique. De tels problèmes sont généralement trop complexes pour être résolus de manière autonome.
{% endhint %}

## Contacter le support technique

Les étapes décrites ci‑dessus sont très basiques pour effectuer la vérification de la plateforme. Si vous ne parvenez pas à résoudre le problème, veuillez nous contacter à <support@navixy.com>, et décrivez le problème en détail en fournissant les journaux et toutes les autres informations utiles dont vous disposez. Nous ferons de notre mieux pour vous aider.
