Implementa un complemento indexador del colector HTTP de Norconex

Esta guía está destinada a los administradores del complemento indexador del colector HTTP de Norconex de Google Cloud Search, es decir, cualquier persona que sea responsable de la descarga, la implementación, la configuración y el mantenimiento del complemento indexador. En la guía, se supone que estás familiarizado con los sistemas operativos de Linux, los aspectos principales del rastreo web, XML y el Colector HTTP de Norconex.

Esta guía incluye instrucciones para realizar tareas clave o la implementación del complemento indexador:

  • Descarga el software del complemento indexador.
  • Configuración de Google Cloud Search
  • Configuración del colector HTTP de Norconex y el rastreo web
  • Inicio del rastreo web y la carga de contenido

La información sobre las tareas que debe realizar el administrador de Google Workspace para asignar Google Cloud Search al complemento indexador del colector HTTP de Norconex no aparece en esta guía. Para obtener información sobre esas tareas, consulta Administra fuentes de datos de terceros.

Descripción general del complemento indexador del colector HTTP de Norconex de Cloud Search

De forma predeterminada, Cloud Search puede descubrir, indexar y entregar contenido desde los productos de Google Workspace, como Documentos de Google y Gmail. Puedes ampliar el alcance de Google Cloud Search para incluir la entrega de contenido web a tus usuarios si implementas el complemento indexador del colector HTTP de Norconex, un rastreador web empresarial de código abierto.

Archivos de propiedades de configuración

Para habilitar que el complemento indexador realice rastreos web y suba contenido a la API de indexación, debes, como administrador del complemento indexador, proporcionar información específica durante los pasos de configuración que se describen en este documento en Pasos de implementación.

Para usar el complemento indexador, debes configurar las propiedades en dos archivos de configuración:

  • {gcs-crawl-config.xml}: Contiene la configuración del colector HTTP de Norconex.
  • sdk-configuration.properties: Contiene la configuración de Google Cloud Search.

Las propiedades en cada archivo habilitan que el complemento indexador de Google Cloud Search y el Colector HTTP de Norconex puedan comunicarse.

Rastreo web y carga de contenido

Una vez que hayas propagado los archivos de configuración, tendrás la configuración necesaria para iniciar el rastreo web. El Colector HTTP de Norconex rastrea la Web, descubre contenido del documento que se refiere a su configuración y sube versiones binarias (o de texto) originales del contenido del documento a la API de indexación de Cloud Search donde se indexan y se entregan a tus usuarios.

Sistema operativo compatible

El complemento indexador del Colector HTTP de Norconex de Google Cloud Search debe instalarse en Linux.

Versión compatible del Colector HTTP de Norconex

El complemento indexador del Colector HTTP de Norconex de Google Cloud Search es compatible con la versión 2.8.0.

Compatibilidad de LCA

El complemento indexador es compatible con el control de acceso a documentos en el dominio de Google Workspace mediante Listas de control de acceso (LCA).

Si las LCA predeterminadas están habilitadas en la configuración del complemento de Google Cloud Search (defaultAcl.mode establecido en otro valor que no sea none y configurado con defaultAcl.*), el complemento indexador primero intenta crear y aplicar una LCA predeterminada.

Si no se habilitan las LCA predeterminadas, el complemento recurre a dar permiso de lectura a todo el dominio de Google Workspace.

Para obtener descripciones detalladas de los parámetros de configuración de LCA, consulta parámetros de conectores proporcionados por Google.

Requisitos previos

Antes de implementar el complemento indexador, asegúrate de que tienes los siguientes componentes necesarios:

  • Java JRE 1.8 instalado en una computadora que ejecute el complemento indexador
  • La información de Google Workspace necesaria para establecer relaciones entre Cloud Search y el colector HTTP de Norconex:

    Por lo general, el administrador de Google Workspace del dominio puede proporcionarte estas credenciales.

Pasos para la implementación

Para implementar el complemento del indexador, sigue estos pasos:

  1. Instala el Colector HTTP de Norconex y el software del complemento indexador
  2. Configura Google Cloud Search
  3. Configura el colector HTTP de Norconex
  4. Configurar el rastreo web
  5. Inicia un rastreo web y la carga de contenido

