Cada conector tiene un archivo de configuración asociado que contiene los parámetros utilizados por el conector,
  como el ID de tu repositorio. Los parámetros se definen como pares clave-valor, como el siguiente:
  api.sourceId=1234567890abcdef
El SDK de Google Cloud Search contiene varias herramientas de configuración proporcionadas por Google parámetros usados por diferentes conectores. De los parámetros de configuración que proporciona Google, Solo se requieren los parámetros de Acceso a la fuente de datos en tu de Terraform. No es necesario volver a definir los parámetros proporcionados por Google en en el archivo de configuración, a menos que quieras anular sus valores predeterminados.
En esta referencia, se describen los parámetros de configuración que proporciona Google.
Ejemplo de archivo de configuración
En el siguiente ejemplo, se muestra un archivo de configuración de identidad con pares clave-valor de parámetros.
# # Configuration file sample # api.sourceId=1234567890abcdef api.identitySourceId=0987654321lmnopq api.serviceAccountPrivateKeyFile= ./PrivateKey.json # # Traversal schedules # schedule.traversalIntervalSecs=7200 schedule.incrementalTraversalIntervalSecs=600 # # Default ACLs # defaultAcl.mode=fallback defaultAcl.public=true
Parámetros que se suelen establecer
En esta sección, se enumeran los parámetros de configuración obligatorios y opcionales que se suelen establecer. Si no cambiar valores para los parámetros opcionales, el conector utiliza los valores predeterminados que proporciona el SDK.
Acceso a la fuente de datos
En la siguiente tabla, se enumeran todos los parámetros necesarios para aparecer en una configuración . Los parámetros que utilice dependerán del tipo de conector que compile (conector de contenido) o conector de identidad).
| Configuración | Parámetro | 
|---|---|
| ID de la fuente de datos | api.sourceId=1234567890abcdefUn conector requiere este parámetro para identificar el de tu repositorio. Obtendrás este valor cuando agregaste una fuente de datos a la búsqueda. Este parámetro debe estar en los archivos de configuración del conector. | 
| ID de la fuente de identidad | api.identitySourceId=0987654321lmnopqLos conectores de identidad requieren este parámetro para identificar la ubicación de una fuente de identidad externa. Obtuviste este valor cuando asignar identidades de usuario en Cloud Search Este parámetro debe estar en todos los archivos de configuración del conector de identidad. | 
| Archivo de claves privadas de la cuenta de servicio | api.serviceAccountPrivateKeyFile=./PrivateKey.jsonEste parámetro contiene la clave privada necesaria para acceder al repositorio. Obtuviste este valor cuando configuró el acceso al REST de Google Cloud Search API Este parámetro debe estar en todos los archivos de configuración. | 
| ID de cuenta de servicio | api.serviceAccountId=123abcdef4567890Este parámetro especifica la cuenta de servicio ID. El valor predeterminado de cadena vacía solo se permite cuando el archivo de configuración especifica un parámetro del archivo de claves privadas. Este parámetro es obligatorio si tu archivo de claves privadas no es una clave JSON. | 
| ID de la cuenta de Google Workspace | api.customerId=123abcdef4567890Este parámetro especifica el ID de la cuenta de Google Workspace de la empresa. Obtuviste este valor cuando asignas usuarios identidades en Cloud Search. Este parámetro es obligatorio cuando se sincronizan usuarios con un de identidad. | 
| URL raíz | api.rootUrl=baseURLPathEste parámetro especifica la ruta de URL base del servicio de indexación.  El valor predeterminado para este parámetro es una cadena vacía que se convierte en
        | 
Programaciones de recorrido
Los parámetros de programación determinan la frecuencia con la que el conector espera entre recorridos.
| Configuración | Parámetro | 
|---|---|
| Recorrido completo al inicio del conector | schedule.performTraversalOnStart=true|false El conector realiza un recorrido completo en el inicio del conector, en lugar de hacerlo
        a que caduque el primer intervalo. El valor predeterminado es  | 
