Aller au contenu principal

Guide de Dépannage OmniHSS

← Retour au Guide des Opérations


Table des Matières


Aperçu du Dépannage

Approche Générale de Dépannage

Informations à Collecter

Avant de dépanner un problème, collectez :

  1. Informations sur l'Abonné (si spécifique à l'abonné)

    • IMSI
    • MSISDN (numéro de téléphone)
    • Dernier état connu
    • Messages d'erreur du dispositif
  2. Informations de Temps

    • Quand le problème a-t-il commencé ?
    • Est-il intermittent ou constant ?
    • Heure de la dernière opération réussie
  3. Portée de l'Impact

    • Abonné unique ou plusieurs ?
    • Réseau spécifique ou tous les réseaux ?
    • Service spécifique (données/voix) ou les deux ?
  4. État du Système

    • Vérifiez le Panneau de Contrôle pour l'état du système
    • Examinez l'état des pairs Diameter
    • Vérifiez la connectivité de la base de données

Échecs d'Authentification

Symptômes

  • L'abonné ne peut pas se connecter au réseau
  • Erreurs "Authentification rejetée"
  • Tentatives d'authentification répétées

Causes et Solutions Courantes

Cause 1 : Ensemble de Clés Incorrect

Symptômes :

  • Échec d'authentification constant pour un abonné spécifique
  • Fonctionne pour d'autres abonnés avec le même profil

Étapes de Diagnostic :

  1. Interroger l'abonné pour vérifier key_set_id :

    curl -k https://hss.example.com:8443/api/subscriber/imsi/[IMSI]
  2. Vérifier que l'ensemble de clés existe et a les bonnes valeurs :

    curl -k https://hss.example.com:8443/api/key_set/[KEY_SET_ID]
  3. Comparer les valeurs Ki et OPC avec la documentation de la carte SIM

Solution :

  • Mettre à jour l'abonné avec le bon ensemble de clés
  • Si les clés sont correctes, la carte SIM peut être défectueuse

Cause 2 : SQN Désynchronisé

Symptômes :

  • L'authentification échoue après avoir fonctionné auparavant
  • Erreur : "Échec de synchronisation SQN"
  • Fonctionne de manière intermittente

Étapes de Diagnostic :

  1. Vérifier l'état de l'abonné pour la valeur SQN dans la base de données
  2. Rechercher des erreurs liées à SQN dans les journaux
  3. Vérifier la valeur SQN de l'ensemble de clés de l'abonné

Solution :

  • SQN se resynchronisera automatiquement après que l'abonné envoie AUTS
  • Si cela persiste, réinitialiser SQN à 0 dans l'ensemble de clés (nécessite une nouvelle connexion de l'abonné)

Avertissement : La réinitialisation de SQN peut causer des problèmes de sécurité. Ne le faites que pendant la maintenance.

Cause 3 : Abonné Désactivé

Symptômes :

  • Authentification rejetée immédiatement
  • Aucun vecteur d'authentification généré

Étapes de Diagnostic :

  1. Vérifier l'état d'activation de l'abonné :

    curl -k https://hss.example.com:8443/api/subscriber/imsi/[IMSI]
  2. Vérifier que le champ enabled est true

Solution :

  • Activer l'abonné :
    curl -k -X PUT https://hss.example.com:8443/api/subscriber/[ID] \
    -H "Content-Type: application/json" \
    -d '{"subscriber": {"enabled": true}}'

Cause 4 : Profil EPC Manquant

Symptômes :

  • La recherche d'abonné réussit mais l'authentification échoue
  • Erreur : "Aucun profil EPC assigné"

Étapes de Diagnostic :

  1. Vérifier le champ epc_profile_id de l'abonné
  2. Vérifier que le profil EPC existe :
    curl -k https://hss.example.com:8443/api/epc/profile/[PROFILE_ID]

Solution :

Organigramme de Dépannage de l'Authentification


Problèmes de Connectivité Diameter

Symptômes

  • Les pairs Diameter apparaissent comme déconnectés dans le Panneau de Contrôle
  • Erreurs "Aucun itinéraire vers l'hôte"
  • Services échouent pour tous les abonnés

Causes et Solutions Courantes

Cause 1 : Connectivité Réseau