Paso 1: Instala el colector HTTP de Norconex y el software del complemento indexador

  1. Descarga el software de confirmación de Norconex desde esta página.
  2. Descomprime el software descargado en la carpeta ~/norconex/
  3. Clona el complemento de confirmación desde GitHub. git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git y, luego, cd norconex-committer-plugin
  4. Revisa la versión deseada del complemento de confirmación y compila el archivo ZIP: git checkout tags/v1-0.0.3 y mvn package (para omitir las pruebas cuando compiles el conector, usa mvn package -DskipTests).
  5. cd target
  6. Copia el archivo jar del complemento compilado en el directorio norconex lib. cp google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-{version}/lib
  7. Extrae el archivo ZIP que acabas de compilar y, luego, descomprime el archivo: unzip google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip.
  8. Ejecuta la secuencia de comandos de instalación para copiar el .jar del complemento y todas las bibliotecas necesarias en el directorio del colector HTTP:
    1. Cambia al complemento de confirmación extraído que descomprimiste anteriormente: cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3
    2. Ejecuta $ sh install.sh y proporciona la ruta de acceso completa a norconex/norconex-collector-http-{version}/lib como el directorio de destino cuando se te solicite.
    3. Si se encuentran archivos jar duplicados, selecciona la opción 1 (copia el jar fuente solo si es de una versión superior o igual que el jar de destino después de cambiar el nombre del jar de destino).

Paso 2: Configura Google Cloud Search

Para que el complemento indexador se conecte al Colector HTTP de Norconex e indexe el contenido relevante, debes crear el archivo de configuración de Cloud Search en el directorio de Norconex en el que se instala el Colector HTTP de Norconex. Google recomienda que definas el nombre sdk-configuration.properties del archivo de configuración de Cloud Search.

Este archivo de configuración debe contener pares clave-valor que definan un parámetro. El archivo de configuración debe especificar al menos los siguientes parámetros, que son necesarios para acceder a la fuente de datos de Cloud Search.

Parámetro de configuración Parámetro
ID de la fuente de datos api.sourceId = 1234567890abcdef
Obligatorio. El ID de la fuente de Cloud Search que configura el administrador de Google Workspace.
Cuenta de servicio api.serviceAccountPrivateKeyFile = ./PrivateKey.json
Obligatorio. El archivo de claves de la cuenta de servicio de Cloud Search que creó el administrador de Google Workspace para la accesibilidad del complemento indexador.

En el siguiente ejemplo, se muestra un archivo sdk-configuration.properties.

#
# data source access
api.sourceId=1234567890abcdef
api.serviceAccountPrivateKeyFile=./PrivateKey.json
#

El archivo de configuración también puede contener parámetros de configuración que proporciona Google. Estos parámetros pueden afectar la forma en que este complemento envía datos a la API de Google Cloud Search. Por ejemplo, el conjunto batch.* de parámetros identifica cómo el conector combina solicitudes.

Si no defines un parámetro en el archivo de configuración, se usa el valor predeterminado, si está disponible. Para obtener descripciones detalladas de cada parámetro, consulta parámetros de conectores proporcionados por Google.

Puedes configurar el complemento del indexador para propagar metadatos y datos estructurados para el contenido que se está indexando. Los valores que se propagarán para los campos de datos estructurados y metadatos se pueden extraer de las metaetiquetas en el contenido HTML que se están indexando o se pueden especificar valores predeterminados en el archivo de configuración.

Parámetro de configuración Parámetro
Título itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=Gone with the Wind
De forma predeterminada, el complemento usa HTML title como título del documento que se indexa. En el caso de que falte un título, puedes consultar el atributo de metadatos que contiene el valor correspondiente al título del documento o configurar un valor predeterminado
Marca de tiempo de creación itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
El atributo de metadatos que contiene el valor de la marca de tiempo de creación del documento.
Hora de última modificación itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
El atributo de metadatos que contiene el valor de la marca de tiempo de la última modificación del documento.
Idioma del documento itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
El idioma del contenido de los documentos que se indexan.
Tipo de objeto de esquema itemMetadata.objectType=movie
El tipo de objeto que usa el sitio, como se define en las definiciones del objeto del esquema de la fuente de datos. El conector no indexará ningún dato estructurado si no se especifica esta propiedad.

Nota: Esta propiedad de la configuración hace referencia a un valor y no a un atributo de metadatos, y no se admiten los sufijos .field ni .defaultValue.