| Recorrido completo luego del intervalo | schedule.traversalIntervalSecs=intervalInSeconds El conector realiza un recorrido completo después de un intervalo especificado. Especifica el
        un intervalo entre recorridos en segundos. El valor predeterminado es  | 
| Salir después de un único recorrido | connector.runOnce=true|false El conector ejecuta un recorrido completo una vez y, luego, sale. Este parámetro solo debe
        Establécelo en  | 
| Recorrido incremental después de un intervalo | schedule.incrementalTraversalIntervalSecs=intervalInSeconds El conector realiza un recorrido incremental después de un intervalo especificado.
        Especifica el intervalo entre recorridos en segundos. El valor predeterminado es
         | 
| Intervalos de la cola de sondeos programados | schedule.pollQueueIntervalSecs=interval_in_seconds El intervalo entre los intervalos programados de la cola de sondeo (en segundos). Se usa
        solo con un conector
de recorrido de lista. El valor predeterminado es  | 
Listas de control de acceso
El conector controla el acceso a los elementos mediante el uso de las LCA. Varios parámetros te permiten proteger el acceso de los usuarios a los registros indexados con LCA.
Si tu repositorio tiene información individual de LCA asociada con cada elemento, Subir toda la información de LCA para controlar el acceso a los elementos dentro de Cloud Search Si en tu repositorio proporciona información parcial o nula de las LCA, puedes indicar Información de LCA en los siguientes parámetros, que el SDK proporciona al o del conector.
| Configuración | Parámetro | 
|---|---|
| Modo de LCA | defaultAcl.mode=modeDetermina cuándo aplicar la LCA predeterminada. Valores válidos: 
 El modo predeterminado es  | 
| LCA pública predeterminada | defaultAcl.public=true|false La LCA predeterminada utilizada para todo el repositorio se establece en el acceso de dominio público.
        El valor predeterminado es  | 
| Lectores comunes del grupo de LCA | defaultAcl.readers.groups=google:group1@mydomain.com,
       group2 | 
| Lectores comunes de LCA | defaultAcl.readers.users=user1, user2,
    google:user3@mydomain.com | 
| Lectores comunes del grupo de LCA denegadas | defaultAcl.denied.groups=group3 | 
| Lectores comunes de LCA denegadas | defaultAcl.denied.users=user4, user5 | 
| Acceso de dominio completo | Especificar que todos los registros indexados deben ser de acceso público para todos los usuarios
      en el dominio, configura los siguientes parámetros con valores: 
 | 
| LCA común definida | Para especificar una LCA para cada registro del repositorio de datos, configura todos los
      los siguientes valores de parámetros: 
 | 
Parámetros de configuración de metadatos
Algunos de los metadatos del elemento se pueden configurar. Los conectores pueden establecer campos de metadatos configurables durante la indexación de datos. Si el conector no establece un campo, se usarán los parámetros del archivo de configuración para configurar el campo.
El archivo de configuración tiene una serie de parámetros de configuración de metadatos con nombre que indica
un sufijo .field, como
itemMetadata.title.field=movieTitle Si existe un valor para estas
se usa para configurar el campo de metadatos. Si no hay un valor para el
de metadatos con nombre, estos se configuran mediante un parámetro con el
  .defaultValue).
En la siguiente tabla, se muestran los parámetros de configuración de metadatos.
| Parámetro de configuración | Parámetro | 
| Título | itemMetadata.title.field=movieTitleitemMetadata.title.defaultValue=Es el título del artículo. Si title.fieldno está establecido en un valor, el valor detitle.defaultValueestá en uso. | 
| URL del repositorio de código fuente | itemMetadata.sourceRepositoryUrl.field=urlitemMetadata.sourceRepositoryUrl.defaultValue=https://www.imdb.com/title/tt0031381/La URL del elemento que se usa en los resultados de la búsqueda. Podrías configurar defaultValuepara que contenga un
     URL de todo el repositorio, por ejemplo, si tu representante es un archivo CSV y solo hay uno
  URL de cada elemento. Si no se establecesourceRepositoryUrl.fielda un valor, se usa el valor desourceRepositoryUrl.defaultValue. | 