Symptômes :

  • Le pair ne se connecte jamais
  • Erreurs de délai d'attente de connexion
  • Ping échoue vers le pair

Étapes de Diagnostic :

  1. Vérifier la connectivité réseau de OmniHSS vers le pair :

    ping [PEER_IP]
  2. Vérifier si le port Diameter est accessible :

    telnet [PEER_IP] 3868
  3. Vérifier que les règles de pare-feu permettent le trafic Diameter (port 3868)

Solution :

  • Corriger le routage réseau
  • Mettre à jour les règles de pare-feu
  • Vérifier que le pair fonctionne et écoute

Cause 2 : Configuration Diameter Incorrecte

Symptômes :

  • Les tentatives de connexion échouent
  • L'échange CER/CEA échoue
  • Le pair rejette la connexion

Étapes de Diagnostic :

  1. Examiner la configuration Diameter dans runtime.exs :

    • Vérifier que origin_host du pair correspond à la valeur attendue
    • Vérifier la configuration origin_realm
    • Vérifier que l'adresse IP du pair est correcte
  2. Vérifier les journaux pour des erreurs CER/CEA

  3. Vérifier que la configuration du pair attend origin_host de OmniHSS

Solution :

  • Mettre à jour runtime.exs avec la configuration Diameter correcte
  • Redémarrer OmniHSS après modification de la configuration
  • Coordonner avec l'administrateur du pair pour vérifier les paramètres

Cause 3 : Problèmes de Certificat (TLS Diameter)

Symptômes :

  • La connexion échoue lors de la poignée de main TLS
  • Erreurs de validation de certificat
  • Erreurs "Certificat expiré" ou "Certificat invalide"

Étapes de Diagnostic :

  1. Vérifier que les fichiers de certificat existent dans priv/cert/

  2. Vérifier l'expiration du certificat :

    openssl x509 -in priv/cert/diameter.crt -noout -dates
  3. Vérifier que la chaîne de certificats est complète

  4. Vérifier le certificat du pair si TLS mutuel

Solution :

  • Renouveler les certificats expirés
  • Installer la chaîne de certificats correcte
  • Mettre à jour les fichiers de certificat et redémarrer OmniHSS

Cause 4 : Incompatibilité de Support d'Application du Pair

Symptômes :

  • Le pair se connecte mais ne prend pas en charge les applications requises
  • L'échange de capacités réussit mais les opérations échouent
  • Erreurs "Application non supportée"

Étapes de Diagnostic :

  1. Vérifier la page Diameter du Panneau de Contrôle pour les applications du pair
  2. Vérifier que le pair prend en charge l'application requise (S6a, Cx, Sh, etc.)
  3. Examiner l'échange CER/CEA dans les journaux

Solution :

  • Vérifier que la configuration du pair inclut les applications Diameter requises
  • Vérifier que le type de pair correspond à la fonctionnalité attendue :
    • MME doit prendre en charge S6a (16777251)
    • S-CSCF doit prendre en charge Cx (16777216)
    • P-GW doit prendre en charge Gx (16777238)

Organigramme de Dépannage Diameter


Problèmes de Base de Données

Symptômes

  • L'API renvoie des erreurs 500
  • Le Panneau de Contrôle ne se charge pas
  • Erreurs "Échec de connexion à la base de données"
  • Performance de requête lente

Causes et Solutions Courantes

Cause 1 : Serveur de Base de Données Hors Service

Symptômes :

  • Tous les appels API échouent
  • Le Panneau de Contrôle affiche une erreur
  • Erreurs "Connexion refusée"

Étapes de Diagnostic :

  1. Tester la connectivité de la base de données :

    # Si vous utilisez PostgreSQL
    psql -h [DB_HOST] -U [DB_USER] -d [DB_NAME]

    # Si vous utilisez MySQL
    mysql -h [DB_HOST] -u [DB_USER] -p [DB_NAME]
  2. Vérifier l'état du service de base de données sur le serveur de base de données

  3. Vérifier la connectivité réseau vers le serveur de base de données

Solution :

  • Démarrer le service de base de données
  • Corriger les problèmes du serveur de base de données
  • Vérifier le routage réseau vers le serveur de base de données

