¿Puedes explicarme cómo puedo analizar los registros de Simba?
Can you explain how I can analyze Simba logs?
A typical Simba driver log line to would like like below
Feb 21 20:17:16.525 TRACE 1542911745 Simba::ODBC::Statement::SQLFetch: +++++ enter +++++

One can use regular expression based match to parse this log line to split the fields to derive meaningful insights.

For example, the fields can be split into
- timestamp
- loglevel
- pid
- message

The last message field is a long string which encapsulates a lot of important information but can be classified as below by splitting this further based on the :: delimiter.
- Namespace
- Class
- Method
- Details


There are 2 types of Simba logs
Connection Logs - Useful for getting connection attributes like agent, driver versions, operation status calls, connection failures, SSL errors etc
Driver Logs - This helps to analyze actual details around data fetch performance.

Some examples to derive meaningful insights from connection logs
Extract unique query identifier using keyword search within the message for "THandleIdentifier" or a guid pattern

Some examples to derive meaningful insights from driver logs
How long did an actual data fetch block take can be inspected using the time difference between the blocks.
SQLFetch*Enter
SQLFetch*Exit

Within each fetch block, you can look for below log lines to understand if it was a row-by-row fetch if you see a log of SQLGetData blocks.
SQLGetData*Enter
SQLGetData*Exit

There is other miscellaneous information logged by Simba driver for preceding requests such as closing a query or a session where an actual identifier needs to be sent along with the request, think of it as a payload for a REST API post request where you also need to send a payload along with the request.

Overall, deriving meaningful information from the Simba driver logs require a bit of analysis
before actually realizing the benefits of such analysis, most of the details are cryptic.

Brainstorming other ideas with Simba product team would be fantastic.
Una línea de registro típica del controlador Simba sería como la siguiente
21 Feb 20:17:16.525 TRACE 1542911745 Simba::ODBC::Statement::SQLFetch: +++++ introduce +++++

Se puede utilizar una coincidencia basada en una expresión regular para analizar esta línea de registro y dividir los campos para obtener información significativa.

Por ejemplo, los campos pueden dividirse en
- marca de tiempo
- nivel de registro
- pid
- mensaje

El último campo de mensaje es una cadena larga que encierra mucha información importante, pero que se puede clasificar como se indica a continuación, dividiéndola a su vez mediante el delimitador ::.
- Espacio de nombres
- Clase
- Método
- Detalle


Hay 2 tipos de registros Simba
Registros de conexión - Útiles para obtener atributos de conexión como agente, versiones de controlador, llamadas de estado de operación, fallos de conexión, errores SSL, etc.
Registros de controladores: ayudan a analizar detalles reales sobre el rendimiento de la obtención de datos.

Algunos ejemplos para obtener información significativa de los registros de conexión
Extrae el identificador de consulta único utilizando la búsqueda de palabras clave dentro del mensaje para "THandleIdentifier" o un patrón guid

Algunos ejemplos para obtener información significativa de los registros de controladores
El tiempo que tardó un bloque de obtención de datos se puede inspeccionar utilizando la diferencia de tiempo entre los bloques.
SQLFetch*Entrar
SQLFetch*Salir

Dentro de cada bloque de obtención, puedes buscar las líneas de registro siguientes para saber si se trataba de una obtención fila a fila si ves un registro de bloques SQLGetData.
SQLGetData*Entrar
SQLGetData*Salir

Hay otra información miscelánea registrada por el controlador Simba para las solicitudes anteriores, como el cierre de una consulta o una sesión en la que es necesario enviar un identificador real junto con la solicitud, piensa en ello como una carga útil para una solicitud posterior de la API REST en la que también es necesario enviar una carga útil junto con la solicitud.

En general, obtener información significativa de los registros del controlador Simba requiere un poco de análisis
antes de obtener realmente los beneficios de dicho análisis, ya que la mayoría de los detalles son crípticos.

Sería fantástico intercambiar ideas con el equipo de producto de Simba.
brainstorming
es