Compartir a través de


Administrar las latencias de bases de datos con el script Troubleshoot-DatabaseLatency.ps1 en el Shell

 

Se aplica a: Exchange Server 2010 SP2, Exchange Server 2010 SP3

Última modificación del tema: 2016-11-28

El script Troubleshoot-DatabaseLatency.ps1 se utiliza en Microsoft System Center Operations Manager 2007 para detectar y corregir las latencias elevadas en una base de datos. Puede crear una tarea programada ejecutando este script con el programador de tareas. Las latencias de base datos pueden producirse por varias causas, incluidos los problemas siguientes:

  • Latencias de disco causadas por un disco incorrecto   Las latencias de lectura o escritura en disco muy elevadas, si persisten durante períodos prolongados, pueden estar causadas por un disco incorrecto.

  • Latencias de controlador de dominio   Un controlador de domino puede exhibir latencias extensas al responder a consultas de búsqueda LDAP.

  • Carga de trabajo de usuario elevada   La realización de operaciones pesadas por parte de un usuario (o conjunto de usuarios) puede provocar latencias de base de datos.

El script Troubleshoot-DatabaseLatency.ps1 realiza las acciones siguientes:

  1. Comprueba si las latencias de base de datos están por encima del umbral de latencia (según lo indica el parámetro LatencyThreshold). El valor predeterminado es 70 milisegundos (ms).

  2. Comprueba si la tasa de transferencias por segundo del disco es inferior al contador de rendimiento DiskReadRateThreshold y si la tasa de segundos por transferencia de dicho disco es superior al contador de rendimiento DiskReadLatencyThreshold. Si este es el caso, el script determina que el disco debe reemplazarse porque se encuentra en condiciones de carga baja y sin embargo muestra latencias elevadas.

  3. Comprueba si un usuario está utilizando más de un subproceso en el plazo de los últimos 10 minutos, superando el valor especificado por el parámetroTimeInServerThreshold . Si este es el caso, el usuario probablemente esté contribuyendo a las latencias elevadas y, como resultado, el buzón de correo del usuario se pone en cuarentena. El buzón de correo del usuario permanece en cuarentena durante seis horas, durante las cuales el usuario no tiene acceso al correo electrónico.

Los valores de configuración predeterminados que se usan en el script Troubleshoot-DatabaseLatency.ps1 se definen en el script StoreTSConstants.ps1.

Nota

Un script debe ejecutarse desde la carpeta en que reside. De forma predeterminada, los scripts instalados con Exchange 2010 se instalan en C:\Archivos de programa\Microsoft\Exchange Server\V14\Scripts. La consola no carga los scripts automáticamente. Para ejecutar un script desde el archivo local, debe preceder todos los scripts con ".</STRONG>". Por ejemplo, para ejecutar el script SampleScript.ps1, escriba .\SampleScript.ps1. Para ejecutar una secuencia y especificar la ruta de instalación predeterminada, escriba "C:\Archivos de programa\Microsoft\Exchange Server\V14\Scripts\SampleScript.ps1". Para obtener más información, consulte Scripting con el Shell de administración de Exchange.

Use la secuencia de comandos Troubleshoot-DatabaseLatency.ps1

Deberá tener asignados permisos antes de poder llevar a cabo este procedimiento. Para ver qué permisos necesita, consulte el Entrada "Bases de datos de buzones" en el tema Permisos de buzón.

El siguiente conjunto y tabla de sintaxis de parámetros enumera los parámetros que puede usar para detectar y solucionar problemas de latencia de bases de datos.

Troubleshoot-DatabaseLatency.ps1 -MailboxDatabaseName <DatabaseID> [-LatencyThreshold <1-200>] [-TimeInServerThreshold <1-600000>] [-Quarantine <switch>] [-MonitoringContext <switch>]
Parámetro Necesario Descripción

MailboxDatabaseName

Necesario

El parámetro MailboxDatabase especifica la base de datos de buzón en la que se supervisa la latencia de base de datos.

Este parámetro acepta los valores siguientes:

  • GUID

  • Nombre distintivo (DN)

  • Nombre de la base de datos

LatencyThreshold

Opcional

El parámetro LatencyThreshold especifica la cantidad de tiempo, en ms, que la base de datos puede estar inactiva antes de considerarse latente.

El valor predeterminado es 70 ms.

MonitoringContext

Opcional

El parámetro MonitoringContext especifica si los resultados del comando están escritos en el registro de eventos de la aplicación. Si no se especifica este valor, los registros de sucesos se escriben en la siguiente ubicación del Visor de eventos:

Visor de eventos > Registros de aplicaciones y servicios > Microsoft > Microsoft-Exchange-Solucionadores de problemas/Operativo.

No es necesario especificar ningún valor con este parámetro.

Quarantine

Opcional

El parámetro Quarantine especifica que los usuarios de uso intensivo que contribuyen a las latencias elevadas se pondrán en cuarentena. Si no se especifica este parámetro, no se pondrá en cuarentena a los usuarios.

No es necesario especificar ningún valor con este parámetro.

TimeInServerThreshold

Opcional