Cause 2 : Identifiants de Base de Données Incorrects

Symptômes :

  • Erreurs "Authentification échouée"
  • OmniHSS ne peut pas se connecter au démarrage

Étapes de Diagnostic :

  1. Examiner la configuration de la base de données dans runtime.exs
  2. Tester les identifiants manuellement avec le client de base de données
  3. Vérifier les permissions de l'utilisateur de la base de données

Solution :

  • Mettre à jour la configuration de la base de données dans runtime.exs
  • Accorder les permissions correctes à l'utilisateur de la base de données
  • Redémarrer OmniHSS après modification de la configuration

Cause 3 : Pool de Connexion Épuisé

Symptômes :

  • Erreurs 500 intermittentes
  • Erreurs "Aucune connexion disponible"
  • Les périodes de forte charge déclenchent des échecs

Étapes de Diagnostic :

  1. Vérifier le nombre de connexions actuelles dans la base de données
  2. Examiner la taille du pool de base de données dans runtime.exs
  3. Surveiller l'utilisation des connexions pendant les périodes de pointe

Solution :

  • Augmenter la taille du pool dans la configuration runtime.exs
  • Enquêter sur les fuites de connexion si le pool s'épuise de manière répétée
  • Envisager l'évolutivité de la base de données si la charge est constamment élevée

Cause 4 : Requêtes Lentes

Symptômes :

  • Réponses API très lentes
  • Délais d'attente sur les recherches d'abonnés
  • Haute utilisation du CPU de la base de données

Étapes de Diagnostic :

  1. Interroger la base de données pour le journal des requêtes lentes
  2. Identifier les requêtes lentes spécifiques
  3. Vérifier les index manquants
  4. Vérifier le nombre d'abonnés et les tailles des tables

Solution :

  • Optimiser les requêtes lentes
  • Ajouter des index manquants
  • Envisager l'optimisation des performances de la base de données
  • Planifier l'évolutivité de la base de données si nécessaire

Organigramme de Dépannage de la Base de Données


Échecs d'Enregistrement EPC

Symptômes

  • L'abonné ne peut pas se connecter au réseau LTE
  • MME rejette la connexion
  • Aucune session PDN établie

Causes et Solutions Courantes

Cause 1 : Roaming Refusé

Symptômes :

  • L'abonné fonctionne sur le réseau domestique mais échoue en roaming
  • Erreurs "Roaming non autorisé"
  • Fonctionne pour certains réseaux mais pas pour d'autres

Étapes de Diagnostic :

  1. Vérifier le champ roaming_profile_id de l'abonné
  2. Interroger le profil de roaming et les règles
  3. Vérifier le MCC/MNC du réseau visité
  4. Vérifier si une règle de roaming existe pour ce réseau

Solution :

Cause 2 : Configuration APN Manquante

Symptômes :

  • La connexion réussit mais la session PDN échoue
  • Erreurs "APN inconnu" du MME
  • L'abonné ne peut pas obtenir de connexion de données

Étapes de Diagnostic :

  1. Vérifier que le profil EPC a des profils APN liés
  2. Vérifier que l'identifiant APN correspond à ce que demande le dispositif
  3. Interroger la configuration du profil APN

Solution :

  • Lier les profils APN au profil EPC de l'abonné
  • S'assurer que le nom de l'APN correspond à la configuration du dispositif
  • Vérifier que le profil QoS de l'APN existe

Cause 3 : MME Non Connecté

Symptômes :

  • Tous les abonnés échouent à se connecter
  • Aucune communication avec le MME
  • Pair Diameter hors service

Étapes de Diagnostic :

  1. Vérifier la page Diameter du Panneau de Contrôle
  2. Vérifier que l'état du pair MME est "Connecté"
  3. Vérifier que le MME prend en charge l'application S6a

Solution :

Cause 4 : Corruption de l'État de l'Abonné

Symptômes :

  • L'abonné apparaît comme attaché mais ne peut pas se reconnecter
  • L'état ne correspond pas à la réalité
  • La déconnexion et la reconnexion échouent

Étapes de Diagnostic :

  1. Interroger l'état de l'abonné depuis la base de données
  2. Vérifier les affectations MME obsolètes
  3. Vérifier l'horodatage de la dernière mise à jour