Formatos de fecha y hora

Los formatos de fecha y hora especifican los formatos esperados en los atributos de metadatos. Si el archivo de configuración no contiene este parámetro, se usan los valores predeterminados. La siguiente tabla muestra este parámetro.

Parámetro de configuración

Parámetro

Patrones de fecha y hora adicionales

structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX

Una lista de patrones java.time.format.DateTimeFormatter adicionales separados por punto y coma. Los patrones se usan cuando se analizan valores de string para cualquier fecha o campos de fecha y hora en los metadatos o en el esquema. El valor predeterminado es una lista vacía, pero los formatos RFC 3339 y RFC 1123 siempre son compatibles.

Paso 3: Configura el colector HTTP de Norconex

El archivo ZIP norconex-committer-google-cloud-search-{version}.zipincluye un archivo de configuración de muestra, minimum-config.xml.

Google recomienda que comiences la configuración mediante el copiado del archivo de muestra:

  1. Cambia al directorio del colector HTTP de Norconex:
    $ cd ~/norconex/norconex-collector-http-{version}/
  2. Copia el archivo de configuración:
    $ cp examples/minimum/minimum-config.xml gcs-crawl-config.xml
  3. Edita el archivo recién creado (en este ejemplo, gcs-crawl-config.xml) y agrega o reemplaza los nodos existentes <committer> y <tagger> como se describe en la siguiente tabla.
Parámetro de configuración Parámetro
<committer> node <committer class="com.norconex.committer.googlecloudsearch. GoogleCloudSearchCommitter">

Obligatorio. Para habilitar el complemento, debes agregar un nodo <committer> como elemento secundario del nodo raíz <httpcollector>.
<UploadFormat> <uploadFormat>raw</uploadFormat>
Opcional. El formato en el que el complemento indexador envía contenido de documentos a la API del indexador de Google Cloud Search. Los valores válidos son los siguientes:
  • raw: El complemento indexador envía contenido original de documentos sin convertir.
  • text: El complemento indexador envía contenido textual extraído.

El valor predeterminado es raw.
BinaryContent Tagger <tagger> node <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
Obligatorio si el valor de <UploadFormat> es raw. En este caso, el complemento indexador necesita el campo de contenido binario del documento para estar disponible.

Debes agregar el nodo BinaryContentTagger <tagger> como elemento secundario del nodo <importer> / <preParseHandlers>.

En el siguiente ejemplo, se muestra la modificación necesaria para gcs-crawl-config.xml.

<committer class="com.norconex.committer.googlecloudsearch.GoogleCloudSearchCommitter">
    <configFilePath>/full/path/to/gcs-sdk-config.properties</configFilePath>
    
    <uploadFormat>raw</uploadFormat>
</committer>
<importer>
  <preParseHandlers>
    <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
  </preParseHandlers>
</importer>

Paso 4: Configura el rastreo web

Antes de iniciar un rastreo web, debes configurar el rastreo para que solo incluya la información que tu organización quiere que esté disponible en los resultados de la búsqueda. La configuración más importante para el rastreo web forma parte de los nodos <crawler> y puede incluir lo siguiente:

  • URL de inicio
  • Profundidad máxima del rastreo
  • Cantidad de subprocesos

Cambia estos valores de configuración según tus necesidades. Para obtener información más detallada acerca de cómo configurar un rastreo web, así como una lista completa de los parámetros de configuración disponibles, consulta la página Configuración del Colector HTTP.

Paso 5: Inicia un rastreo web y la carga de contenido

Una vez que instalaste y configuraste el complemento indexador, puedes ejecutarlo en su propio modo local.

En el siguiente ejemplo, se da por sentado que los componentes obligatorios están ubicados en el directorio local en un sistema Linux. Ejecuta el siguiente comando:

$ ./collector-http[.bat|.sh] -a start -c gcs-crawl-config.xml

Supervisa el rastreador con JEF Monitor

JEF (Job Execution Framework) Monitor de Norconex es una herramienta gráfica para supervisar el progreso de los trabajos y procesos del Rastreador web de Norconex (Colector HTTP). Para consultar un instructivo completo sobre cómo configurar esta utilidad, visita Supervisa el progreso de tu rastreador con JEF Monitor.