Como criar dispositivos e destinos
WebSocket é um protocolo de comunicação que funciona sobre TCP e é projetado para trocar mensagens entre um navegador e um servidor web em tempo real. O navegador (cliente) e o servidor usam um protocolo semelhante ao HTTP para estabelecer uma conexão WebSocket.
Para obter mais informações sobre o protocolo WebSocket e o monitoramento de aplicativos baseado no WebSocket, visite o blog Dotcom-Monitor.
Um dispositivo WebSocket criado na plataforma Dotcom-Monitor verifica uma única URL do WebSocket para disponibilidade, desempenho, conteúdo adequado e erros. O dispositivo de monitoramento também pode ser configurado para validar certificados de segurança e conteúdo de resposta.
Configurando uma solicitação
URL
Para abrir uma conexão WebSocket, você é obrigado a inserir a URL do WebSocket do endpoint ou endereço IP da URL do WebSocket que você deseja verificar (os protocolos de wss:// ws:// e criptografados são suportados). Por exemplo, wss://echo.websocket.org/
Para ativar um modo de entrada mais visualmente amigável, clique no interruptor Detalhado na parte superior da seção.
Você pode converter a URL em um valor dinâmico ou parâmetro de contexto aqui. Por exemplo, você pode alterar dinamicamente a URL de destino durante o monitoramento.
Enviar dados
Uma vez que a conexão foi aberta, o Dotcom-Monitor ouve os eventos na tomada. Se você precisar transferir dados para o ponto final de destino, no campo Enviar dados, especifique uma mensagem em um formato de sequência ou binário. O Dotcom-Monitor enviará a mensagem para o ponto final do destino usando o protocolo WebSocket e aguardará a resposta.
O Dotcom-Monitor suporta expressões de Razor nas mensagens WebSocket. Para enviar uma sequência que contenha uma expressão razor, insira-a no campo Enviar dados e use o Script prepare para definir o tipo de mensagem para a expressão Razor. Caso contrário, a mensagem será analisada e enviada como texto. Use o seguinte trecho no campo Preparar Script para notificar o sistema de que ele deve analisar a mensagem com o mecanismo Razor:
ProcessPostDataByRazor(currentTask);
Além do mecanismo Razor, o Dotcom-Monitor permite alterar dinamicamente os dados do corpo de solicitação usando máscaras de dados. Para saber como usar a sintaxe e máscaras de dados razor em dados enviados e configurar a carga útil de mudança dinâmica, consulte Como alterar dinamicamente a carga útil na solicitação HTTP.
Validação de resposta (validação de conteúdo)
Para validar uma sequência de mensagens recebida do WebSocket, você pode afirmar palavras-chave no cenário de execução de chamadas. O sistema aguardará a resposta do ponto de extremidade de destino e verificará a mensagem recebida para a presença da palavra-chave especificada na cadeia de caracteres até que o tempo limite de conclusão da tarefa de monitoramento seja atingido. Se a palavra-chave não for detectada nas respostas do soquete, um erro será gerado.
Nos campos Palavra-chave , você pode especificar uma palavra ou frase que deseja pesquisar na mensagem de resposta. Use o texto sem formatação para especificar uma palavra-chave:
Prepare script e poste script
Os campos podem conter código C#, que pode ser usado para solicitações específicas e dados de URL ou para validar ou publicar cabeçalhos personalizados. Consulte o artigo “Use Prepare Script and Post Script” ou entre em contato com suporte técnico para obter mais detalhes sobre o uso.
O cenário dinâmico da execução da chamada WebSocket pode ser especificado no campo Preparar script. O cenário dinâmico pode incluir uma série de operações com dados binários ou de string.
Operações binárias formatadas (msg como Base64 codificada):
- ValidateBinary(string msg) – verifica se uma resposta WebSocket é igual aos dados binários especificados.
- ValidebinaryContains(string msg) – verifica se uma resposta do WebSocket contém dados binários especificados.
- SendBinary (string msg) – envia uma mensagem binária para um WebSocket.
Operações formatadas por texto:
- SendText(string msg) – envia uma sequência de texto para um WebSocket.
- ValidateText(string msg) – verifica se uma resposta de um WebSocket é igual a uma cadeia de caracteres especificada.
- ValidateTextContains(string msg) – verifica se uma resposta WebSocket contém uma cadeia de caracteres especificada.
Atraso:
- Delay(string duration) – define um atraso entre mensagens websocket em segundos no seguinte formato: XXs. O sistema aguardará o tempo especificado antes de executar a próxima operação no script. Observe que atrasos muito longos podem levar ao encerramento do script devido ao tempo limite de conclusão da tarefa.
Nos casos em que qualquer afirmação foi especificada no campo Preparar script, o sistema aguardará a afirmação especificada na resposta e prosseguirá com a execução do script assim que a validação for bem sucedida. Se uma mensagem com a declaração especificada não for recebida e o tempo limite de conclusão da tarefa for atingido, geraremos o erro de validação.
O Dotcom-Monitor permite que você inclua quantas operações forem necessárias no script Preparar. No entanto, se o tempo limite de conclusão da tarefa for atingido, a execução do script será encerrada. O tempo de conclusão da tarefa é contado a partir do início da execução do script.
-
Exemplo: Validação de resposta OK
-
Exemplo: Falha na validação da resposta
-
Exemplo: atraso de 10 segundos
Verificação de SSL/Certificado
O monitoramento do certificado SSL da camada de soquete seguro é um aspecto padrão do monitoramento da Web.
As seguintes opções estão disponíveis:
- Autoridade: verifica se uma cadeia de certificados contém um certificado raiz confiável ou não confiável.
- Nome Comum (CN): valida que um endereço que você navega corresponde ao certificado de endereço ao qual o endereço foi assinado.
- Data: verifica a data de validade do certificado.
- Revogação: valida que a cadeia de confiança do certificado não contém um certificado revogado.
- Uso: verifica uma cadeia de certificados para o uso inadequado de um certificado intermediário.
- Lembrete de expiração em dias: um lembrete que notifica (como um erro) sobre a expiração do certificado.
- Certificado do Cliente: nome do certificado do cliente.
Limite de validação de tempo (em segundos)
Insira o número de segundos que a tarefa deve aguardar uma resposta antes de finalizar a tarefa e retornar um erro. O tempo limite máximo é de 60 segundos. Se isso for deixado em branco, o tempo limite padrão de 60 segundos será aplicado. O tempo de conclusão da tarefa é contado a partir do início da execução do script.
Autenticação Básica
The HTTP authentication protocol is used to allow users to access content on some websites.
The following authentication schemes are available:
- Basic Authentication: This method encodes the username and password in base64 and sends them in the request header. It’s simple but not secure unless used with HTTPS.
- Digest Authentication: This scheme hashes credentials using a nonce (a random value) before sending them over the network, providing better security than Basic Authentication by preventing replay attacks.
- NTLM Authentication: A challenge-response mechanism developed by Microsoft, NTLM is used for securing credentials in Windows environments. It provides strong security by using multiple hashing and challenge-response protocols.
Once provided, login credentials will be passed along with the request header to the web server.
- Username: contains a username for HTTP/S authentication.
- User Password: contains a password for HTTP/S authentication.
Do not confuse HTTP authentication with other authentication schemes such as Bearer Authentication that involves bearer tokens and OAuth 2.0 that uses access tokens.
Read the articles on Basic Authentication Username and Password and Monitoring OAuth 2.0-based APIs for more information.
Cabeçalhos
A opção permite adicionar quaisquer cabeçalhos personalizados adicionais, se necessário.
- Nome do cabeçalho: especifique o nome do parâmetro, pois ele aparecerá na solicitação.
- Valor: digite o valor associado ao nome do parâmetro.
Opções de DNS
O recurso Opções de DNS permite que os usuários escolham como as solicitações de servidor de nomes de domínio (DNS) são conduzidas durante uma tarefa de monitoramento.
Para especificar o modo de resolução de nomes de host, na seção Modo de Resolução DNS , selecione um dos modos disponíveis. Para obter mais detalhes sobre a configuração do recurso, consulte Opções do modo DNS.
A seção Hosts DNS personalizados permite configurar o mapeamento de endereços IP para nomes de host. A resolução DNS IPv6 e IPv4 é suportada.
Para especificar o mapeamento, insira o endereço IP e o nome do host nos campos correspondentes.
Consulte também: Opções do modo DNS.