IBM Cloud Apoyo a la integración
Sepa cuándo y cómo recurrir al servicio de asistencia IBM Cloud en caso de problemas de rendimiento.
Recursos de autoservicio
Antes de abrir un ticket, compruebe lo siguiente:
- IBM Cloud Documentación sobre bases de datos
- MongoDB documentación
- IBM Cloud Página de estado
- Foros comunitarios y Stack Overflow
Cuándo ponerse en contacto con el servicio de asistencia IBM
Póngase en contacto con el servicio de asistencia si
- Los problemas de rendimiento persisten después de seguir esta guía.
- El retraso en la replicación continúa a pesar de la optimización.
- La latencia del disco sigue siendo alta sin picos de carga de trabajo.
- Sospechas de problemas a nivel de infraestructura.
- Comportamiento inesperado tras el escalado.
- Problemas de salud relacionados con el despliegue.
- Problemas de copia de seguridad o restauración.
Antes de ponerse en contacto con el servicio de asistencia
Recopile la información siguiente:
-
Detalles de despliegue
- ID de despliegue (CRN)
- Región y zonas de disponibilidad
- Plan y recursos actuales
- versión de mongodb
-
Detalles del problema
- Ventana horaria de la incidencia (con zona horaria)
- Síntomas observados
- Impacto en las aplicaciones
- Cambios recientes (código, configuración, escalado)
-
Datos de rendimiento
- Capturas de pantalla de monitorización de Sysdig
- Ejemplos de consulta que causan problemas
- Salida de comandos diagnóstico
- Activity Tracker eventos durante la ventana de emisión
-
MongoDB diagnóstico
# Collect diagnostic data mongo "your-connection-string" --eval " printjson(db.serverStatus()); printjson(db.currentOp()); printjson(rs.status()); " > mongodb-diagnostics.json
Apertura de una incidencia de soporte
Utilización de la consola IBM Cloud
- Vaya a Asistencia en el menú superior.
- Pulse Crear un caso.
- Seleccione Databases for MongoDB.
- Elija el nivel de gravedad.
- Proporcione una descripción detallada.
- Adjuntar archivos de diagnóstico.
Uso de la CLI de IBM Cloud
# Create support case
ibmcloud support case-create \
--subject "MongoDB Performance Issue" \
--description "Detailed description of issue" \
--severity 2 \
--offering databases-for-mongodb
Niveles de gravedad
| Gravedad | Descripción | Tiempo de respuesta |
|---|---|---|
| 1 (crítico) | Producción parada, pérdida de datos | 1 hora |
| 2 (Alto) | Degradación significativa del rendimiento | 2 horas |
| 3 (Medio) | Impacto moderado, solución disponible | 4 horas |
| 4 (Bajo) | Preguntas generales, solicitudes de funciones | 8 horas |
Procedimientos de escalada
Si el problema no se resuelve en el plazo previsto:
- Actualice el caso de asistencia con urgencia.
- Póngase en contacto con su equipo de cuentas en IBM.
- En caso de problemas críticos, solicite la intervención de la dirección.
Apoyar las mejores prácticas
- Facilite toda la información por adelantado.
- Responder rápidamente a las solicitudes de asistencia.
- Pruebe primero las soluciones propuestas en la fase de no producción.
- Documente la resolución para futuras consultas.
Referencia rápida: comandos diagnóstico
Comandos esenciales de MongoDB para la resolución de problemas de rendimiento.
| Mandato | Finalidad | Métricas clave | Valores normales |
|---|---|---|---|
db.serverStatus() |
Estadísticas generales del servidor | CPU, memoria, conexiones | Varía según la carga de trabajo |
db.serverStatus().connections |
Estadísticas de conexión | actual, disponible | < 80% del disponible |
db.serverStatus().opcounters |
Contadores de operaciones | insertar, consultar, actualizar, eliminar | Dependiente de la línea de base |
db.serverStatus().locks |
Estadísticas de bloqueo | Tiempo de bloqueo global | < 10% del tiempo total |
db.serverStatus().wiredTiger.cache |
Estadísticas de la caché | Proporción de accesos a la memoria caché |
|
db.currentOp() |
Operaciones en curso | Consultas activas, bloqueos | Pocas operaciones de larga duración |
db.currentOp({ waitingForLock: true }) |
Operaciones en espera de bloqueo | Contención de bloqueo | Debe estar vacío |
rs.status() |
Estado del conjunto de réplicas | Retraso de replicación, salud de los miembros | Retraso < 1 segundo |
rs.printSecondaryReplicationInfo() |
Detalles del retardo de replicación | Retraso por secundario | Retraso < 1 segundo |
db.collection.stats() |
Estadísticas de recopilación | Tamaño, tamaño del índice, recuento de documentos | Controlar el crecimiento |
db.collection.find().explain("executionStats") |
Plan de ejecución de la consulta | Tiempo de ejecución, documentos examinados | Utilizar índices |
db.system.profile.find() |
Registro de consultas lentas | Lentitud de las operaciones | Revisar periódicamente |
sh.status() |
Estado de la fragmentación (si procede) | Distribución de trozos | Distribución uniforme |
db.adminCommand({ top: 1 }) |
Estadísticas de uso de la colección | Colecciones calientes | Identificar objetivos de optimización |
db.printReplicationInfo() |
Información sobre Oplog | Tamaño oplog, intervalo de tiempo | Suficiente para la recuperación |
Flujo de trabajo de diagnóstico rápido
// 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 })