# Monitorización

En este capítulo explicaremos cuáles son las funcionalidades de **Velneo vAdmin** que nos permiten monitorizar la actividad del mismo.

### Enganches

Un enganche es una conexión que un [usuario](../gestion-de-usuarios#usuarios) establece con [Velneo vServer](../velneo-vserver/que-es-velneo-vserver) a través de [Velneo vAdmin](que-es-velneo-vadmin), [Velneo vClient](../velneo-vclient/que-es-velneo-vclient), [Velneo vDataclient](../velneo-vdataclient/que-es-velneo-vdataclient), [Velneo vInstallBuilder](../velneo-vinstallbuilder/que-es-velneo-vinstall-builder) o [Velneo vDevelop](../velneo-vdevelop/introduccion).

Esta vista de Velneo vAdmin está dividida en dos partes. En la de la izquierda podremos controlar los enganches activos en [Velneo vServer](../velneo-vserver/que-es-velneo-vserver) y en la de la derecha las [transacciones](#transacciones) ejecutadas en el mismo.

La información que se muestra de cada enganche es la siguiente:

**Tipo**

Tipo de ejecutable de a través del cual se ha establecido la conexión Velneo vAdmin, Velneo vClient, Velneo vDataclient, Velneo vInstallBuilder o Velneo vDevelop.

**Testigo**

Código que Velneo vServer usa internamente para identificar ese enganche.

**Usuario**

Nombre del usuario que ha efectuado el enganche.

**IP**

IP de la máquina desde la que se ha establecido la conexión.

**Instancia**

Si se trata de una conexión realizada a través de Velneo vClient, Velneo vDataclient, se identificará la instancia de datos usada por el mismo. En caso de no estar utilizando instancia alguna, se mostrará el texto Pendiente. En los enganches correspondientes al resto de los productos Velneo esta columna estará en blanco.

**Inicio conexión**

Fecha y hora de establecimiento de la conexión.

**Última conexión**

Fecha y hora de la última petición realizada a Velneo vServer desde esa conexión.

Los enganches a [instancias ](gestion-de-aplicaciones/instancias)correspondientes a clientes de ejecución [Velneo vClient](../velneo-vclient/que-es-velneo-vclient), [Velneo vDataclient](../velneo-vdataclient/que-es-velneo-vdataclient), etc.) serán mostrados de forma arbolada. El nodo principal del árbol será la instancia principal y las subramas serán las instancias heredadas.

![](https://3641993963-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2F825115a0215d3d9216ba726ccf0bb8db95213b96.png?generation=1589374128769968\&alt=media)

Si se quiere expulsar un enganche, seleccionar el nodo correspondiente a la instancia principal de en la lista de enganches en curso y ejecutar la opción Desconectar del menú Enganches.

También es posible expulsar todos los enganches de una instancia concreta, para saber cómo puede hacerse, consultar el capítulo [ver enganches de una instancia](../gestion-de-aplicaciones/instancias#ver-enganches-de-una-instancia).

El servidor desconectará automáticamente aquellos componentes clientes de edición ([Velneo vDevelop](../velneo-vdevelop/introduccion), [Velneo vTranslator](../velneo-vtranslator/que-es-velneo-vtranslator) y [Velneo vInstallBuilder](../velneo-vinstallbuilder/que-es-velneo-vinstall-builder)) y de administración ([Velneo vAdmin](que-es-velneo-vadmin)) tras 12 horas sin uso.

En el caso de clientes de edición (Velneo vDevelop, Velneo vTranslator y [Velneo vInstallBuilder](../velneo-vinstallbuilder/que-es-velneo-vinstall-builder)), no se deshará la desprotección de los proyectos, con el fin de permitir enviar los cambios realizados en esa sesión de edición que se ha mantenido abierta e inactiva durante más de 12 horas. Ver el capítulo dedicado al [control de edición compartida](../../velneo-vdevelop/control-y-edicion-de-proyectos#control-de-edición-compartida) para ampliar información al respecto.

Si un enganche de un cliente de ejecución (Velneo vClient, por ejemplo), se ha perdido, en enganche quedará activo en el servidor durante 300 segundos, pero este tiempo es configurable para servidores licenciados (es decir, no es configurable para servidores sin licenciar). Haz clic [aquí](../velneo-vserver/instalacion-y-configuracion/parametros-configurables-de-velneo-vserver) para ampliar información al respecto.

## Transacciones

Una transacción es el conjunto de operaciones de escritura que se realizan contra una base de datos que únicamente tienen sentido como unidad.

En esta pestaña de [Velneo vAdmin](que-es-velneo-vadmin) podremos monitorizar las transacciones realizadas en los proyectos de datos instanciados en [Velneo vServer](../velneo-vserver/que-es-velneo-vserver).\
En esta vista podremos conocer la siguiente información de cada transacción realizada:

**Estado transacción**

Estado en el que la transacción se encuentra en el momento de la consulta. Los estados posibles son:

![](https://3641993963-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2F117614914a2beb75f329ff2c955bd7e32f121505.jpg?generation=1589374128979553\&alt=media) **En curso:** la transacción está siendo ejecutada.

![](https://3641993963-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2F8c04b12161e66cc721153706be583916d7b5a22b.jpg?generation=1589374129422759\&alt=media) **Finalizada OK:** la transacción ha finalizado correctamente.

![](https://3641993963-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2Fc7010ebba2eb7dc4fcd495a3354843207f4975b9.jpg?generation=1589374128930202\&alt=media) **Deshecha:** la transacción ha sido deshecha.

![](https://3641993963-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2F1d1437bd7454e556bdc2650e77d4174b34366a1b.jpg?generation=1589374129000412\&alt=media) **Colisión:** la transacción está fuera de control y ha entrado otra en [Velneo vServer](../velneo-vserver/que-es-velneo-vserver) con la que colisiona; el sistema rechaza la que está fuera de control y continúa la ejecución de la nueva.

![](https://3641993963-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2F503be79244d2e5c9675508ebd4a6d165ee286071.jpg?generation=1589374128545424\&alt=media) **Reintento:** se está reintentando ejecutar una transacción que ha sido deshecha.

**Código**

Numerador que Velneo vServer usa internamente para identificar esa transacción.

**Título**

Descripción de la transacción que está siendo ejecutada.

**Enganche**

Código que Velneo vServer usa internamente para identificar el enganche desde el que se lanza la transacción.

**Usuario**

Nombre del [usuario](../gestion-de-usuarios#usuarios) declarado en Velneo vServer que ha lanzado la transacción.

**Instancia**

Nombre de la [instancia de datos](../gestion-de-aplicaciones/instancias#instanciación-de-datos) en la que la transacción ha sido ejecutada.

**Inicio transacción**

Fecha y hora (horas, minutos y segundos) en la que la transacción ha comenzado.

**Última operación**

Fecha y hora (horas, minutos y segundos) en la que en la transacción se ha realizado la última operación de escritura en disco.

**Operación**

Una operación es un acceso de escritura en disco. En esta columna se informará sobre el número de accesos de escritura a disco realizados por la transacción en el momento de la consulta.

Si queremos ampliar la información sobre una transacción, haremos doble clic sobre la transacción deseada, y se nos mostrará una ventana donde podremos comprobar todas las operaciones que la misma ha implicado:

![](https://3641993963-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2F056a48b098ed055831603c471f20776323e247b1.jpg?generation=1589374129121621\&alt=media)

{% hint style="info" %}
En el caso de ejecutar una transacción que implique miles de operaciones, con el fin de evitar una sobrecarga del sistema, La información sobre las operaciones la transacción se cortará a las 64.000 líneas.
{% endhint %}

## Mensajes sistema <a href="#mensajessiste" id="mensajessiste"></a>

Esta opción de [Velneo vServer ](../velneo-vserver/que-es-velneo-vserver)nos permitirá ver la lista de mensaje del sistema, tales como datos de arranque del servidor, errores en fórmulas, errores de instanciación, etc. Al pulsar sobre la misma se presentará la lista de mensajes del sistema de [Velneo vAdmin](que-es-velneo-vadmin).

Cada vez que reiniciemos el servidor, éste enviará un mensaje informativo sobre la licencia y sobre la inicialización de las bases de datos.

En el caso de que no haya ninguna licencia asociada a ese servicio, también será indicado:

`Servidor vatp iniciado sin licencia`

Para facilitar su lectura, los mensajes se mostrarán en distintos colores según su tipología y con separadores entre ellos.

Este panel contiene las opciones siguientes:

**Nº días**

Permite especificar de cuántos días queremos ver mensajes.

La tecla F5 o la opción **refrescar** del menú **ver** fuerza el refresco del contenido del panel de mensajes. Si queremos que el refresco se haga de forma automática, podremos indicarlo haciendo clic sobre la flecha situada a la derecha del botón.

**Nivel mínimo**

Permite configurar qué tipos de mensaje queremos ver. Los tipos de mensaje posibles son: Información, Peligro y Error crítico.Los valores posibles son:

* **Información**: mostrará todos los mensajes.
* **Peligro**: mostrará los mensajes de peligro y de error crítico.
* **Error crítico**: mostrará solamente los errores críticos.

**Título**

Permite filtrar por el título del mensaje, es decir, mostrar solamente los mensajes que tengan un título concreto (Inicio, Error vatp, etc.).

**Fechas**

Permite filtrar la lista por una fecha determinada.

Algunos de los mensajes que se muestran en este panel, como por ejemplo, los de inicio del servidor, también estarán disponibles en el visor de sucesos del sistema operativo.

### Log de Velneo vServer en los mensajes de sistema

Activados mediante el parámetro de configuración del servidor con la clave de registro [VerboseLevel](../../velneo-vserver/instalacion-y-configuracion/parametros-configurables-de-velneo-vserver#verboselevel), están disponibles una serie de logs que grabarán la información en los mensajes de salida del servidor, pudiendo ser consultados a través de este panel de mensajes.

El formato de salida del log está preparado para la importación desde herramientas externas. Sigue el siguiente formato:

`Tipo de mensaje\tTítulo\tFecha y hora\tEtiqueta:\tValor\tEtiqueta:\tValor\t....`

El título nos permitirá filtrar los distintos tipos de log: transacción, enganche y regeneración, y el formato seguido nos permitirá la importación y procesado de los mensajes en herramientas externas o una aplicación de Velneo.

Están disponibles los siguientes logs:

#### **Log de enganches**

Histórico de las conexiones y desconexiones de usuarios de un Velneo vServer. Disponible con VerboseLevel 2.

**Título**: enganche.

**Etiquetas**: testigo, tipo, estado, usuario, IP, conexión, última, versión (sólo para Velneo vClient).

#### **Log de transacciones**

**Histórico de las transacciones realizadas**

Disponible con VerboseLevel 2.

**Título**: transacción

**Etiquetas**: transacción, estado, título, inicio, fin, operaciones, retorno, testigo, instancia, nombre, usuario, testigo, IP.

**Transacciones deshechas**

Disponible con VerboseLevel 0. Informa sobre:

* Transacciones y número de operaciones que se deshará.
* Tablas modificadas.
* Tablas que requieren regeneración de índices.
* Índices complejos que requieren regeneración.

**Título**: transacción, regeneración datos, regeneración índices.

**Etiquetas**: estado, inicio, fin, tabla,

#### **Log de regeneración**

Histórico de regeneración de tablas e índices de la bases de datos. Dispone de distintos niveles de detalle:

**Inicio de regeneración de tabla**: disponible con VerboseLevel 1.

**Inicio de regeneración de índices de fichero dat**: disponible con VerboseLevel 2.

**Inicio de regeneración de índices de fichero cnd**: disponible con VerboseLevel 2.

**Inicio de regeneración de índice**: disponible con VerboseLevel 3.

**Fin de regeneración de índice**: disponible con VerboseLevel 3.

Cuando la regeneración de índices se hace en paralelo ([bigkey](../velneo-vserver/funcionalidades/tecnologia-bigkey)) además, se informa del **momento en que se procede a guardar cada uno de los índices generados**. Disponible con VerboseLevel 3.

**Título**: regeneración de tabla, regeneración de índices.

**Etiquetas**: instancia, tabla, índice, tipo, estado.

Los mensajes del sistema se guardan en ficheros de texto plano en disco, en el [directorio de configuración](../../velneo-vserver/instalacion-y-configuracion/estructura-de-directorios#directorio-de-configuracion) de [Velneo vServer](../velneo-vserver/que-es-velneo-vserver). Estos ficheros de texto se envían a Velneo vAdmin en formato comprimido.

Se genera un fichero por día con el formato msgAAMMDD.txt. Ejemplo: msg170925.txt y su contenido tiene la siguiente estructura:

**Mensaje**: tipo de mensaje.

**Fecha**: fecha de la operación.

**Hora**: hora de la operación.

**Descripción**: explicación de la operación. En la descripción los distintos bloques van separados por un tabulador:

```
3    2017-09-25T13:34:49    Inicio    Servidor vatp de 64 bits iniciado con licencia con subscripción. Versión: 22.0.0.15456 WIN32, Puerto: 690, Puestos de edición: 5, Puestos de ejecución: 9999, Código de licencia: 73-9300
```

En el panel de salida de mensajes de Velneo vAdmin, esta información se mostrará de la forma siguiente:

![](https://3641993963-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7D2zitZhY9szSsa5EK%2Fsync%2Fee2561c413fcbc2858aeab94945efb67ac8c38cd.png?generation=1589374165061327\&alt=media)

Los distintos bloques de la descripción irán separados por comas.

Ver el capítulo dedicado a la [lista de comandos](monitorizacion/lista-de-comandos) para ampliar información sobre los comandos que se nos podrán presentar en el panel de salida de mensajes de Velneo vAdmin.

## Registro de ficheros

[Velneo vAdmin ](que-es-velneo-vadmin)incorpora una utilidad que nos permite obtener información sobre el estado de los ficheros de los proyectos de datos que tengamos instanciados en [Velneo vServer](../velneo-vserver/que-es-velneo-vserver). Para acceder al registro de ficheros ejecutaremos la opción del mismo nombre del menú **Archivo**. Se mostrará información sobre los siguientes tipos de ficheros:

**\*. dat**

Ficheros de datos. Contiene los registros introducidos en una tabla de datos.

**\*.idx**

Ficheros de índices. Contiene los índices que se hayan definido para una tabla de datos.

**\*.idc**

Ficheros de índices complejos. Contiene los índices que se hayan definido para una tabla de datos.

**\*.cnd**

Contenedores. Este tipo de ficheros contienen todos los objetos tales como los de tipo dibujo, texto y texto enriquecido.

**\*.cni**

Índices de los contenedores. Este fichero recoge los índices para los objetos de los contenedores.

Los ficheros se mostrarán agrupados por directorios y la información mostrada de cada uno es:

**Nombre**

Nombre y extensión del fichero.

**Soporte**

Persistencia del fichero; podrá ser en disco o en memoria.

**Instancias**

Número de instancias que hacen uso de ese fichero.

**Estado**

Nos indicará si el fichero está abierto (1) o cerrado (0).

**S.R.L.**

Siguiente registro libre. Se refiere a la posición física dentro del fichero. Por tanto, informa sobre cuál es la posición donde será almacenado el siguiente registro que se añada al fichero.

**U.R.B.**

Último registro borrado. Se refiere a la posición física dentro del fichero. Por tanto, informa sobre la posición que ocupaba el último registro borrado en el mismo.

**N.R.O.**

Número de registros ocupados. Informa sobre el número total de registros ocupados dentro del fichero.

**Modificado**

Datos sobre fecha y hora en la que el fichero ha sido modificado por última vez.

## Procesos asíncronos

Los procesos asíncronos son los procesos que son ejecutados en [4º plano](../velneo-vdevelop/proyectos-objetos-y-editores/de-aplicacion-y-datos/proceso).

Estos procesos tienen la particularidad de que son enviados directamente a una cola en el servidor, que los irá ejecutando de forma secuencial.

Mediante esta opción podremos monitorizar aquellos procesos que son ejecutados en 4º plano.

De cada proceso se muestra la información siguiente:

**Estado**

En la captura de pantalla siguiente el último proceso ha finalizado, el penúltimo está siendo ejecutado y los anteriores están en la cola a la espera de ser ejecutados.

**Usuario**

Nombre del [usuario](../gestion-de-usuarios#usuarios) que ha lanzado el proceso.

**Instancia**

Nombre de la [instancia](gestion-de-aplicaciones/instancias) a la que pertenece el proceso.

Nombre del proceso.

**Fecha y hora**

Fecha y hora de inicio y de de finalización del proceso.

**Duración**

Duración del proceso.

Se mostrará solamente los 1000 últimos procesos.

Podremos realizar filtrados tanto por usuario como por instancia. Es decir, podremos monitorizar o bien todos los procesos asíncronos de todos los usuarios y/o de todas las instancias o lo de un usuario y/o una instancia concreta.

Si paramos o reiniciamos el servidor, los procesos que estuviesen en cola pendiente de ser ejecutados, serán eliminados.
