IBM Cloud Soutenir l'intégration
Savoir quand et comment faire appel au service d'assistance IBM Cloud pour les problèmes de performance.
Ressources en libre-service
Avant d'ouvrir un ticket, vérifiez les points suivants :
- IBM Cloud Documentation sur les bases de données
- MongoDB la documentation
- IBM Cloud Page d'état
- Forums communautaires et Stack Overflow
Quand contacter le service d'assistance IBM
Contactez le service d'assistance dans les cas suivants :
- Les problèmes de performance persistent après avoir suivi ce guide.
- Le décalage de la réplication persiste malgré l'optimisation.
- La latence des disques reste élevée en cas de charge de travail élevée.
- Problèmes présumés au niveau de l'infrastructure.
- Comportement inattendu après la mise à l'échelle.
- Problèmes de santé liés au déploiement.
- Problèmes de sauvegarde ou de restauration.
Avant de contacter l'assistance
Rassemblez les informations suivantes :
-
Détails du déploiement
- ID de déploiement (CRN)
- Région et zones de disponibilité
- Plan et ressources actuels
- version de mongodb
-
Détails du problème
- Fenêtre temporelle du problème (avec fuseau horaire)
- Symptômes observés
- Impact sur les applications
- Changements récents (code, configuration, mise à l'échelle)
-
Données de performances
- Captures d'écran de surveillance de Sysdig
- Exemples de requêtes posant problème
- Sortie des commandes de diagnostic
- Activity Tracker événements pendant la fenêtre d'émission
-
MongoDB diagnostics
# Collect diagnostic data mongo "your-connection-string" --eval " printjson(db.serverStatus()); printjson(db.currentOp()); printjson(rs.status()); " > mongodb-diagnostics.json
Ouverture d'un ticket de demande de service
Utilisation de la console IBM Cloud
- Naviguez vers Support dans le menu supérieur.
- Cliquez sur Créer un cas.
- Sélectionner Databases for MongoDB.
- Choisissez le niveau de gravité.
- Fournir une description détaillée.
- Joindre les fichiers de diagnostic.
Utilisation de l'interface de ligne de commande IBM Cloud
# Create support case
ibmcloud support case-create \
--subject "MongoDB Performance Issue" \
--description "Detailed description of issue" \
--severity 2 \
--offering databases-for-mongodb
Niveaux de gravité
| Gravité | Description | Temps de réponse |
|---|---|---|
| 1 (Critique) | Arrêt de la production, perte de données | 1 heure |
| 2 (élevé) | Dégradation significative des performances | 2 heures |
| 3 (moyen) | Impact modéré, solution de contournement disponible | 4 heures |
| 4 (faible) | Questions générales, demandes de fonctionnalités | 8 heures |
Procédures d'escalade
Si le problème n'est pas résolu dans les délais prévus :
- Mettez à jour le dossier d'assistance de toute urgence.
- Contactez l'équipe de votre compte IBM.
- Pour les problèmes critiques, demander une escalade de la gestion.
Soutenir les bonnes pratiques
- Fournir des informations complètes dès le départ.
- Répondre rapidement aux demandes d'assistance.
- Testez d'abord les solutions proposées en dehors de la production.
- Documenter la résolution pour référence ultérieure.
Référence rapide : commandes de diagnostic
Commandes essentielles MongoDB pour le dépannage des performances.
| Commande | Objectif | Mesures clés | Valeurs normales |
|---|---|---|---|
db.serverStatus() |
Statistiques globales du serveur | CPU, mémoire, connexions | Varie en fonction de la charge de travail |
db.serverStatus().connections |
Statistiques de connexion | actuel, disponible | < 80 % des disponibilités |
db.serverStatus().opcounters |
Compteurs d'opérations | insérer, interroger, mettre à jour, supprimer | Dépendant de la ligne de base |
db.serverStatus().locks |
Statistiques de verrouillage | Temps de verrouillage global | < 10 % du temps total |
db.serverStatus().wiredTiger.cache |
Statistiques du cache | Taux de réussite en cache |
|
db.currentOp() |
Opérations en cours | Requêtes actives, verrous | Peu d'opérations de longue durée |
db.currentOp({ waitingForLock: true }) |
Opérations en attente de verrous | Conflit d'accès | Doit être vide |
rs.status() |
Statut de l'ensemble de répliques | Délai de réplication, santé des membres | Lag < 1 seconde |
rs.printSecondaryReplicationInfo() |
Détails du décalage de la réplication | Lag par secondaire | Lag < 1 seconde |
db.collection.stats() |
Statistiques de la collecte | Taille, taille de l'index, nombre de documents | Contrôler la croissance |
db.collection.find().explain("executionStats") |
Plan d'exécution de la requête | Temps d'exécution, documents examinés | Utiliser des index |
db.system.profile.find() |
Journal des requêtes lentes | Lenteur des opérations | Révision régulière |
sh.status() |
Statut du sharding (le cas échéant) | Répartition des morceaux | Une répartition homogène |
db.adminCommand({ top: 1 }) |
Statistiques d'utilisation de la collection | Collections chaudes | Identifier les cibles d'optimisation |
db.printReplicationInfo() |
Informations sur l'Oplog | Taille de l'Oplog, fourchette de temps | Suffisante pour la récupération |
Processus de diagnostic rapide
// 1. Check overall health
db.serverStatus().ok // Should return 1
// 2. Check connections
var conn = db.serverStatus().connections;
print("Connections: " + conn.current + "/" + conn.available);
// 3. Check replication (if replica set)
rs.status().ok // Should return 1
// 4. Check for slow operations
db.currentOp({ "secs_running": { $gt: 5 } })
// 5. Check cache efficiency
var cache = db.serverStatus().wiredTiger.cache;
var hitRatio = 1 - (cache["pages read into cache"] /
(cache["pages read into cache"] + cache["pages requested from the cache"]));
print("Cache hit ratio: " + (hitRatio * 100).toFixed(2) + "%");
// 6. Check for lock contention
db.currentOp({ waitingForLock: true })