Solution :

  • Effacer l'état de l'abonné (procédure de déconnexion)
  • Réinitialiser le MME de service dans l'état de l'abonné
  • Peut nécessiter un cycle d'alimentation de l'abonné

Organigramme de Dépannage de l'Enregistrement EPC


Échecs d'Enregistrement IMS

Symptômes

  • L'abonné ne peut pas s'enregistrer pour VoLTE
  • "Échec de l'enregistrement IMS" sur le dispositif
  • Les données fonctionnent mais la voix ne fonctionne pas

Causes et Solutions Courantes

Cause 1 : IMS Désactivé pour l'Abonné

Symptômes :

  • L'abonné a des données mais pas d'IMS
  • Enregistrement rejeté immédiatement

Étapes de Diagnostic :

  1. Interroger l'abonné et vérifier le champ ims_enabled
  2. Vérifier que l'abonné a un ims_profile_id assigné

Solution :

Cause 2 : S-CSCF Non Connecté

Symptômes :

  • Tous les enregistrements IMS échouent
  • Aucun trafic Diameter lié à l'IMS

Étapes de Diagnostic :

  1. Vérifier la page Diameter du Panneau de Contrôle
  2. Vérifier que le pair S-CSCF est connecté
  3. Vérifier que le S-CSCF prend en charge l'application Cx

Solution :

Cause 3 : Modèle IFC Manquant ou Invalide

Symptômes :

  • L'enregistrement échoue lors de la Réponse d'Autorisation d'Utilisateur
  • Erreurs liées à l'IFC dans les journaux

Étapes de Diagnostic :

  1. Interroger le profil IMS de l'abonné
  2. Vérifier que le modèle IFC est présent
  3. Vérifier la syntaxe XML de l'IFC

Solution :

Cause 4 : Roaming Refusé pour l'IMS

Symptômes :

  • L'IMS fonctionne sur le réseau domestique
  • Échoue en roaming
  • Le roaming de données fonctionne mais pas l'IMS

Étapes de Diagnostic :

  1. Vérifier l'action IMS du profil de roaming
  2. Vérifier que les règles de roaming ont la bonne ims_action

Solution :

  • Mettre à jour les règles de roaming pour autoriser l'IMS
  • Ou mettre à jour l'action IMS par défaut du profil de roaming

Organigramme de Dépannage de l'Enregistrement IMS


Échecs d'Appels VoLTE

Symptômes

  • L'enregistrement IMS réussit mais les appels échouent
  • Audio unidirectionnel
  • L'appel se coupe immédiatement
  • Erreur "Appel échoué" sur le dispositif

Causes et Solutions Courantes

Cause 1 : P-CSCF Non Connecté

Symptômes :

  • L'enregistrement fonctionne mais les appels échouent
  • L'autorisation des médias échoue

Étapes de Diagnostic :

  1. Vérifier la page Diameter du Panneau de Contrôle
  2. Vérifier que le pair P-CSCF est connecté
  3. Vérifier que le P-CSCF prend en charge l'application Rx (fonction PCRF de OmniHSS)

Solution :

  • Corriger la connectivité Diameter vers le P-CSCF
  • Vérifier que la configuration du P-CSCF pointe vers OmniHSS pour Rx

Cause 2 : Autorisation de Médias Manquante

Symptômes :

  • La configuration de l'appel commence mais échoue
  • Échange AAR/AAA échoue
  • Erreurs sur l'interface Rx

Étapes de Diagnostic :

  1. Vérifier les journaux pour les messages Diameter Rx
  2. Vérifier que AAR (AA-Request) a été reçu
  3. Vérifier la r��ponse AAA (AA-Answer)

Solution :

  • Vérifier que le P-CSCF envoie AAR pour l'autorisation des médias
  • Vérifier la configuration de l'application Rx de OmniHSS
  • Vérifier que l'abonné a un enregistrement IMS actif

Cause 3 : Problèmes de QoS/Support de Porteuse

Symptômes :

  • L'appel se connecte mais pas d'audio
  • Audio unidirectionnel
  • Problèmes de qualité

