• /
  • EnglishEspañolFrançais日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Configuração do gerenciador de tarefas Sintético

Este documento irá guiá-lo na configuração do seu gerenciador de tarefas Sintético , mostrando como:

Configuração usando variáveis de ambiente

As variáveis ambientais permitem ajustar a configuração do gerenciador de tarefas Sintético para atender às suas necessidades ambientais e funcionais específicas.

Variáveis definidas pelo usuário para monitor com script

Os gerenciadores de tarefas Private Sintético permitem configurar variáveis de ambiente para monitor com script. Essas variáveis são gerenciadas localmente no SJM e podem ser acessadas via $env.USER_DEFINED_VARIABLES. Você pode definir variáveis definidas pelo usuário de duas maneiras. Você pode montar um arquivo JSON ou fornecer uma variável de ambiente ao SJM no lançamento. Se ambos forem fornecidos, o SJM utilizará apenas valores fornecidos pelo ambiente.

Acessando variáveis de ambiente definidas pelo usuário a partir do script

Para fazer referência a uma variável de ambiente definida pelo usuário configurada, use o $env.USER_DEFINED_VARIABLES reservado seguido do nome de uma determinada variável com notação de ponto (por exemplo, $env.USER_DEFINED_VARIABLES.MY_VARIABLE).

Cuidado

Variáveis de ambiente definidas pelo usuário não são limpas do log. Considere usar o recurso de credenciais seguras para informações confidenciais.

Módulos de nós personalizados

Módulos de nó personalizados são fornecidos no SJM. Eles permitem criar um conjunto personalizado de módulos do Node e usá-los em monitores com script (API com script e navegador com script) para monitoramento sintético.

Configure seu diretório de módulos personalizados

Crie um diretório com um arquivo package.json seguindo as diretrizes oficiais do npm na pasta raiz. O SJM instalará qualquer dependência listada no arquivo package.json campo dependencies . Essas dependências estarão disponíveis ao executar o monitor no gerenciador de tarefas Sintético privado. Veja um exemplo disso abaixo.

Exemplo

Neste exemplo, um diretório de módulo customizado é usado com a seguinte estrutura:

/example-custom-modules-dir/
├── counter
│ ├── index.js
│ └── package.json
└── package.json ⇦ the only mandatory file

O package.json define dependencies como um módulo local (por exemplo, counter) e qualquer módulo hospedado (por exemplo, smallest versão 1.0.1):

{
"name": "custom-modules",
"version": "1.0.0", ⇦ optional
"description": "example custom modules directory", ⇦ optional
"dependencies": {
"smallest": "1.0.1", ⇦ hosted module
"counter": "file:./counter" ⇦ local module
}
}

Adicione seu diretório de módulos personalizados ao SJM para Docker, Podman ou Kubernetes

Para verificar se os módulos foram instalados corretamente ou se ocorreu algum erro, procure as seguintes linhas no synthetics-job-manager contêiner ou log pod :

2024-06-29 03:51:28,407{UTC} [main] INFO c.n.s.j.p.options.CustomModules - Detected mounted path for custom node modules
2024-06-29 03:51:28,408{UTC} [main] INFO c.n.s.j.p.options.CustomModules - Validating permission for custom node modules package.json file
2024-06-29 03:51:28,409{UTC} [main] INFO c.n.s.j.p.options.CustomModules - Installing custom node modules...
2024-06-29 03:51:44,670{UTC} [main] INFO c.n.s.j.p.options.CustomModules - Custom node modules installed successfully.

Agora você pode adicionar "require('smallest');" ao script de monitor que você envia para esta localização privada.

Mudar package.json

Além dos módulos locais e hospedados, você também pode utilizar módulos Node.js. Para atualizar os módulos customizados usados pelo seu SJM, faça alterações no arquivo package.json e reinicie o SJM. Durante o processo de reinicialização, o SJM reconhecerá a alteração na configuração e executará automaticamente as operações de limpeza e reinstalação para garantir que os módulos atualizados sejam aplicados.

Cuidado

Módulos locais: embora seu package.json possa incluir qualquer módulo local, esses módulos devem residir na árvore no diretório do módulo personalizado. Se armazenado fora da árvore, o processo de inicialização falhará e você verá uma mensagem de erro no log docker após iniciar o SJM.

Configurar certificados de CA personalizados para localizações privadas

Se seus monitores Sintéticos precisarem se conectar a endpoints HTTPS internos protegidos por uma Autoridade de Certificação (CA) privada, você pode montar seus certificados de CA personalizados diretamente no SJM.

O SJM detecta automaticamente esses certificados e os passa para cada contêiner de tempo de execução na inicialização. Isso garante que seus monitores confiem em seus endpoints internos sem exigir que você crie ou mantenha imagens de tempo de execução personalizadas.

Requisitos de certificado

Para garantir que o SJM carregue seus certificados com sucesso, eles devem atender aos seguintes critérios:

  • Formato: Os certificados devem estar no formato PEM com uma extensão de arquivo .pem.
  • Permissões: Os arquivos devem ser legíveis pelo UID 2000 (o usuário não raiz que executa o contêiner de tempo de execução).
  • Tipo de certificado: apenas certificados de CA são carregados. Quaisquer certificados folha (certificados de servidor ou cliente) que não possuam a extensão de restrição básica CA:TRUE são ignorados automaticamente.

Ambientes de implantação

Selecione sua plataforma de orquestração de contêineres abaixo para montar seus certificados.

Certificados de cliente mTLS

Se os monitores se conectarem a endpoints internos que impõem o TLS mútuo (mTLS) — exigindo que o cliente apresente um certificado —, será possível fornecer certificados de cliente mapeados para nomes de host de destino. Os monitores apresentam o certificado correto automaticamente. Nenhuma alteração de script é necessária.

Requisitos:

  • Os arquivos de certificado e chave devem estar no formato PEM
  • Um arquivo cert-map.json de mapeamento de nomes de host para arquivos de certificado e chave é necessário

Formato do cert-map.json:

{
"api.internal.company.com": { "cert": "client.crt", "key": "client.key" },
"*.payments.internal": { "cert": "payments.crt", "key": "payments.key" },
"default": { "cert": "fallback.crt", "key": "fallback.key" }
}

Prioridade de correspondência de nome do host: correspondência exata → curinga (*.domain.com) → default catch-all → nenhum certificado (conexões não mTLS não são afetadas).

Limitações do suporte a certificados

As seguintes limitações se aplicam tanto aos certificados de CA personalizados quanto aos certificados de cliente mTLS, a menos que indicado o contrário:

  • Reinicialização necessária para alterações de certificado — Os certificados são carregados na inicialização do contêiner. Após adicionar, remover ou rotacionar certificados, reinicie o contêiner do gerenciador de jobs (ou os pods de tempo de execução no Kubernetes) para que as alterações entrem em vigor.
  • Tempos de execução suportados — Os recursos de certificado personalizado aplicam-se apenas a monitores de API com script e monitores de browser com script. Monitores de ping não são afetados.
  • CN do titular exclusivo por certificado (apenas mTLS) — Cada certificado de cliente deve ter um Nome comum (CN) do titular exclusivo. O Chrome usa o CN para identificar e selecionar automaticamente o certificado correto por nome do host.

Armazenamento permanente de dados

O usuário pode querer usar o armazenamento permanente de dados para fornecer o arquivo user_defined_variables.json ou oferecer suporte a módulos de nós personalizados.

Considerações de dimensionamento

Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.