| Nombre del contenedor | itemMetadata.containerName.field=containerNameitemMetadata.containerName.defaultValue=myDefaultContainerNameEs el nombre del contenedor del elemento, como el nombre de una carpeta o directorio del sistema de archivos. Si containerName.fieldno está establecido en un valor, el valor paracontainerName.defaultValueestá en uso. | 
| Tipo de objeto | itemMetadata.objectType.field=typeitemMetadata.objectType.defaultValue=El tipo de objeto utilizado por el conector, como se define en el esquema. El conector no indexará ningún dato estructurado si no se especifica esta propiedad. Si objectType.fieldno está establecido en un valor, el valor deobjectType.defaultValueestá en uso. | 
| Fecha de creación | itemMetadata.createTime.field=releaseDateitemMetadata.createTime.defaultValue=1940-01-17La marca de tiempo de creación del documento. Si createTime.fieldno está establecido en un valor,
     se usa el valor decreateTime.defaultValue. | 
| Fecha de actualización | itemMetadata.updateTime.field=releaseDateitemMetadata.updateTime.defaultValue=1940-01-17Es la marca de tiempo de la última modificación del elemento. Si la opción updateTime.fieldno está configurada en
     un valor, se usa el valor deupdateTime.defaultValue. | 
| Idioma del contenido | itemMetadata.contentLanguage.field=languageCodeitemMetadata.contentLanguage.defaultValue=El idioma del contenido de los documentos que se indexan. Si el elemento contentLanguage.fieldno se establece en un valor, se usa el valor decontentLanguage.defaultValue. | 
| Tipo de MIME | itemMetadata.mimeType.field=mimeTypeitemMetadata.mimeType.defaultValue=El tipo MIME original de ItemContent.content en el repositorio de código fuente. La longitud máxima es de 256 caracteres. Si mimeType.fieldno está establecido en un valor, el valor demimeType.defaultValueestá en uso. | 
| Metadatos de calidad de búsqueda | itemMetadata.searchQualityMetadata.quality.field=qualityitemMetadata.searchQualityMetadata.quality.defaultValue=Una indicación de la calidad del elemento, que se utiliza para influir en la calidad de la búsqueda. El valor debe ser entre 0.0 (calidad más baja) y 1.0 (calidad más alta). El valor predeterminado es 0.0. Si el botón quality.fieldno está establecido en un valor, el valor paraquality.defaultValueestá en uso. | 
| Hash | itemMetadata.hash.field=hashitemMetadata.hash.defaultValue=f0fda58630310a6dd91a7d8f0a4ceda2Valor de hash proporcionado por el llamador de la API. Esto se puede usar con el items.pushpara calcular el estado modificado. La longitud máxima es 2,048
     caracteres. Sihash.fieldno está establecido en un valor, el valor dehash.defaultValueestá en uso. | 
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 | 
| Formatos de fecha y hora adicionales | structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXXUna lista de java.time.format.DateTimeFormatteradicionales separados por punto y coma
      o patrones. Los patrones se usan cuando se analizan valores de cadena para cualquier fecha o campos de fecha y hora
      en los metadatos o el esquema. El valor predeterminado es una lista vacía, pero RFC 3339 y RFC 1123
      formatos siempre son compatibles. | 
Datos estructurados
La API de Cloud Search Indexing proporciona un servicio de esquema que puedes usar para lo siguiente: personalizar la forma en que Cloud Search indexa y entrega tus datos. Si utilizas un esquema de repositorio local, debes especificar los datos estructurados locales nombre del esquema.
| Configuración | Parámetro | 
|---|---|
| Nombre del esquema local | structuredData.localSchema=mySchemaNameEl nombre del esquema se lee desde la fuente de datos y se usa para el repositorio datos estructurados. El valor predeterminado es una string vacía. | 
Calidad del contenido y de la búsqueda
Para los repositorios que contienen registros o contenido basado en campos (como un CRM, CVS, o base de datos), el SDK permite el formato HTML automático para los campos de datos. Tu El conector define los campos de datos al comienzo de la ejecución del conector y luego, utiliza una plantilla de contenido para dar formato a cada registro de datos antes de subirlo a Cloud Search.
 La plantilla de contenido define la importancia de cada valor de campo para la búsqueda.
  El <title> de HTML
  es obligatorio y se define como la prioridad más alta. Puedes
  designa los niveles de importancia de calidad de búsqueda para todos los demás campos de contenido:
  alta, media o baja. Cualquier campo de contenido no definido en una categoría específica
  su prioridad predeterminada es baja. 