Étapes de Diagnostic :

  1. Vérifier le profil QoS de l'APN pour l'APN de voix
  2. Vérifier que le QCI est correctement défini (généralement QCI 1 pour la voix)
  3. Vérifier que le P-GW est connecté pour Gx (fonction PCRF)

Solution :

Organigramme de Dépannage des Appels VoLTE


Problèmes de Roaming

Symptômes

  • L'abonné fonctionne à domicile mais pas en roaming
  • Certains réseaux de roaming fonctionnent, d'autres non
  • Le roaming de données fonctionne mais pas la voix (ou vice versa)

Causes et Solutions Courantes

Cause 1 : Aucun Profil de Roaming Assigné

Symptômes :

  • Le roaming échoue pour l'abonné
  • D'autres abonnés roament avec succès

Étapes de Diagnostic :

  1. Interroger le champ roaming_profile_id de l'abonné
  2. Vérifier si le champ est nul

Solution :

Cause 2 : Roaming Refusé par la Politique

Symptômes :

  • Le roaming échoue de manière cohérente sur un réseau spécifique
  • L'erreur indique un rejet de la politique

Étapes de Diagnostic :

  1. Identifier le MCC/MNC du réseau visité depuis le dispositif de l'abonné ou le MME
  2. Interroger le profil de roaming de l'abonné
  3. Vérifier les règles de roaming pour le MCC/MNC correspondant
  4. Vérifier l'action par défaut du profil

Solution :

  • Ajouter une règle de roaming pour autoriser le réseau visité :
    curl -k -X POST https://hss.example.com:8443/api/roaming/rule \
    -H "Content-Type: application/json" \
    -d '{
    "roaming_rule": {
    "name": "Autoriser le Réseau Visité",
    "mcc": "310",
    "mnc": "410",
    "data_action": "allow",
    "ims_action": "allow"
    }
    }'

Cause 3 : Données Autorisées mais IMS Refusé

Symptômes :

  • Le roaming de données fonctionne
  • Le roaming vocal/IMS échoue
  • Disponibilité de service divisée

Étapes de Diagnostic :

  1. Interroger les règles de roaming pour le réseau visité
  2. Vérifier les valeurs data_action par rapport à ims_action
  3. Vérifier les actions par défaut du profil de roaming

Solution :

  • Mettre à jour la règle de roaming pour autoriser l'IMS :
    • Définir ims_action: "allow"
  • Ou mettre à jour ims_action_if_no_rules_match du profil à "allow"

Voir la Documentation sur le Roaming pour une configuration détaillée.


Problèmes EIR

Symptômes

  • Appareils bloqués de manière inattendue
  • Appareils volés non bloqués
  • Vérification EIR échouée

Causes et Solutions Courantes

Cause 1 : Regex IMEI Incorrect

Symptômes :

  • Mauvais appareils bloqués/autorisés
  • La règle correspond incorrectement

Étapes de Diagnostic :

  1. Interroger les règles EIR
  2. Identifier quelle règle correspond
  3. Tester le modèle regex contre l'IMEI réel
  4. Vérifier la priorité/l'ordre des règles

Solution :

  • Mettre à jour la règle EIR avec le regex correct
  • Tester le regex de manière approfondie avant de l'appliquer
  • Considérer l'ordre des règles (première correspondance gagnante)

Cause 2 : MME Ne Pas Envoyer de Requêtes S13

Symptômes :

  • La vérification EIR ne se produit jamais
  • Tous les appareils sont autorisés indépendamment des règles

Étapes de Diagnostic :

  1. Vérifier si le MME est configuré pour utiliser l'interface S13
  2. Vérifier que le pair Diameter du MME est connecté
  3. Vérifier le support de l'application S13
  4. Examiner la configuration du MME

Solution :

  • Configurer le MME pour effectuer des vérifications EIR via S13
  • Vérifier que le pair Diameter prend en charge l'application S13 (16777252)
  • Contacter l'administrateur du MME si nécessaire

Cause 3 : Pas de Règle par Défaut

Symptômes :

  • Les appareils ne correspondant à aucune règle ont un comportement inattendu

Étapes de Diagnostic :

  1. Interroger toutes les règles EIR
  2. Vérifier si une règle de rattrapage existe
  3. Vérifier l'ordre des règles

