Saltar al contenido principal
Versión: 21 R3 BETA

Recopilación de datos

Para que nuestros productos sean siempre mejores, recogemos automáticamente los datos relativos a las estadísticas de uso de las aplicaciones 4D Server en funcionamiento. Los datos recolectados se transfieren sin ningún impacto en la experiencia del usuario. No se recopila información personal. Para más información sobre la política de 4D en materia de protección de datos personales, consulte esta página.

La sección siguiente lo explica:

  • qué información se recoge,
  • dónde se almacena la información y cuándo se envía a 4D,
  • cómo desactivar la recopilación automática de datos en las aplicaciones integradas cliente/servidor.

Información recopilada

Los datos se recogen durante los siguientes eventos:

  • inicio de la base de datos,
  • cierre de base de datos,
  • inicio del servidor web,
  • uso de funciones específicas como php, open datastore, depurador remoto,
  • conexión con el cliente,
  • envío de recolección de datos.

También se recogen algunos datos a intervalos regulares.

DatosTipoNotas
appServerObjectObjeto que contiene información sobre el servidor de aplicaciones
appServer.hitsNumberNúmero de peticiones de procesos internos
appServer.bytesInNumberBytes recibidos por procesos internos
appServer.bytesOutNumberBytes enviados por procesos internos
appServer.executionTimeNumberTiempo de ejecución de la CPU para procesos internos
cacheMissBytesObjectNúmero de bytes perdidos de la caché
cacheMissCountObjectNúmero de lecturas perdidas en la caché
cacheReadBytesObjectNúmero de bytes leídos de la caché
cacheReadCountObjectNúmero de lecturas en la caché
classUsageObjectNúmero de instancias de ciertas clases de lenguaje
connectionSystemsCollectionSistema operativo del cliente sin el número de compilación (entre paréntesis) y número de clientes que lo utilizan
databases[].cacheSizeNumberTamaño de caché en bytes
databases[].externalDatastoreOpenedNumberNúmero de llamadas a Open datastore
databases[].idNumberID de la base de datos
databases[].internalDatastoreOpenedNumberNúmero de veces que un servidor externo abre el almacén de datos
databases[].maxConcurrent4DClientsNumberNúmero máximo de sesiones 4D Client simultáneas (utilizando una licencia 4D Client) durante el intervalo de recolección
databases[].maxConcurrentRestSessionsNumberNúmero máximo de sesiones REST simultáneas durante el intervalo de recolección
databases[].maxConcurrentWebSessionsNumberNúmero máximo de sesiones Web simultáneas (4DACTION y SOAP) durante el intervalo de recolección
databases[].maximum4DClientConnectionsNumberNúmero máximo de conexiones 4D Client al servidor
databases[].numberOfDistinctClientsNumberConteo de distintos de UUID persistentes de clientes en el intervalo de colección
databases[].numberOfFieldsNumberNúmero de campos
databases[].numberOfKeepRecordSyncInfoNumberNúmero de tablas con la opción "Activar la replicación" marcada
databases[].numberOfRecordsMaxNumberNúmero total de registros
databases[].numberOfTablesNumberNúmero de tablas
databases[].qodly.webformsNumberNúmero de formularios web Qodly
databases[].remoteDebugger4DRemoteAttachmentsNumberNúmero de adjuntos al depurador remoto desde un 4D remoto
databases[].remoteDebuggerQodlyAttachmentsNumberNúmero de archivos adjuntos al depurador remoto de Qodly
databases[].remoteDebuggerVSCodeAttachmentsNumberNúmero de archivos adjuntos al depurador remoto desde VS Code
databases[].structureHashText
databases[].uniqueIDTexto (cadena con hash)Identificador único asociado a la base de datos (Polinomio Rolling hash del nombre de la base)
databases[].uptimeNumberTiempo transcurrido (en segundos) entre dos eventos de recolección
databases[].uuidTextUUID de la base de datos
databases[].webIPAddressesNumberNumberNúmero de direcciones IP diferentes que hicieron una petición a 4D Server
databases[].webMaxScalableSessionsNumberNúmero máximo de sesiones escalables en el servidor
databases[].webScalableSessionsBooleanTrue si las sesiones escalables están activadas
dataSegment1.diskReadBytesObjectNúmero de bytes leídos en el archivo de datos
dataSegment1.diskReadCountObjectNúmero de lecturas en el archivo de datos
dataSegment1.diskWriteBytesObjectNúmero de bytes escritos en el archivo de datos
dataSegment1.diskWriteCountObjectNúmero de escrituras en el archivo de datos
dataSizeNumberTamaño del archivo de datos en bytes
dbServerObjectObjeto que contiene información sobre el servidor DB4D
dbServer.hitsNumberNúmero de peticiones de procesos internos
dbServer.bytesInNumberBytes recibidos por procesos internos
dbServer.bytesOutNumberBytes enviados por procesos internos
dbServer.executionTimeNumberTiempo de ejecución de la CPU para procesos internos
encryptedConnectionsBooleanTrue si las conexiones cliente/servidor están encriptadas
externalPHPBooleanTrue si el cliente realiza una llamada a PHP execute y utiliza su propia versión de php
general.buildNumberNumberNúmero de build de la aplicación 4D
general.headlessBooleanTrue si la aplicación se ejecuta en modo sin interfaz
general.isRosettaBooleanTrue si 4D es emulado a través de Rosetta en macOS, False en caso contrario (no emulado o en Windows).
general.licenseObjectNombre comercial y descripción de las licencias de los productos
general.uniqueIDTextID único de 4D Server
general.versionTextNúmero de versión de la aplicación 4D
hasDataChangeTrackingBooleanTrue si existe una tabla "__DeletedRecords
indexSegment.diskReadBytesNumberNúmero de bytes leídos en el archivo índice
indexSegment.diskReadCountNumberNúmero de lecturas en el archivo índice
indexSegment.diskWriteBytesNumberNúmero de bytes escritos en el archivo índice
indexSegment.diskWriteCountNumberNúmero de escrituras en el archivo índice
indexSizeNumberTamaño del índice en bytes
isCompiledBooleanTrue si la aplicación está compilada
isEncryptedBooleanTrue si el archivo de datos está encriptado
isEnginedBooleanTrue si la aplicación se fusiona con 4D Volume Desktop
isProjectModeBooleanTrue si la aplicación es un proyecto
LDAPLoginNumberNúmero de llamadas a LDAP LOGIN
license.sffPrimaryKeyNumberNúmero de producto del servidor principal
machine.CPUTextNombre, tipo y velocidad del procesador
machine.memoryNumberVolumen de almacenamiento de memoria (en bytes) disponible en la máquina
machine.numberOfCoresNumberNúmero total de núcleos
machine.systemTextVersión del sistema operativo y número de build
maximumNumberOfWebProcessesNumberNúmero máximo de procesos web simultáneos
maximumUsedPhysicalMemoryNumberUso máximo de la memoria física
maximumUsedVirtualMemoryNumberUso máximo de la memoria virtual
mobileCollectionInformación sobre sesiones móviles
numberOfWebServicesNumberNúmero de métodos publicados como servicios web
ODBCLoginNumberNúmero de llamadas a SQL LOGIN utilizando ODBC
phpCallNumberNúmero de llamadas a PHP execute
QueryBySQLNumberNúmero de llamadas a QUERY BY SQL
restServerObjectObjeto que contiene información del servidor REST
restServer.bytesInNumberBytes recibidos por el servidor REST
restServer.bytesOutNumberBytes enviados por el servidor REST
restServer.hitsNumberNúmero de hits del servidor REST
restServer.executionTimeNumberTiempo de ejecución de la CPU para el servidor REST WEB
soapServerObjectObjeto que contiene información sobre el servidor SOAP
soapServer.bytesInNumberBytes recibidos por el servidor SOAP
soapServer.bytesOutNumberBytes enviados por el servidor SOAP
soapServer.hitsNumberNúmero de hits del servidor SOAP
soapServer.executionTimeNumberTiempo de ejecución de la CPU para el servidor SOAP
SQLBeginEndStatementNumberNúmero de usos de "Begin SQL" / "End SQL"
SQLLoginInternalNumberNúmero de llamadas a SQL LOGIN utilizando SQL_INTERNAL
sqlServerObjectObjeto que contiene información del servidor SQL
sqlServer.hitsNumberNúmero de consultas SQL ejecutadas
sqlServer.bytesInNumberBytes recibidos por el motor SQL
sqlServer.bytesOutNumberBytes enviados por el motor SQL
sqlServer.executionTimeNumberTiempo de ejecución de la CPU para consultas SQL
usingQUICNetworkLayerBooleanTrue si la base utiliza la capa de red QUIC
totalExecutionTimeNumberTiempo total de ejecución de la CPU: suma de todos los tipos de peticiones
totalRequestsNumberTotal de peticiones: suma de peticiones web, REST, SOAP, SQL y del tráfico interno
webServerObjectObjeto que contiene información sobre el servidor web
webServer.bytesInNumberBytes recibidos por el servidor web
webServer.bytesOutNumberBytes enviados por el servidor web
webServer.hitsNumberNúmero de hits al servidor web
webServer.executionTimeNumberTiempo de ejecución de la CPU para el servidor Web
webStaticServerObjectObjeto que contiene la información estática del servidor web
webStaticServer.bytesInNumberBytes recibidos por el servidor Web estático
webStaticServer.bytesOutNumberBytes enviados por el servidor Web estático
webStaticServer.hitsNumberNúmero de visitas al servidor Web estático
webStaticServer.executionTimeNumberTiempo de ejecución de la CPU para el servidor Web estático

¿Dónde se almacena y envía?

Los datos recolectados se escriben en un archivo de texto (formato JSON) por base de datos cuando 4D Server cierra. El archivo se guarda dentro de la carpeta activa de 4D, es decir:

  • en Windows: Users\[userName]\AppData\Roaming\4D Server
  • en macOS: /Users/[userName]/Library/ApplicationSupport/4D Server

Una vez a la semana, el archivo se envía automáticamente por la red a 4D. A continuación, el archivo se elimina de la carpeta activa de 4D.

Si el archivo no ha podido ser enviado por alguna razón, no obstante se elimina y no se muestra ningún mensaje de error del lado de 4D Server.

El archivo se envía a la siguiente dirección del servidor: https://dcollector.4d.com (ip: 195.68.52.83).

Desactivar la recopilación de datos en las aplicaciones cliente/servidor integradas

Puede desactivar la recolección automática de datos en aplicaciones integradas cliente/servidor.

Para desactivar la colección, pase el valor False a la llave ServerDataCollection en el archivo buildApp.4DSettings, utilizado para crear la aplicación cliente/servidor.