| Configuración | Parámetro | 
|---|---|
| Título HTML del contenido | contentTemplate.templateName.title=myTitleFieldEl título HTML del contenido y el campo de mayor calidad de búsqueda. Este parámetro es obligatorio solo si usas una plantilla de contenido HTML. El valor predeterminado es un campo una cadena vacía. | 
| Alta calidad de búsqueda para los campos de contenido | contentTemplate.templateName.quality.high=hField1,hField2Campos de contenido con una prioridad de búsqueda alta. El valor predeterminado es una string vacía. | 
| Calidad media de búsqueda para los campos de contenido | contentTemplate.templateName.quality.medium=mField1,mField2Campos de contenido con una prioridad de búsqueda media. El valor predeterminado es una string vacía. | 
| Baja calidad de búsqueda para los campos de contenido | contentTemplate.templateName.quality.low=lField1,lField2Campos de contenido con una prioridad de búsqueda baja. El valor predeterminado es una string vacía. | 
| Campos de contenido sin especificar | contentTemplate.templateName.unmappedColumnsMode=valueCómo maneja el conector los campos de contenido no especificados. Estos son los valores válidos: 
 | 
| Incluir nombres de campo en la plantilla HTML | contentTemplate.templateName.includeFieldName=true|false Especifica si se deben incluir los nombres de los campos junto con los datos de los campos en el HTML
        plantilla. El valor predeterminado es  | 
Parámetros establecidos de manera poco frecuente
Rara vez necesitarás configurar los parámetros que se indican en esta sección. Los valores predeterminados de los parámetros son para obtener un rendimiento óptimo. Google recomienda no establecer estos parámetros para lo siguiente: valores distintos de sus valores predeterminados sin requisitos específicos en tu en un repositorio de confianza.
Configuración de proxy
El SDK te permite configurar el conector de modo que use un proxy para las conexiones salientes.
Los parámetros transport.proxy.hostname y transport.proxy.port son
  necesarias para habilitar el transporte a través de un proxy. Es posible que otros parámetros sean obligatorios
  si su proxy requiere autenticación o opera a través del protocolo SOCKS en lugar de HTTP. Si
    Si no se configura transport.proxy.hostname, el SDK no usará un proxy.
| Configuración | Parámetro | 
|---|---|
| Nombre de host | transport.proxy.hostname=hostnameEl nombre de host del servidor proxy. Este parámetro es obligatorio cuando se usa un proxy. | 
| Puerto | transport.proxy.port=portEl número de puerto del servidor proxy. Este parámetro es obligatorio cuando se usa un proxy. | 
| Tipo de proxy | transport.proxy.type=typeEl tipo de proxy. Estos son los valores válidos: 
  El valor predeterminado es  | 
| Nombre de usuario | transport.proxy.username=usernameEl nombre de usuario que se usará para construir un token de autorización de proxy. Este parámetro es opcional y solo se debe configurar si tu proxy requiere autenticación. | 
| Contraseña | transport.proxy.password=passwordLa contraseña que se usará para construir un token de autorización de proxy. Este parámetro es opcional y solo se debe configurar si tu proxy requiere autenticación. | 
Desviadores
El SDK te permite especificar varios desviadores individuales para permitir de un repositorio de datos. Los conectores de plantillas del SDK usan .
| Configuración | Parámetro | 
|---|---|
| Tamaño del conjunto de subprocesos | traverse.threadPoolSize=sizeCantidad de subprocesos que crea el conector para permitir el procesamiento en paralelo. R iterador único recupera operaciones en serie (por lo general, objetos RepositoryDoc) pero las llamadas a la API se procesan en paralelo con esta cantidad de subprocesos.  El valor predeterminado es  | 
| Tamaño de partición | traverse.partitionSize=batchSize Cantidad de   El valor predeterminado es  | 
Solicitudes de sondeo de desviador
El núcleo de la cola de indexación de Cloud Search es una cola de prioridad que contiene un entrada para cada elemento que se sabe que existe. Un conector de fichas puede solicitar el sondeo elementos de la API de indexación. Una solicitud de sondeo obtiene las entradas de mayor prioridad. de la cola de indexación.
La plantilla del conector de enumeración del SDK usa los siguientes parámetros para lo siguiente: definir los parámetros de sondeo.
| Configuración | Parámetro | 
|---|---|
| Desviador de repositorio | repository.traversers=t1, t2, t3, ...Crea uno o más desviadores individuales en los que t1, t2, t3,
        ... es el nombre único de cada una. Cada desviador con nombre tiene su propio conjunto de parámetros de configuración
        que se identifican con el nombre único del desviador, como
         | 