Solution :

  • Ajouter une règle par défaut avec regex .* pour correspondre à tous les IMEIs
  • Définir l'action appropriée (liste blanche ou liste noire)
  • S'assurer que les règles spécifiques sont vérifiées avant la règle de rattrapage

Problèmes de Performance

Symptômes

  • Réponses API lentes
  • Délais d'attente de requêtes Diameter
  • Haute utilisation du CPU ou de la mémoire
  • Panneau de Contrôle lent à charger

Causes et Solutions Courantes

Cause 1 : Charge Élevée sur la Base de Données

Symptômes :

  • Toutes les opérations lentes
  • Haute utilisation du CPU de la base de données
  • Délais d'attente de requêtes

Étapes de Diagnostic :

  1. Vérifier l'utilisation des ressources du serveur de base de données
  2. Identifier les requêtes lentes
  3. Vérifier les index manquants
  4. Surveiller les modèles de requêtes

Solution :

  • Optimiser les requêtes lentes
  • Ajouter des index de base de données
  • Augmenter les ressources de la base de données
  • Envisager l'évolutivité de la base de données
  • Voir les Problèmes de Base de Données

Cause 2 : Nombre Élevé d'Abonnés

Symptômes :

  • Performance dégradée au fil du temps
  • La lenteur est corrélée à la croissance des abonnés
  • Les opérations de liste sont particulièrement lentes

Étapes de Diagnostic :

  1. Interroger le nombre total d'abonnés
  2. Vérifier les tailles des tables
  3. Examiner les plans d'exécution des requêtes
  4. Surveiller les tendances d'utilisation des ressources

Solution :

  • Planifier une mise à niveau de capacité
  • Optimiser les requêtes pour de grands ensembles de données
  • Envisager la pagination pour de grands résultats
  • Mettre en œuvre un cache si nécessaire

Cause 3 : Problèmes de Pair Diameter

Symptômes :

  • Les opérations Diameter sont lentes
  • Délais d'attente sur un pair spécifique
  • Certains pairs rapides, d'autres lents

Étapes de Diagnostic :

  1. Vérifier la page Diameter du Panneau de Contrôle
  2. Identifier le pair lent
  3. Tester la latence réseau vers le pair
  4. Vérifier l'utilisation des ressources du pair

Solution :

  • Enquêter sur les problèmes de performance du pair
  • Vérifier le chemin réseau pour la congestion
  • Envisager d'ajouter des pairs redondants
  • Augmenter le délai d'attente Diameter si nécessaire

Cause 4 : Problèmes de Mémoire

Symptômes :

  • Utilisation de la mémoire élevée par OmniHSS
  • Erreurs de mémoire insuffisante
  • La performance se dégrade au fil du temps

Étapes de Diagnostic :

  1. Vérifier l'utilisation de la mémoire de OmniHSS sur la page Application
  2. Surveiller la tendance de la mémoire
  3. Vérifier les fuites de mémoire
  4. Examiner les paramètres de la VM Erlang

Solution :

  • Redémarrer OmniHSS pour effacer la condition temporaire
  • Enquêter sur les fuites de mémoire si l'utilisation augmente continuellement
  • Ajuster les paramètres de mémoire de la VM Erlang dans runtime.exs
  • Planifier une mise à niveau matérielle si l'utilisation est constamment élevée

Problèmes d'État des Abonnés

Symptômes

  • L'abonné apparaît comme attaché mais ne l'est pas
  • Informations d'état obsolètes
  • Informations de localisation incorrectes
  • Impossible de détacher l'abonné

Causes et Solutions Courantes

Cause 1 : Crash/Réinitialisation du MME

Symptômes :

  • L'abonné montre un MME de service qui ne sert plus
  • L'abonné ne peut pas se connecter après le redémarrage du MME
  • L'état est obsolète

Étapes de Diagnostic :

  1. Vérifier l'état de l'abonné pour le MME de service
  2. Vérifier si le MME a redémarré
  3. Vérifier l'heure de la dernière connexion du MME

Solution :

  • Attendre que l'abonné se reconnecte (l'état sera mis à jour)
  • Ou effacer manuellement l'état de l'abonné
  • Le MME doit envoyer Cancel-Location lors du redémarrage

