Las localizaciones privadas Synthetic incluyen un conjunto de opciones que puedes configurar para que cumplan los requisitos de tu entorno. Si ejecutas el comando help, encontrarás todas las opciones del worker de localización privada:
A continuación se enumeran los parámetros disponibles.
Estas opciones de configuración para localizaciones privadas se pueden pasar como parámetros a la configuración de tu archivo JSON o como argumentos en el comando de lanzamiento, por ejemplo:
Los argumentos definidos en el comando de lanzamiento tienen prioridad sobre el archivo de configuración. Sin embargo, estas opciones no se almacenan y, en consecuencia, solo son aplicables a un lanzamiento determinado.
Tipo: Cadena Por defecto: datadoghq.com El sitio Datadog desde el que la localización privada extrae la configuración del test y envía los resultados del mismo. Tu site es datadoghq.com.
Puedes utilizar los siguientes parámetros para personalizar la resolución DNS en tus tests de API:
dnsUseHost
Tipo: Booleano Por defecto: true Utiliza primero la configuración de DNS local del host (por ejemplo, la configuración de tu archivo etc/resolv.conf``), y después los servidores DNS especificados en el parámetro dnsServer`.
dnsServer
Tipo: Matriz de cadenas Por defecto: ["8.8.8.8","1.1.1.1"] IP de servidores DNS que se deben utilizar en el orden indicado (por ejemplo, --dnsServer="8.8.4.4" --dnsServer="8.8.8.8").
En los tests de navegador, la resolución DNS la realiza directamente el navegador, que normalmente lee los servidores DNS del host. Como alternativa, puedes configurarlo a nivel de contenedor (por ejemplo, utilizando el indicador --dns en Docker o dnsConfig.nameservers en Kubernetes).
Los siguientes parámetros pueden utilizarse para configurar un proxy para conectarse a Datadog:
proxyDatadog
Tipo: Cadena Por defecto: none URL de proxy utilizada por la localización privada para enviar solicitudes a Datadog (por ejemplo, --proxyDatadog=http://<YOUR_USER>:<YOUR_PWD>@<YOUR_IP>:<YOUR_PORT>).
proxyIgnoreSSLErrors
Tipo: Booleano Por defecto: false Descarta errores SSL cuando una localización privada está utilizando un proxy para enviar solicitudes a Datadog.
proxyEnableConnectTunnel
Tipo: Booleano Por defecto: none Habilita la tunelización HTTP CONNECT para proxies HTTP. Si esta opción no está configurada, la tunelización HTTP CONNECT sólo se utiliza para proxies HTTPS.
Nota: Las proxies de envío HTTP como Squid pueden requerir la solicitud HTTP CONNECT para establecer la conexión TCP inicial entre la localización privada y Datadog. Por lo tanto, el parámetro proxyEnableConnectTunnel debe configurarse como true. Sin embargo, las proxies inversas como HAProxy que dirigen una solicitud HTTP CONNECT a Datadog pueden no funcionar con esta opción habilitada.
Nota: El parámetro proxy está obsoleto y debe sustituirse por proxyDatadog.
Los siguientes parámetros se pueden utilizar para configurar un proxy predeterminado para utilizarlo en los tests de monitorización Synthetic:
proxyTestRequests
Tipo: Cadena Por defecto: none URL de proxy utilizada por la localización privada para enviar solicitudes de test al endpoint. Los archivos PAC son compatibles con la siguiente sintaxis: pac+https://... o pac+http://....
Tipo: Cadena Por defecto: none Clave de acceso para la autenticación de la API Datadog.
--secretAccessKey
Tipo: Cadena Por defecto: none Clave de acceso secreta para la autenticación de la API Datadog.
--datadogApiKey
Tipo: Cadena Por defecto: none Clave de la API Datadog para enviar artefactos de tests de navegador (como capturas de pantalla).
--privateKey
Tipo: Matriz Por defecto: none Clave privada utilizada para descifrar configuraciones de test.
--publicKey
Tipo: Matriz Por defecto: none Clave pública utilizada por Datadog para cifrar los resultados de tests. Compuesta por --publicKey.pem.
--site
Tipo: Cadena Por defecto: datadoghq.com Sitio Datadog desde el que la localización privada extrae la configuración del test y envía los resultados del test. Tu sitio es datadoghq.com.
--concurrency
Tipo: Número Por defecto: 10 Número máximo de tests ejecutados en paralelo.
--maxNumberMessagesToFetch
Tipo: Número Por defecto: 10 Número máximo de tests recuperados de Datadog.
--proxyDatadog
Tipo: Cadena Por defecto: none URL de proxy utilizada por la localización privada para enviar solicitudes a Datadog (por ejemplo, --proxyDatadog=http://<YOUR_USER>:<YOUR_PWD>@<YOUR_IP>:<YOUR_PORT>).
--disableFipsCompliance
Tipo: Booleano Por defecto: false Deshabilita la conformidad FIPS para una localización privada que utiliza ddog-gov.com.
Por defecto, las localizaciones privadas que informan a ddog-gov.com se comunican con Datadog utilizando el cifrado conforme a FIPS. La comunicación cumple con el uso de FIPS 140-2 validado Módulo criptográfico - Certificado #4282. Esta opción es necesaria si estás utilizando una localización Windows privada que informa a ddog-gov.com.
--dumpConfig
Tipo: Booleano Por defecto: none Muestra los parámetros de configuración del worker sin secretos.
--enableStatusProbes
Tipo: Booleano Habilita la disponibilidad y la preparación de las sondas de localizaciones privadas. Esto habilita dos endpoints: http://127.0.0.1:8080/liveness y http://127.0.0.1:8080/readiness.
--statusProbesPort
Tipo: Número Por defecto: 8080 Anula el puerto para las sondas de estado de localizaciones privadas.
--config
Tipo: Cadena Por defecto: /etc/datadog/synthetics-check-runner.json Windows: C:\ProgramData\Datadog-Synthetics\worker-config.json Ruta de acceso al archivo de configuración JSON.
--proxyTestRequests
Tipo: Cadena Por defecto: none URL de proxy utilizada por la localización privada para enviar solicitudes de test al endpoint. Los archivos PAC son compatibles con la siguiente sintaxis: pac+https://... o pac+http://....
--proxyIgnoreSSLErrors
Tipo: Booleano Por defecto: false Descarta errores SSL cuando una localización privada está utilizando un proxy para enviar solicitudes a Datadog.
--dnsUseHost
Tipo: Booleano Por defecto: true Primero utiliza la configuración DNS local del host (por ejemplo, la configuración de tu archivo etc/resolv.conf) y luego los servidores DNS especificados en el parámetro dnsServer.
--dnsServer
Tipo: Matriz de cadenas Por defecto: ["8.8.8.8","1.1.1.1"] IP de servidores DNS a utilizar en el orden dado (por ejemplo, --dnsServer="8.8.4.4" --dnsServer="8.8.8.8").
--variableOverride
Tipo: Cadena Anula las variables utilizadas en los tests que se ejecutan en la localización privada. Formato: VARIABLE=value.
Todas las variables importadas de esta forma están ofuscadas.
--environmentVariableOverride
Tipo: Cadena Anula las variables utilizadas en los tests que se ejecutan en la localización privada con variables de entorno.
Requiere que las variables de entorno sean importadas en el entorno contenedorizado.
Con Docker, por ejemplo, docker run --env VARIABLE gcr.io/datadoghq/synthetics-private-location-worker --environmentVariableOverride VARIABLE.
Todas las variables importadas de esta manera están ofuscadas.
--allowedIPRanges
Tipo: Matriz de cadenas Por defecto: none Concede acceso a IP o CIDR específicos entre los rangos de IP bloqueados a través de --enableDefaultBlockedIpRanges o blockedIPRanges (por ejemplo, "allowedIPRanges.4": "10.0.0.0/8"). Nota:allowedIPRanges tiene prioridad sobre blockedIPRanges.
--blockedIPRanges
Tipo: Matriz de cadenas Por defecto: none Bloquea el acceso a IP o CIDR específicos, además o no de los rangos de IP bloqueados al configurar el parámetro --enableDefaultBlockedIpRanges como true (por ejemplo, --blockedIPRanges.4="127.0.0.0/8" --blockedIPRanges.6="::1/128").
--enableDefaultBlockedIpRanges
Tipo: Booleano Por defecto: false Evita que los usuarios creen tests Synthetic en endpoints que están utilizando rangos de IP reservados (Registro de Direcciones de Propósito Especial de IANA IPv4 e IPv6), excepto aquellos explícitamente definidos con el parámetro --allowedIPRanges.
--nombresDominioPermitidos
Tipo: Matriz Por defecto: none Concede acceso a los nombres de dominio en tests. Tiene prioridad sobre –blockedDomainNames, por ejemplo: --allowedDomainNames="*.example.com".
--blockedDomainNames
Tipo: Matriz Por defecto: none Deniega el acceso a nombres de dominio en tests, por ejemplo: --blockedDomainNames="ejemplo.org" --blockedDomainNames="*.com".
--habilitarIPv6
Tipo: Booleano Por defecto: false Utiliza IPv6 para realizar tests. Nota: IPv6 en Docker sólo es compatible con un host Linux.
--version
Tipo: Booleano Por defecto: none Muestra el número de versión del worker.
--logFormat
Tipo: Cadena Por defecto: pretty Da un formato al resultado del log entre "compact", "pretty", "pretty-compact" y "json". Definir el formato del log como json permite que estos logs sean analizados automáticamente cuando son recopilados por Datadog.
--verbosidad
Tipo: Número Por defecto: 3 Nivel de verbosidad desde 1 (sólo errores) hasta 4 (logs de depuración y superiores). La configuración de la verbosidad desde la línea de comandos se realiza con los argumentos -v, , -vvvv y -vvvv.
Nivel de verbosidad
Argumento CLI
Opción de configuración JSON
DEPURACIÓN
-vvvv
"verbosity": 4
INFORMACIÓN (por defecto)
-vvv
"verbosity": 3
ADVERTENCIA
-vv
"verbosity": 2
ERROR
-v
"verbosity": 1
--help
Tipo: Booleano Por defecto: none Muestra el resultado del comando de ayuda.
Las opciones de comandos también pueden definirse utilizando variables de entorno como DATADOG_API_KEY="...", DATADOG_WORKER_CONCURRENCY="15", DATADOG_DNS_USE_HOST="true". Para las opciones que aceptan múltiples argumentos, utiliza la notación de la matriz de cadenas JSON (DATADOG_TESTS_DNS_SERVER='["8.8.8.8", "1.1.1.1"]').