| Fila que se sondeará | traverser.pollRequest.queue=mySpecialQueueNombres de cola que este desviador sondea. El valor predeterminado es una cadena vacía (implica “predeterminado”). | 
| traverser.t1.pollRequest.queue=mySpecialQueueCuando tienes varios desviadores, establece los estados de los elementos para cada uno (donde t1, representa un desviador específico). | |
| Comportamiento de sondeo | traverser.pollRequest.limit=maxItems Cantidad máxima de elementos que se pueden mostrar a partir de una solicitud de sondeo.
      El valor predeterminado es  | 
| traverser.t1.pollRequest.limit=limitCuando tienes varios desviadores, establece los estados de los elementos para cada uno (donde t1, representa un desviador específico). | |
| Estado del elemento | traverser.pollRequest.statuses=statusesLos estados del elemento específico que sondea este desviador, en los que statuses puede ser
        cualquier combinación de  | 
| traverser.t1.pollRequest.statuses=statusesForThisTraverserCuando tienes varios desviadores, establece los estados del elemento para cada desviador (donde t1, representa un desviador específico). | |
| Carga del host | traverser.hostload=threads Cantidad máxima de subprocesos paralelos activos disponibles para el sondeo. Predeterminado
        el valor es  | 
| traverser.t1.hostload=threadsForThisTraverserCuando tienes varios desviadores, establece los estados del elemento para cada desviador (donde t1, representa un desviador específico). | |
| Tiempo de espera | traverser.timeout=timeoutValor de tiempo de espera para interrumpir este intento de sondeo de desviador.  El valor predeterminado es  | 
| traverser.t1.timeout=timeoutForThisTraverserCuando tienes varios desviadores, establece los estados del elemento para cada desviador (donde t1, representa un desviador específico). | |
| traverser.timeunit= timeoutUunit Las unidades de tiempo de espera. Los valores válidos son  | |
| traverser.t1.timeunit= timeoutUnitCuando tienes varios desviadores, establece los estados del elemento para cada desviador (donde t1, representa un desviador específico). | 
En la mayoría de los casos, un conector que usa solo la plantilla de conectores de la lista de SDK requiere un solo conjunto de parámetros para el sondeo. En algunos casos, es posible que debas definir más de un criterio de sondeo si tu algoritmo de recorrido requiere separar el procesamiento de elementos con diferentes colas, por ejemplo.
 En este caso, tienes la opción de definir varios conjuntos de sondeos
  parámetros. Comienza especificando los nombres de los conjuntos de parámetros con
  repository.traversers Para cada nombre de desviador definido, proporciona el valor
  de configuración de Terraform con los parámetros de la tabla anterior, en lugar de
  t1 por el nombre de desviador Esto crea un conjunto de sondeos
  parámetros para cada desviador definido. 