Cause 2 : Détachement Réseau Non Reçu

Symptômes :

  • L'abonné éteint mais apparaît comme attaché
  • Les sessions PDN restent dans la base de données
  • La localisation n'est pas effacée

Étapes de Diagnostic :

  1. Vérifier l'horodatage last_seen de l'abonné
  2. Vérifier si l'ancien état (heures ou jours) est obsolète
  3. Vérifier si le dispositif de l'abonné est accessible

Solution :

  • L'état sera effacé lorsque l'abonné se reconnectera
  • Ou attendre le délai d'expiration de l'état (si mis en œuvre)
  • Un nettoyage manuel peut être nécessaire pour un état très obsolète

Cause 3 : Corruption de la Base de Données

Symptômes :

  • État incohérent à travers les tables
  • Violations de clés étrangères
  • L'état n'a pas de sens

Étapes de Diagnostic :

  1. Interroger l'état de l'abonné directement depuis la base de données
  2. Vérifier les enregistrements orphelins
  3. Vérifier l'intégrité référentielle

Solution :

  • Identifier et corriger les données incohérentes
  • Peut nécessiter un nettoyage manuel de la base de données
  • Contacter le support si la corruption est généralisée

Problèmes d'API

Symptômes

  • L'API renvoie des erreurs
  • Réponses API lentes
  • Impossible de créer/mettre à jour des entités
  • Erreurs 500

Causes et Solutions Courantes

Cause 1 : Données de Requête Invalides

Symptômes :

  • Erreurs 400 ou 422
  • Messages d'erreur de validation
  • Champ rejeté

Étapes de Diagnostic :

  1. Examiner la réponse d'erreur pour des erreurs de champ spécifiques
  2. Vérifier le format de la requête API
  3. Vérifier que les champs requis sont présents
  4. Vérifier les types de données

Solution :

  • Corriger les données de requête pour correspondre à la référence API
  • S'assurer que tous les champs requis sont inclus
  • Vérifier que les références de clés étrangères existent (ID de profil, etc.)

Cause 2 : Contrainte de Clé Étrangère

Symptômes :

  • Impossible de créer un abonné
  • Erreur : "key_set_id n'existe pas"
  • Entité référencée non trouvée

Étapes de Diagnostic :

  1. Identifier quelle clé étrangère échoue
  2. Vérifier que l'entité référencée existe :
    • key_set_id → ensembles de clés
    • epc_profile_id → profils EPC
    • ims_profile_id → profils IMS

Solution :

Cause 3 : Connectivité de Base de Données

Symptômes :

  • Erreurs 500
  • Tous les appels API échouent
  • Erreurs de connexion à la base de données

Solution :


Outils et Commandes de Diagnostic

Vérifications Rapides du Panneau de Contrôle

  1. Aperçu du Système

    • URL : https://[hostname]:7443/overview
    • Vérifier : Comptes d'abonnés, sessions actives, état du système
  2. État Diameter

    • URL : https://[hostname]:7443/diameter
    • Vérifier : Tous les pairs critiques connectés
  3. Santé de l'Application

    • URL : https://[hostname]:7443/application
    • Vérifier : Utilisation de la mémoire, nombre de processus, temps de fonctionnement

Commandes de Diagnostic API

Vérifier la Santé du Système :

curl -k https://hss.example.com:8443/api/status

Interroger un Abonné :

# Par IMSI
curl -k https://hss.example.com:8443/api/subscriber/imsi/001001123456789

# Par MSISDN
curl -k https://hss.example.com:8443/api/subscriber/msisdn/14155551234

# Par ID
curl -k https://hss.example.com:8443/api/subscriber/1

Lister Tous les Abonnés :

curl -k https://hss.example.com:8443/api/subscriber

Vérifier la Configuration du Profil :

# Profil EPC
curl -k https://hss.example.com:8443/api/epc/profile/1

# Profil IMS
curl -k https://hss.example.com:8443/api/ims/profile/1

# Profil de Roaming
curl -k https://hss.example.com:8443/api/roaming/profile/1

Commandes de Diagnostic Réseau

Tester la Connectivité du Port Diameter :

telnet [PEER_IP] 3868

Vérifier le Certificat TLS :

