# Guia de Erros Comuns

Este documento é um guia rápido para identificar e corrigir falhas em scripts personalizados no Monsta Tecnologia. Se você encontrou um erro de execução ou um retorno inesperado em um sensor, consulte as categorias abaixo.

**Estrutura de cada tópico:**

1. **Erro:** Descrição do sintoma ou mensagem de log.
2. **Causa Provável:** O que geralmente dispara esse comportamento.
3. **Solução:** Passo a passo para correção.

<table border="1" id="bkmrk-erro-lua-script-runn" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 15.1852%;">**Erro**</td><td style="width: 84.8148%;">*Lua script runner timeout: deadline has elapsed*</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Causa**</td><td style="width: 84.8148%;">Este erro ocorre quando o motor de execução do Monsta interrompe o script Lua porque ele excedeu o

tempo limite (timeout) permitido para a execução de um sensor. Por padrão, o Monsta encerra scripts que demoram muito para responder para evitar que o sistema fique travado ou consuma recursos excessivos do servidor.

</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Solução**</td><td style="width: 84.8148%;">Acesse **Configuração &gt; Parâmetros** e utilize o campo de pesquisa para localizar a chave `lua.timeout`. O valor padrão é de 130 segundos. Para alterá-lo, clique em **Desbloquear**, insira o novo valor e salve.

</td></tr></tbody></table>

<table border="1" id="bkmrk-erro-pagefile%3A-timeo" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 15.1852%;">**Erro**</td><td style="width: 84.8148%;">*Pagefile: Timeout connecting to xx.xx.xx.xx:xxxx stack traceback: \[C\]: in function 'poll' \[string "?"\]:x: in function 'connect' \[string "script"\]:xxx: in function &lt;\[string "script"\]:xxx&gt; (tail call): in function &lt;(tail call):-1&gt;*</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Causa**</td><td style="width: 84.8148%;">Este erro indica uma falha na tentativa de estabelecer uma conexão de rede. O script Lua conseguiu iniciar a chamada, mas ela expirou antes que o dispositivo de destino respondesse ao "aperto de mão" (handshake) da conexão.

*"stack traceback"* mostra que a falha ocorreu exatamente no momento da tentativa de conexão (`in function 'connect'`), antes mesmo de qualquer dado ser enviado ou recebido.

</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Solução**</td><td style="width: 84.8148%;">Edite o dispositivo, acesse o menu **Coleta &gt; WMI** e aumente o campo WMI Timeout. Utilize o botão de "Testar" para validar a comunicação. Após, salve as modificações.

Caso o problema persista, outros fatores relacionados a rede podem impedir essa comunicação. Nesse caso, verifique em sua rede:

- **Firewall/Bloqueio:** Existe uma regra de firewall no destino ou no meio do caminho (ACL, IPS) bloqueando o IP do Monsta na porta especificada.
- **Serviço Offline:** O serviço que você está tentando monitorar (ex: API, servidor web, banco de dados) está parado ou não está escutando naquela porta específica.
- **Rede Inalcançável:** O servidor Monsta não possui uma rota válida para o IP de destino.
- **Porta Incorreta:** O script está tentando conectar em uma porta diferente da que o serviço utiliza.
- **Carga Excessiva no Destino:** O dispositivo alvo está com a CPU tão alta que não consegue processar novas requisições de conexão.

</td></tr></tbody></table>

<table border="1" id="bkmrk-erro-tempo-de-respos" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 15.1852%;">**Erro**</td><td style="width: 84.8148%;">*Tempo de Resposta: ping failed: Request timeout for icmp\_seq x*</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Causa**</td><td style="width: 84.8148%;">Este erro ocorre quando o Monsta envia um pacote de eco ICMP (o famoso "Ping") para um dispositivo, mas não recebe a resposta (Echo Reply) dentro do tempo esperado.

</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Solução**</td><td style="width: 84.8148%;">O dispositivo monitorado não respondeu às solicitações de ICMP (ping) do Monsta.

**<span style="text-decoration: underline;">Dica:</span>** Se o equipamento estiver em uma rede com alta latência ou perda de pacotes, ajuste a sensibilidade de detecção. Para isso, edite o dispositivo e acesse **Detalhes &gt; Sensibilidade**, alterando os parâmetros conforme a necessidade do ambiente.

</td></tr></tbody></table>