Puntos de control
Un punto de control es útil para rastrear el estado de un recorrido incremental.
| Configuración | Parámetro | 
|---|---|
| Directorio de puntos de control | connector.checkpointDirectory=/path/to/checkpointEspecifica la ruta de acceso al directorio local que se usará para los puntos de control de recorrido incremental y completo. | 
Cargas de contenido
El contenido del elemento se sube a Cloud Search con el elemento cuando el tamaño del contenido no supera el umbral especificado. Si el tamaño del contenido supera el límite, el contenido se sube por separado del metadatos y datos estructurados.
| Configuración | Parámetro | 
|---|---|
| Umbral de contenido | api.contentUploadThresholdBytes=bytesEl umbral para el contenido que determina si se sube “en línea” con en lugar de usar una carga independiente.  El valor predeterminado es  | 
Contenedores
La plantilla de conector completa usa un algoritmo que implica el concepto de una Botón de activación de cola de fuente de datos temporal para detectar registros borrados en la base de datos. Esto significa que, en cada recorrido completo, los registros recuperados, que se encuentran nueva cola, reemplaza todos los registros existentes de Cloud Search indexados en una cola anterior.
| Configuración | Parámetro | 
|---|---|
| Etiqueta de nombre del contenedor | traverse.queueTag=instancePara ejecutar varias instancias del conector en paralelo a fin de indexar un dato común en un repositorio común (ya sea en diferentes repositorios de datos o en partes separadas de una repositorio de datos) sin interferir entre sí, asigna un contenedor único etiqueta de identificación a cada ejecución del conector. Una etiqueta de identificación única impide que un conector para que una instancia no borre los registros de otro. La etiqueta de identificación se agrega al ID de la cola de activación o desactivación del conector de recorrido completo. | 
| Inhabilitar la detección de eliminaciones | traverse.useQueues=true|falseIndica si el conector usa la lógica de activación de la cola para la detección de eliminaciones.  El valor predeterminado es  Nota: Este parámetro de configuración solo se aplica a los conectores
        implementando la plantilla  | 
Política de lotes
El SDK admite una política de lotes que te permite realizar lo siguiente: acciones:
- Utiliza solicitudes por lotes
- Especifica la cantidad de solicitudes en una cola por lotes
- Administra lotes en ejecución simultánea
- Limpiar solicitudes por lotes
El SDK agrupa en lotes las solicitudes del conector para acelerar la capacidad de procesamiento durante cargas. El activador del SDK para subir un lote de solicitudes es mediante la cantidad de solicitudes o el tiempo de espera, lo que ocurra primero. Por ejemplo, si el el tiempo de retraso del lote venció sin que se alcanzara el tamaño del lote o si Se alcanza el tamaño del lote de elementos antes de que venza el tiempo de retraso, luego se activa la carga por lotes.
| Configuración | Parámetro | 
|---|---|
| Utiliza solicitudes por lotes | batch.batchSizeAgrupa las solicitudes en lotes. El valor predeterminado es  | 
| Cantidad de solicitudes en una cola por lotes | batch.maxQueueLength=maxQueueLength Cantidad máxima de solicitudes en una cola por lotes para la ejecución.
      El valor predeterminado es  | 
| Ejecución simultánea de lotes | batch.maxActiveBatches=maxActiveBatches Cantidad de lotes de ejecución simultánea permitidos.
      El valor predeterminado es  | 
| Limpiar solicitudes por lotes automáticamente | batch.maxBatchDelaySeconds=maxBatchDelay Cantidad de segundos que se debe esperar antes de que se completen las solicitudes por lotes
        se vaciado automáticamente. El
        el valor predeterminado es  | 
| Vaciar solicitudes por lotes durante el cierre | batch.flushOnShutdown=true|false Vacía las solicitudes por lotes durante el cierre del servicio.
      El valor predeterminado es  | 
Controladores de excepciones
Los parámetros de los controladores de excepciones determinan el avance del desviador después de él. encuentra una excepción.
| Configuración | Parámetro | 
|---|---|
| Instrucción del desviador en caso de error | traverse.exceptionHandler=exceptionsCómo debe proceder el desviador después de que se produce una excepción. Valores válidos son: 
 | 
| Tiempo de espera entre excepciones | abortExceptionHander.backoffMilliSeconds=backoff Tiempo de retirada en milisegundos para esperar entre las excepciones del controlador detectadas
        (por lo general, se usa cuando se recorre un repositorio). El valor predeterminado es  |