Cómo registrar consultas de ejecución prolongada (ODBC)

Hay un ejemplo completo que muestra la creación de un archivo de registro de consultas de ejecución prolongada. El código de ejemplo completo está en el archivo LogLongRunningQuery.cpp, que puede descargar de la página de descargas de SQL Server en MSDN. Este ejemplo se desarrolló utilizando Microsoft Visual C++ 2005 para ODBC versión 3.0 o posterior.

Nota de seguridadNota de seguridad

Siempre que sea posible, utilice la autenticación de Windows. Si la autenticación de Windows no está disponible, solicite a los usuarios que escriban sus credenciales en tiempo de ejecución. No guarde las credenciales en un archivo. Si tiene que conservar las credenciales, debería cifrarlas con la API de criptografía de Win32.

Para registrar las consultas de ejecución prolongada mediante el Administrador de ODBC

  1. En Panel de control, haga doble clic en Herramientas administrativas y, a continuación, en Orígenes de datos (ODBC). (Como alternativa, puede ejecutar odbcad32.exe desde el símbolo del sistema).

  2. Haga clic en la ficha DSN de usuario, DSN de sistema o DSN de archivo.

  3. Haga clic en el origen de datos para el que desea registrar las consultas de ejecución prolongada.

  4. Haga clic en Configurar.

  5. En el Asistente para configuración DSN de Microsoft SQL Server, navegue a la página con Guardar en el archivo de registro las consultas largas en ejecución.

  6. Seleccione Guardar en el archivo de registro las consultas largas en ejecución. En el cuadro, coloque el nombre del archivo donde se deben registrar las consultas de ejecución prolongada. De manera opcional, haga clic en Examinar para buscar en el sistema de archivos el registro de consultas.

  7. Establezca un intervalo de tiempo de espera de la consulta, en milisegundos, en el cuadro Tiempo máximo de consulta (milisegundos).

Para registrar los datos de las consultas de ejecución prolongada mediante programación

  1. Llame a SQLSetConnectAttr con SQL_COPT_SS_PERF_QUERY_LOG y la ruta de acceso completa y el nombre de archivo del archivo de registro de consultas largas en ejecución. Por ejemplo:

    C:\\Odbcqry.log
    
  2. Llame a SQLSetConnectAttr con SQL_COPT_SS_PERF_QUERY_INTERVAL y establézcalo en el intervalo de tiempo de espera, en milisegundos.

  3. Llame a SQLSetConnectAttr con SQL_COPT_SS_PERF_QUERY y SQL_PERF_START para iniciar el registro de las consultas de ejecución prolongada.

  4. Llame a SQLSetConnectAttr con SQL_COPT_SS_PERF_QUERY y SQL_PERF_STOP para detener el registro de las consultas de ejecución prolongada.