openssl s_client -connect [hostname]:8443 -showcerts

Tester la Connectivité de la Base de Données :

# PostgreSQL
psql -h [DB_HOST] -U [DB_USER] -d [DB_NAME] -c "SELECT COUNT(*) FROM subscriber;"

# MySQL
mysql -h [DB_HOST] -u [DB_USER] -p -e "SELECT COUNT(*) FROM subscriber;" [DB_NAME]

Analyse des Journaux

Rechercher des Journaux pour un IMSI Spécifique :

grep "001001123456789" /var/log/omnihss/omnihss.log

Trouver des Échecs d'Authentification :

grep "authentication.*fail" /var/log/omnihss/omnihss.log

Vérifier les Événements des Pairs Diameter :

grep "Diameter peer" /var/log/omnihss/omnihss.log

Trouver des Erreurs de Base de Données :

grep -i "database.*error" /var/log/omnihss/omnihss.log

Directives d'Escalade

Quand Escalader

Escalader au support technique/ingénierie lorsque :

  1. Pannes à l'échelle du système qui ne peuvent pas être résolues avec des procédures documentées
  2. Corruption de données ou état incohérent de la base de données
  3. Bugs logiciels suspectés ou comportement inattendu
  4. Problèmes de performance qui ne peuvent pas être résolus par un réglage
  5. Incidents de sécurité ou accès non autorisé
  6. Questions sur un comportement non documenté

Informations à Fournir

Lors de l'escalade, inclure :

  1. Symptômes détaillés - Ce qui échoue, quand, pour qui
  2. Étapes entreprises - Ce que vous avez déjà fait en matière de dépannage
  3. Journaux - Extraits de journaux pertinents montrant le problème
  4. Configuration - Portions pertinentes de runtime.exs (masquer les données sensibles)
  5. Environnement - Version de OmniHSS, version de la base de données, version du système d'exploitation
  6. Impact - Combien d'abonnés sont affectés, impact commercial
  7. Exemples d'abonnés - IMSIs spécifiques montrant le problème

Critique vs Non-Critique

Problèmes Critiques (Escalader Immédiatement) :

  • Système complètement hors service
  • Tous les abonnés incapables de se connecter
  • Corruption de base de données
  • Violation de sécurité

Problèmes Non-Critiques (Documenter et Escalader Pendant les Heures de Bureau) :

  • Problèmes d'abonnés uniques qui peuvent être contournés
  • Dégradation de performance gérable
  • Demandes d'amélioration
  • Questions de documentation

Référence des Messages d'Erreur Courants

Erreurs d'Authentification

Message d'ErreurCauseSolution
"Échec de génération des vecteurs d'authentification"Ensemble de clés manquant ou invalideVérifier la configuration de l'ensemble de clés
"Échec de synchronisation SQN"SQN désynchroniséAttendre la resynchronisation
"Abonné non trouvé"IMSI invalideVérifier l'IMSI, provisionner l'abonné
"Abonné désactivé"enabled=falseActiver l'abonné

Erreurs Diameter

Message d'ErreurCauseSolution
"Délai d'attente de connexion au pair Diameter"Problème réseauVérifier la connectivité réseau
"Échange CER/CEA échoué"Incompatibilité de configurationVérifier la configuration Diameter
"Application non supportée"Le pair ne prend pas en charge l'application requiseVérifier les applications du pair
"Échec de la poignée de main TLS"Problème de certificatVérifier les certificats

Erreurs de Base de Données

Message d'ErreurCauseSolution
"Connexion refusée"Base de données hors serviceDémarrer la base de données
"Authentification échouée"Mauvais identifiantsCorriger les identifiants
"Aucune connexion disponible"Pool épuiséAugmenter la taille du pool
"Délai d'attente de requête"Requête lenteOptimiser les requêtes

Erreurs d'API

Message d'ErreurCauseSolution
"key_set_id n'existe pas"Clé étrangère invalideCréer d'abord l'ensemble de clés
"L'IMSI a déjà été pris"IMSI en doubleUtiliser un IMSI différent ou supprimer l'existant
"Erreur de validation"Entrée invalideVérifier le format et les exigences des champs

← Retour au Guide des Opérations | Suivant : Référence API →