El parámetro TimeInServerThreshold especifica cuánto tiempo (en segundos) que una actividad del usuario para la cual el almacén de Exchange usa un subproceso puede consumirse por minuto para un buzón específico, antes de que sea considerado peligroso para el mantenimiento de la base de datos. La cantidad de segundos se mide agregando el tiempo que todos los subprocesos que se ejecutan en nombre del buzón de correo (durante el período que informa el cmdlet Get-StoreUsageStatistics) emplean dentro del almacén de Exchange. La cantidad de segundos de trabajo por minuto se calcula dividiendo esta cantidad agregada por el período que informa el cmdlet Get-StoreUsageStatistics (de forma predeterminada, 10 minutos).

Por ejemplo, si define este parámetro en 80 segundos y un único usuario utiliza más de un subproceso durante más de 80 segundos en un período de 10 minutos, aparecerá un error de evento. Si especifica el parámetro Quarantine, aparecerá el error de evento y, además, se pondrá en cuarentena el buzón del usuario por seis horas.

El valor predeterminado es de 200 segundos.

Ejemplo

En este ejemplo se muestra cómo ejecutar el script Troubleshoot-DatabaseLatency.ps1 con los siguientes valores de configuración:

  • El parámetro LatencyThreshold está definido en 100 ms. Si la base de datos está latente durante más de 100 ms, aparece un error.

  • El parámetro TimeInServerThreshold está establecido en 80 segundos. Si un único usuario utiliza más de un subproceso durante más de 80 segundos en un período de 10 minutos, el usuario se pondrá en cuarentena.

.\Troubleshoot-DatabaseLatency.ps1 -MailboxDatabaseName MBD01 -LatencyThreshold 100 -TimeInServerThreshold 80 -Quarantine

Nota

En este ejemplo se muestra cómo ejecutar el comando manualmente una vez. Para producir los datos que necesita el solucionador de problemas para supervisar de forma eficaz sus bases de datos, debe ejecutar este comando en intervalos regulares. Para configurar esta tarea, recomendamos el uso del Programador de tareas en el sistema operativo de Microsoft Windows. Para obtener más información, consulte Introducción al Programador de tareas.

Ver el resultado del solucionador de problemas de latencia de base de datos

En el Visor de eventos, los resultados del script Troubleshoot-DatabaseLatency.ps1 están disponibles en la ubicación siguiente: Visor de eventos > Registros de aplicaciones y servicios > Microsoft > Microsoft-Exchange-Solucionadores de problemas/Operativo.

Por ejemplo, lo siguiente representa el resultado del evento ID 5111. Este resultado se devolvería si la secuencia de comandos se ejecutara correctamente y sin errores.

El solucionador de problemas de latencia de base de datos ha detectado que la latencia actual de la base de datos MBD01 es de 1 ms y que se encuentra debajo del umbral de 100 ms.

La siguiente tabla muestra el id. del evento, la descripción del evento y, de ser necesario, la acción que se debe realizar.

Nota

Las descripciones de esta tabla son ejemplos de la información que se puede incluir en estos eventos.

Id. de evento Descripción Acción

5110

El solucionador de problemas de latencia de base de datos se inició en la base de datos MBD01.

Solo informativo. No se requiere ninguna acción.

5111

El solucionador de problemas de latencia de base de datos ha detectado que la latencia actual de la base de datos MBD01 es de 30 ms y que se encuentra debajo del umbral de 70 ms.

Solo informativo. No se requiere ninguna acción.

5411

El solucionador de problemas de latencia de base de datos puso en cuarentena al usuario f3bb8007-b6d1-45f5-b748-211d66fa43f6 de la base de datos MBD01, debido a la presencia de actividad inusual en el buzón. Si el problema persiste, se requiere intervención manual.

Evento de advertencia: Continuar con la supervisión.

5412

El solucionador de problemas de latencia de base de datos identificó un problema con el usuario f3bb8007-b6d1-45f5-b748-211d66fa43f6 de la base de datos MBD01, debido a la presencia de actividad inusual en el buzón. El usuario no se puso en cuarentena porque no estaba especificado el parámetro Quarantine. Si el problema persiste, se requiere intervención manual.

Evento de advertencia: Continuar con la supervisión.

5710

El solucionador de problemas de latencia de base de datos detectó que las latencias de disco para la base de datos MBD01 son anormales. Debe reemplazar el disco.

Evento de error: Debe reemplazar el disco. Póngase en contacto con el fabricante del hardware para obtener instrucciones para el reemplazo.

5712

El solucionador de problemas de latencia de base de datos detectó promedios elevados de latencias de RPC para la base de datos MBD01 pero no pudo determinar la causa. Se requiere intervención manual.

Evento de error: No se determinó la causa de la latencia. Debe crear un archivo de volcado y analizarlo para determinar la causa del problema.

Para Windows Vista, Windows 7 o Windows Server 2008, consulte Cómo crear un archivo de volcado de proceso de modo de usuario.

Para Windows Server 2003 o una versión anterior, consulte Cómo usar la herramienta Userdump.exe para crear un archivo de volcado.

 © 2010 Microsoft Corporation. Reservados todos los derechos.