<table border="1" id="bkmrk-erro-snmp-timeout-st" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 15.1852%;">**Erro**</td><td style="width: 84.8148%;">*SNMP timeout stack traceback: \[C\]: in function 'poll' \[string "?"\]:xx: in function 'getex' \[string "script"\]:xx: in function 'get' \[string "script"\]:xx: in main chunk*</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Causa**</td><td style="width: 84.8148%;">Este erro ocorre quando o script tenta realizar uma leitura SNMP e a conexão expira sem receber os dados solicitados

</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Solução**</td><td style="width: 84.8148%;">O dispositivo monitorado não respondeu às solicitações de SNMP do Monsta.

Edite o dispositivo, acesse o menu **Coleta &gt; SNMP** e aumente o Timeout SNMP. Utilize o botão de "Testar" para validar a comunicação. Após, salve as modificações.

Caso o problema persista, outros fatores relacionados a rede podem impedir essa comunicação. Nesse caso, verifique em sua rede:

- **Comunidade SNMP Incorreta:** A "Community String" (ex: `public` ou `private`) configurada no Monsta não coincide com a configurada no dispositivo.
- **Versão do SNMP Divergente:** O dispositivo está usando SNMP v2c e o script/configuração está tentando v1 (ou vice-versa), ou há erro nas credenciais de v3.
- **ACL ou Firewall:** O dispositivo possui uma lista de controle de acesso (ACL) que permite apenas IPs específicos realizarem consultas SNMP, e o IP do Monsta não está nela.
- **Porta Bloqueada:** A porta UDP 161 (padrão do SNMP) está bloqueada no caminho.
- **Sobrecarga do Agente SNMP:** O processador do dispositivo monitorado está tão ocupado que o serviço (agente) SNMP não consegue responder à consulta a tempo.

</td></tr></tbody></table>

<table border="1" id="bkmrk-erro-error-convertin" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 15.1852%;">**Erro**</td><td style="width: 84.8148%;">*Error converting to type: Float*</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Causa**</td><td style="width: 84.8148%;">Esse erro ocorre quando o sistema espera um **número decimal (Float)**, mas recebeu algo que ele não consegue transformar em número, como um texto (String) inválido ou um valor nulo (`nil`).

</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Solução**</td><td style="width: 84.8148%;">Revise o script do monitor para garantir que o retorno não contenha **strings** (como vírgulas ou unidades de medida) no campo de valor. Caso o monitor apresente leituras normais, mas exiba falhas intermitentes com esse erro, é provável que o dispositivo esteja retornando um valor **nulo (nil)**. Isso ocorre quando não há resposta na consulta; nesses casos, verifique nos logs do equipamento a existência de alguma falha.

</td></tr></tbody></table>

<table border="1" id="bkmrk-erro-key-exchange-in" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 15.1852%;">**Erro**</td><td style="width: 84.8148%;">*Ssh error occured: Key exchange init failed stack traceback*</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Causa**</td><td style="width: 84.8148%;">Este erro ocorre durante a tentativa de conexão SSH entre o Monsta e um dispositivo remoto (geralmente modelos mais antigos de switches, roteadores ou rádios). Ele indica que o Monsta e o dispositivo não conseguiram entrar em acordo sobre qual **algoritmo de troca de chaves (Key Exchange)** utilizar, pois o dispositivo utiliza padrões que hoje são considerados legados ou inseguros por bibliotecas modernas.

</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Solução**</td><td style="width: 84.8148%;">O Monsta utiliza bibliotecas de criptografia de última geração. A falha na troca de chaves (Key Exchange) é um alerta de que o seu dispositivo remoto está operando com padrões de segurança obsoletos. A correção definitiva é a atualização do dispositivo monitorado para que suporte algoritmos de criptografia seguros.

</td></tr></tbody></table>

<table border="1" id="bkmrk-erro-no-route-to-hos" style="border-collapse: collapse; width: 100%;"><tbody><tr><td class="align-right" style="width: 15.1852%;">**Erro**</td><td style="width: 84.8148%;">*No route to host (os error 113) stack traceback*</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Causa**</td><td style="width: 84.8148%;">O erro `os error 113` é um código de erro de rede do sistema operacional que indica que o host de destino não pôde ser alcançado. O sistema operacional não sabe por qual interface de rede deve enviar o pacote para alcançar aquele IP específico.

</td></tr><tr><td class="align-right" style="width: 15.1852%;">**Solução**</td><td style="width: 84.8148%;">Para resolver o erro, certifique-se de que a tabela de roteamento do sistema possui um caminho válido para o IP de destino e que o gateway padrão está configurado corretamente para encaminhar os pacotes fora da rede local.

</td></tr></tbody></table>