Administrar grabaciones
ICLDB (ICA log database) es una utilidad de línea de comandos que se usa para trabajar con los registros ubicados en la base de datos de la grabación de sesiones. Esta utilidad se instala durante la instalación de la función Grabación de sesiones en la carpeta <Session Recording Server installation path>\Bin
, en el servidor donde se encuentra el servidor de Grabación de sesiones.
Nota:
Si quiere usar ICLDB para administrar archivos de grabación de sesiones almacenados en recursos compartidos de archivos de Azure, ejecute el comando
SsRecUtils.exe -MountAzureFiles
. SsRecUtils.exe e ICLDB están en la misma carpeta.
Cuadro de referencia rápida
La siguiente tabla contiene los comandos y las opciones disponibles en la utilidad ICLDB. Escriba los comandos en el siguiente formato:
ICLDB [VERSION | LOCATE | DORMANT | IMPORT | ARCHIVE | REMOVE | REMOVEALL] command-options [/L] [/F] [/S] [/?]
Nota:
Encontrará instrucciones más detalladas en el servicio de asistencia asociado a esta utilidad. Para acceder a la ayuda, desde el símbolo del sistema, introduzca el directorio
\Program Files\Citrix\SessionRecording\Server\Bin
y escribaicldb /?
. Para acceder a la ayuda de comandos específicos, escribaicldb <specific command> /?
Comando | Descripción |
---|---|
ARCHIVE |
Archiva los archivos de grabación de sesiones que especifique mediante los parámetros RETENTION y los parámetros FILTER o RULES. El parámetro RETENTION es obligatorio. Permite manipular archivos de grabación de sesiones más antiguos que el período de retención especificado. El período de retención válido es de 2 días como mínimo. Por lo tanto, defina RETENTION en 2 o en un valor mayor que se adapte a sus necesidades. Los parámetros FILTER y RULES son opcionales. El parámetro FILTER permite filtrar rutas de archivos mediante los caracteres comodín * y ? . El parámetro RULES establece los filtros avanzados mediante la combinación de varios filtros estrictamente de acuerdo con el formato /RULES:FIELD-In-["CONDITION","CONDITION"];FIELD-NotIn-["CONDITION","CONDITION"]; . Para obtener más información, consulte El parámetro RULES de los comandos ICLDB ARCHIVE e ICLDB REMOVE después de esta tabla. Los parámetros RULES y FILTER no se pueden utilizar juntos. Si agrega los parámetros FILTER o RULES, solo se manipularán los archivos de grabación de sesiones que cumplan con los parámetros RETENTION y FILTER o RULES. Puede archivar tanto las grabaciones como los eventos en las grabaciones. Los eventos se archivan en la tabla ArchivedEvent de la base de datos. Ejemplo de comando ARCHIVE de ICLDB: ICLDB ARCHIVE /RETENTION:<days> [/LISTFILES] [/MOVETO:<dir>] [/NOTE:<note>] [/FILTER:<file path filter>] [/RULES:<advanced filters>] [/L] [/F] [/S] [/?]
|
DORMANT |
Muestra o cuenta los archivos de grabación de sesiones que se consideran inactivos. Los archivos inactivos son las grabaciones de sesiones que no se completaron debido a la pérdida de datos. Use este comando para comprobar si está perdiendo datos. Puede comprobar si los archivos de grabación de sesiones en toda la base de datos se están convirtiendo en inactivos o si solamente son las grabaciones realizadas durante una cantidad de días, horas o minutos específicos. Entre los parámetros de tiempo (DAYS, HOURS y MINUTES), solo se puede especificar uno a la vez. |
IMPORT |
Importa archivos de grabación de sesiones a la base de datos de Grabación de sesiones. Use este comando para reconstruir la base de datos si pierde registros de esta. Además, use este comando para combinar bases de datos (si tiene dos bases de datos, puede importar los archivos de una de ellas). La versión 2303 introduce el parámetro RELOCATE en el comando IMPORT. Sin el parámetro RELOCATE, el comando IMPORT analiza los archivos de grabación de sesiones en su totalidad, lo que conlleva tiempo. Con el parámetro RELOCATE, el comando IMPORT simplemente localiza los registros de base de datos de los archivos de grabación de sesiones y actualiza sus rutas directamente. Ejemplo de comando IMPORT de ICLDB: ICLDB IMPORT [/LISTFILES] [/RECURSIVE] [/RELOCATE] [/L] [/F] [/S] [/?] [<file>] [<directory>]
|
LOCATE |
Busca y muestra la ruta completa a un archivo de grabación de sesiones con el ID del archivo como criterio. Use este comando cuando busque la ubicación de un archivo de grabación de sesiones en el almacenamiento. También se trata de una forma de comprobar si la base de datos está al día con un archivo específico. Ejemplo de comando LOCATE de ICLDB: ICLDB LOCATE /FILEID:<id> [/L] [/F] [/S] [/?]
|
REMOVE |
Elimina las referencias a los archivos de grabación de sesiones que hubiera en la base de datos. Use este comando (con cuidado) para limpiar la base de datos. Puede también eliminar los archivos asociados. Al utilizar el comando REMOVE, especifique los archivos de grabación de sesiones de destino mediante el parámetro RETENTION y los parámetros FILTER o RULES. El parámetro RETENTION es obligatorio. Permite manipular archivos de grabación de sesiones más antiguos que el período de retención especificado. El período de retención válido es de 2 días como mínimo. Por lo tanto, defina RETENTION en 2 o en un valor mayor que se adapte a sus necesidades. Los parámetros FILTER y RULES son opcionales. El parámetro FILTER permite filtrar rutas de archivos mediante los caracteres comodín * y ? . El parámetro RULES establece los filtros avanzados mediante la combinación de varios filtros estrictamente de acuerdo con el formato /RULES:FIELD-In-["CONDITION","CONDITION"];FIELD-NotIn-["CONDITION","CONDITION"]; . Para obtener más información, consulte El parámetro RULES de los comandos ICLDB ARCHIVE e ICLDB REMOVE después de esta tabla. Los parámetros RULES y FILTER no se pueden utilizar juntos. Si agrega los parámetros FILTER o RULES, solo se manipularán los archivos de grabación de sesiones que cumplan con los parámetros RETENTION y FILTER o RULES. Ejemplo del comando REMOVE de ICLDB: ICLDB REMOVE /RETENTION:<days> [/LISTFILES] [/DELETEFILES] [/FILTER:<file path filter>] [/RULES:<advanced filters>] [/L] [/F] [/S] [/?]
|
REMOVEALL |
Elimina todas las referencias a los archivos de grabación de sesiones que hubiera en la base de datos y la devuelve a su estado original. Los archivos no se eliminan, pero ya no es posible buscarlos en el reproductor de la grabación de sesiones. Use este comando (con cuidado) para limpiar la base de datos. Las referencias eliminadas solo pueden revertirse con la restauración desde la copia de seguridad. |
VERSION |
Muestra la versión del esquema que tiene la base de datos de Grabación de sesiones. |
/L |
Registra resultados y errores en el registro de eventos de Windows. |
/F |
Hace que el comando se ejecute sin hacer solicitudes. |
/S |
Elimina el mensaje de copyright. |
/? |
Muestra una ayuda para los comandos. |
El parámetro RULES de los comandos ARCHIVE e REMOVE de ICLDB
El parámetro RULES establece los filtros avanzados mediante la combinación de varios filtros estrictamente de acuerdo con el formato /RULES:FIELD-In-["CONDITION","CONDITION"];FIELD-NotIn-["CONDITION","CONDITION"];
, donde:
-
“FIELD” establece un filtro con un campo, que puede ser “path”, “user”, “group”, “deliverygroup”, “application”, “server”, “client” o cualquier otra columna de la tabla de la base de datos denominada dbo.ICLFile.
-
“In” significa que se debe cumplir al menos una de las condiciones del filtro entre corchetes para que un archivo de grabación sea el objeto de una operación.
-
“NotIn” significa que los archivos de grabación que cumplan alguna de las condiciones del filtro que figuran entre corchetes se excluyen de la operación.
-
“CONDITION” establece una condición de filtro con un registro (o fila) en la tabla de la base de datos denominada dbo.ICLFile.
-
Los registros de usuario y grupo se deben introducir en el formato
<domain>.<name>
. -
Los registros de rutas se pueden filtrar mediante caracteres comodín de Windows.
-
Cada elemento de “CONDITION” debe ir entre comillas dobles rectas (
""
), y dos elementos de “CONDITION” deben estar separados por una coma (,
). -
No agregue espacios al introducir elementos de “CONDITION” a menos que el elemento de “CONDITION” en sí mismo contenga espacios.
-
Si un elemento de “CONDITION” contiene una o más comas, escriba el elemento “CONDITION” entre comillas dobles rectas seguidas de comillas dobles con escape:
""" """
. -
Se pueden utilizar varios filtros en varias combinaciones. Termine cada filtro con un punto y coma (
;
). -
El operador lógico “AND” se utiliza para calcular los múltiples filtros. No hay límite en cuanto a la cantidad de filtros, pero la longitud total de RULES no debe superar los 2048 bytes.
Ejemplos:
/RULES:group-In-["BUILTIN.Guests"];
/RULES:path-In-["S:\SessionRecordings\2023*"];group-NotIn-["Mydomain.Suspicious","Mydomain.Persistence"];
/RULES:deliverygroup-In-["RdsDesktopAndAppGroup"];user-In-["Mydomain.AdminA","""Mydomain.Admin,,,B"""];
/RULES:EndReasonID-In-["1","2"];
Archivar archivos de grabaciones de sesiones
Para mantener un nivel adecuado de capacidad adicional en el disco de las ubicaciones de almacenamiento de grabaciones, debe archivar con regularidad los archivos de la grabación de sesiones. Los intervalos de archivado varían en función de la cantidad disponible de espacio en disco y del tamaño típico de los archivos de grabación. Para poder archivarlos, deben haber pasado más de dos días desde la fecha de inicio de los archivos de grabación de sesiones. Esta regla sirve para evitar que grabaciones en directo se archiven antes de completarse.
Hay dos métodos disponibles de archivar las grabaciones de las sesiones. El registro de base de datos, referente al archivo de grabación que queremos archivar, se puede actualizar para adjudicarle el estado de archivado sin cambiarlo de ubicación en el almacenamiento de grabaciones. Este método se puede utilizar para reducir los resultados de búsqueda en el reproductor de Grabación de sesiones. El otro método es actualizar el registro de la base de datos referente a un archivo de grabación al estado de archivado y mover ese archivo desde la ubicación del almacenamiento de grabaciones a otra ubicación desde la que estará disponible como copia de seguridad para otros medios. Cuando la utilidad ICLDB mueve archivos de grabación de sesiones, esos archivos se mueven a un directorio especificado donde la estructura original de las carpetas, año/mes/día, ya no existe.
El registro de grabación de sesiones de la base de datos de Grabación de sesiones contiene dos campos asociados al archivado: el tiempo de archivado y la nota de archivado. El tiempo de archivado representa la fecha y la hora en que se archivó una grabación. La nota de archivado contiene texto opcional que se puede agregar durante el archivado. Los dos campos indican que una grabación se ha archivado y el momento de ese archivado.
En el reproductor de Grabación de sesiones, las grabaciones de sesiones archivadas muestran el estado “Archivado”, así como la fecha y la hora del archivado. Las grabaciones de sesiones que se hayan archivado aún se pueden reproducir si los archivos no se han movido a otra ubicación. En cambio, si un archivo de grabación de sesiones se transfiriera durante el archivado, aparece un error de archivo no encontrado. El archivo de grabación de sesiones debe restaurarse para poder reproducir la sesión. Para restaurar un archivo de grabación de sesiones, proporcione el ID de archivo y el Tiempo de archivado del archivo de grabación. La restauración de archivos archivados se trata más adelante, en la sección Restaurar archivos de grabación de sesiones.
El comando ARCHIVE de la utilidad ICLDB presenta varios parámetros que se describen a continuación:
-
/RETENTION:<days>: El período de tiempo, en días, que se conservan las grabaciones de sesiones. Las grabaciones que superen la cantidad de días especificados se marcan como archivadas en la base de datos de Grabación de sesiones. El período de retención debe ser un número entero mayor o igual a 2 días.
-
/FILTER:<filter>: Permite filtrar rutas de archivos con los caracteres comodín
*
y?
. El parámetro FILTER es opcional. Si agrega el parámetro FILTER, solo se archivarán los archivos de grabación de sesiones que cumplan con los parámetros RETENTION y FILTER. -
/RULES:<filtros avanzados>: Establece filtros avanzados mediante la combinación de varios filtros estrictamente conformes con el formato
/RULES:FIELD-In-["CONDITION","CONDITION"];FIELD-NotIn-["CONDITION","CONDITION"];
. Los parámetros RULES y FILTER no se pueden utilizar juntos. Para obtener más información, consulte la sección anterior El parámetro RULES para los comandos ARCHIVE y REMOVE de ICLDB de este artículo. -
/LISTFILES: Muestra la ruta completa y el nombre de los archivos de grabación de sesiones a medida que se archivan. Este parámetro es opcional.
-
/MOVETO:<directory>: El directorio al que mueven físicamente los archivos de grabación de sesiones archivados. El directorio especificado debe existir. Este parámetro es opcional. Si no se especifica ningún directorio, los archivos permanecen en su ubicación de almacenamiento original.
-
/NOTE:<note>: Una nota de texto que se agrega al registro de la base de datos correspondiente a cada grabación de sesiones archivada. La nota debe escribirse entre comillas dobles. Este parámetro es opcional.
-
/L: Registra, en el registro de eventos de Windows, los resultados y los errores relacionados con los archivos de grabación de sesiones archivados. Este parámetro es opcional.
- /F: Hace que el comando “archive” se ejecute sin hacer solicitudes. Este parámetro es opcional.
Para archivar las grabaciones de sesiones en la base de datos de Grabación de sesiones y mover físicamente los archivos de grabación de sesiones
-
Inicie sesión como administrador local en el servidor donde está instalado el servidor de Grabación de sesiones.
-
Inicie un símbolo del sistema.
-
Cambie del directorio de trabajo actual al directorio Bin de la ruta de instalación del servidor de grabación de sesiones (
<Session Recording server Installation Path>\Bin
). -
Ejecute el comando
ICLDB ARCHIVE /RETENTION:<days> [/LISTFILES] [/MOVETO:<dir>] [/NOTE:<note>] [/FILTER:<file path filter>] [/RULES:<advanced filters>] [/L] [/F] [/S] [/?]
. Los parámetros entre corchetes son opcionales. Quite los corchetes al ejecutar el comando. Los parámetros RULES y FILTER no se pueden usar juntos. days es el período de retención que corresponderá a los archivos de grabación de sesiones, directory es el directorio al que se transfieren los archivos de grabación de sesiones y note es el texto de la nota que se agrega al registro de cada archivo de grabación de sesiones que se archive en la base de datos. Presione Y para confirmar el archivado.
Para archivar solo las grabaciones de sesiones en la base de datos de Grabación de sesiones
-
Inicie sesión como administrador local en el servidor donde está instalado el servidor de Grabación de sesiones.
-
Inicie un símbolo del sistema.
-
Cambie del directorio de trabajo actual al directorio Bin de la ruta de instalación del servidor de grabación de sesiones (
\Bin). -
Ejecute el comando
ICLDB ARCHIVE /RETENTION:<days> [/LISTFILES] [/NOTE:<note>] [/FILTER:<file path filter>] [/RULES:<advanced filters>] [/L] [/F] [/S] [/?]
. Los parámetros entre corchetes son opcionales. Quite los corchetes al ejecutar el comando. Los parámetros RULES y FILTER no se pueden utilizar juntos. days es el período de retención que corresponderá a las grabaciones de sesiones y note es el texto de la nota que se agrega al registro de cada archivo de grabación de sesiones que se archive en la base de datos. Presione Y para confirmar el archivado.
Restaurar archivos de grabación de sesiones
Para ver un archivo de grabación archivado en la base de datos de Grabación de sesiones que se haya movido de la ubicación de almacenamiento de grabaciones, restáurelo. Si las grabaciones de sesiones archivadas permanecieron en la ubicación del almacenamiento de grabaciones durante el archivado, aún se puede acceder a ellas a través del reproductor.
Dispone de dos métodos para restaurar los archivos de grabación de sesiones que se hayan movido. Copie el archivo de grabación de sesiones en el directorio de restauración de los archivos archivados. O bien, vuelva a importarlo a la base de datos de Grabación de sesiones con ayuda de la utilidad ICLDB. Se recomienda el primer método para restaurar los archivos de grabación de sesiones archivados. Elimine los archivos archivados copiados al directorio de restauración cuando ya no los necesite.
El intermediario de Grabación de sesiones recurre al directorio de restauración para archivos archivados cuando no encuentra un archivo de grabación de sesiones en su ubicación de almacenamiento original. Este caso se da cuando el reproductor solicita un archivo de grabación de sesiones para reproducirlo. Primero, el intermediario de Grabación de sesiones busca el archivo de grabación de sesiones en la ubicación de almacenamiento original. Si el archivo no se encuentra en la ubicación de almacenamiento original, el intermediario de Grabación de sesiones consulta el directorio de restauración para archivos archivados. Si el archivo está presente en el directorio de restauración, el Broker de grabación de sesiones lo envía al reproductor para reproducirlo. Si no se encuentra el archivo, el Broker de grabación de sesiones envía un error de archivo no encontrado al reproductor.
Importar un archivo de grabación archivado implica actualizar la base de datos de Grabación de sesiones con la información de grabación de sesiones que contenga el archivo, incluida la nueva ruta de almacenamiento. Importar un archivo de grabación de sesiones archivado no mueve ese archivo a la ubicación del almacenamiento original.
Nota: Un archivo de grabación de sesiones importado tiene los campos de la hora del archivado y la nota del archivado vacíos en la base de datos de Grabación de sesiones. La próxima vez que se ejecute el comando ARCHIVE de ICLDB, es posible que el archivo de grabación de sesiones importado se archive de nuevo.
El comando IMPORT de ICLDB sirve para importar una gran cantidad de archivos de grabación archivados. Puede reparar o actualizar datos de grabación de sesiones incorrectos o ausentes en la base de datos de Grabación de sesiones. También es útil para mover archivos de grabación de sesiones de una ubicación de almacenamiento a otra en el servidor de Grabación de sesiones. El comando IMPORT de ICLDB sirve para volver a rellenar la base de datos de Grabación de sesiones con las grabaciones de sesiones después de ejecutar el comando REMOVEALL de ICLDB.
El comando IMPORT de la utilidad ICLDB presenta varios parámetros que sirven para restaurar archivos de grabación archivados:
-
/LISTFILES: Muestra la ruta completa y el nombre de los archivos de grabación de sesiones a medida que se importan. Este parámetro es opcional.
-
/RECURSIVE: Busca los archivos de grabación de sesiones en todos los subdirectorios. Este parámetro es opcional.
-
/RELOCATE: Sin el parámetro RELOCATE, el comando IMPORT analiza los archivos de grabación de sesiones en su totalidad, lo que conlleva tiempo. Con el parámetro RELOCATE, el comando IMPORT simplemente localiza los registros de base de datos de los archivos de grabación de sesiones y actualiza sus rutas directamente.
-
/L: Registra, en el registro de eventos de Windows, los resultados y los errores relacionados con los archivos de grabación de sesiones importados. Este parámetro es opcional.
-
/F: Hace que el comando IMPORT se ejecute sin hacer solicitudes. Este parámetro es opcional.
Nota:
El comando IMPORT de la utilidad ICLDB también proporciona un parámetro opcional, RELOCATE, que sirve para reubicar archivos de grabación. Para obtener más información, consulte la sección Reubicar archivos de grabación de sesiones de este artículo.
Restaurar archivos de grabación de sesiones mediante el directorio de restauración para archivos archivados
-
Inicie sesión como administrador local en el servidor donde está instalado el servidor de Grabación de sesiones.
-
En “Propiedades” del Reproductor de grabación de sesiones, determine el ID del archivo y la hora de archivado.
-
Localice el archivo de grabación de sesiones en sus copias de seguridad mediante el ID de archivo especificado en “Propiedades” del Reproductor de grabación de sesiones. Todas las grabaciones de sesiones tienen el nombre de archivo
i_<FileID>.icl
l, donde FileID es el ID del archivo de grabación de sesiones. -
Copie el archivo de grabación de sesiones desde su copia de seguridad al directorio de restauración de los archivos archivados. Para determinar el directorio de restauración de archivos archivados:
-
En el menú Inicio, elija Inicio > Todos los programas > Citrix > Propiedades del servidor de Grabación de sesiones.
-
En Propiedades del servidor de Grabación de sesiones, haga clic en la ficha Almacenamiento. El directorio de restauración actual aparece en el campo del directorio de restauración para archivos archivados.
-
Restaurar archivos de grabación de sesiones mediante el comando IMPORT de ICLDB
-
Inicie sesión como administrador local en el servidor donde está instalado el servidor de Grabación de sesiones.
-
Inicie un símbolo del sistema.
-
Cambie del directorio de trabajo actual al directorio Bin de la ruta de instalación del servidor de grabación de sesiones (
<Session Recording server installation path>\Bin
). -
Puede elegir entre:
-
Ejecute el comando
ICLDB IMPORT /LISTFILES /RECURSIVE /L <directory>
, donde directory es el nombre de uno o varios directorios, separados por un espacio cada uno, que contienen archivos de grabación de sesiones. Presione Y para confirmar la importación. -
Ejecute el comando
ICLDB IMPORT /LISTFILES /L <file>
, donde file es el nombre de uno o varios archivos de grabación de sesiones, separados por un espacio cada uno. Puede usar comodines para especificar los archivos de grabación de sesiones. Presione Y para confirmar la importación.
-
Reubicar archivos de grabación de sesiones
Puede mover los archivos de grabación de sesiones a diferentes rutas de almacenamiento para equilibrar la carga o con otros fines. Para garantizar que los archivos se puedan seguir reproduciendo, debe actualizar sus nuevas rutas en la base de datos de grabación de sesiones. Para ello, utilice el comando IMPORT de ICLDB. Para acelerar el proceso de importación, agregue el parámetro RELOCATE al comando IMPORT de ICLDB.
Nota:
El parámetro RELOCATE es opcional. Sin el parámetro RELOCATE, el comando IMPORT de ICLDB analiza los archivos de grabación de sesiones en su totalidad, lo que conlleva tiempo. Con el parámetro RELOCATE, el comando IMPORT de ICLDB simplemente localiza los registros de base de datos de los archivos de grabación de sesiones y actualiza sus rutas directamente.
En los pasos siguientes, se muestra cómo utilizar el parámetro RELOCATE para actualizar nuevas rutas de archivos en la base de datos de grabación de sesiones.
-
Mueva los archivos de grabación de sesiones a diferentes rutas de almacenamiento según sea necesario.
-
Inicie sesión como administrador local en el servidor donde está instalado el servidor de Grabación de sesiones.
-
Inicie un símbolo del sistema.
-
Cambie del directorio de trabajo actual al directorio Bin de la ruta de instalación del servidor de grabación de sesiones (
<Session Recording server installation path>\Bin
). -
Puede elegir entre:
-
Ejecute el comando
ICLDB IMPORT /LISTFILES /RECURSIVE /RELOCATE /L <directory>
, donde directory es el nombre de uno o varios directorios, separados por un espacio cada uno, que contienen archivos de grabación de sesiones. Presione Y para confirmar la importación. -
Ejecute el comando
ICLDB IMPORT /LISTFILES /RELOCATE /L <file>
, donde file es el nombre de uno o varios archivos de grabación de sesiones, separados por un espacio cada uno. Puede usar comodines para especificar los archivos de grabación de sesiones. Presione Y para confirmar la importación.
-
Nota:
- El parámetro RELOCATE asume que ya hay registros de los archivos de grabación de sesiones en la base de datos de grabación de sesiones.
- Los archivos de grabación de sesiones deben poder reproducirse antes de moverlos. De lo contrario, el parámetro RELOCATE no sirve de ayuda.
- El servidor de Grabación de sesiones debe poder reconocer las nuevas rutas de almacenamiento de los archivos de grabación de sesiones. Puede probarlas en la ficha Almacenamiento de Propiedades del Servidor de grabación de sesiones.