ForHosting KIT · Ferramentas para dev

Ordenar níveis de log por severidade e comparar

Níveis de log são fáceis de reconhecer, mas podem ser ordenados incorretamente quando códigos de configuração, filtragem ou alertas são montados dinamicamente.

● BetaGrátis · no seu navegador
Use pelo WebAPIE-mailTelegramApp em breve

Esta capacidade aplica a progressão convencional de trace até fatal, ordena a lista fornecida por você e compara dois níveis na mesma solicitação. Ela retorna nomes normalizados em letras minúsculas, a ordem completa de referência e uma relação explícita adequada para scripts, testes, painéis e ferramentas de documentação. Nomes desconhecidos geram um erro claro, sem suposições nem posicionamento silencioso em uma extremidade do resultado.

Use uma única escala convencional de severidade

A capacidade usa a ordem crescente amplamente reconhecida trace, debug, info, warn, error, fatal. Trace representa os eventos de diagnóstico mais detalhados, enquanto fatal representa falhas graves o bastante para interromper um processo ou torná-lo inutilizável. Envie os níveis encontrados no array <code>levels</code>. O resultado inclui <code>sorted_levels</code>, do menos ao mais grave, e <code>severity_order</code> como referência completa. Valores repetidos são preservados porque podem representar entradas reais em uma configuração, amostra ou relatório. A ordenação é estável para valores iguais. Os nomes têm espaços externos removidos, são comparados sem diferenciar maiúsculas e retornam em minúsculas canônicas. O vocabulário aceito é propositalmente restrito: valores como notice, verbose, warning, critical ou emergency são rejeitados. Esses nomes pertencem a outras convenções e não podem ser mapeados nesta escala sem uma decisão de política feita por você. A rejeição explícita revela erros de configuração antes que afetem a filtragem ou a resposta a incidentes.

Entenda o resultado da comparação

Informe <code>first</code> e <code>second</code> para comparar dois níveis junto com a ordenação. A resposta normaliza os operandos e apresenta uma <code>relation</code> da perspectiva do primeiro. <code>more_severe</code> significa que o primeiro aparece depois na ordem padrão; <code>less_severe</code>, que aparece antes; e <code>equal</code>, que ambos correspondem ao mesmo nível. O <code>rank_difference</code> com sinal fornece a distância exata: um número positivo favorece o primeiro operando, um número negativo favorece o segundo e zero representa igualdade. Quando são diferentes, <code>more_severe</code> indica diretamente o vencedor e evita que o cliente repita a comparação. Em caso de igualdade, o campo é omitido em vez de receber null. Esse formato funciona bem em asserções e automações condicionais. Comparar warn com error produz uma diferença negativa e identifica error como mais grave. Comparar ERROR com error produz igualdade após a normalização, eliminando diferenças de caixa sem enfraquecer a validação do vocabulário verdadeiro.

Aplique a classificação com segurança no desenvolvimento

Classificar severidade é útil sempre que uma configuração textual precisa virar uma decisão inequívoca. Um visualizador de logs pode ordenar filtros selecionados antes de exibi-los. Um verificador de implantação pode confirmar que o limite de produção seja pelo menos warn. Um gerador de documentação pode apresentar níveis consistentemente mesmo que o arquivo de origem os liste fora de ordem. Testes de monitoramento podem comparar o limite configurado com um mínimo obrigatório e impedir uma versão antes da produção. A função é determinística e não faz solicitações de rede; portanto, a mesma entrada sempre produz a mesma saída no navegador e pela API. Esta ferramenta classifica nomes: ela não analisa linhas de log, não deduz níveis do conteúdo das mensagens e não converte esquemas incompatíveis como syslog e rótulos personalizados. Se o seu sistema usa notice, critical, panic, off ou níveis numéricos, converta-os conforme a política documentada por você. Rejeitar entradas desconhecidas impede que um erro de digitação esconda eventos importantes sem aviso.

Normalizar uma configuração de log

Ordene os níveis selecionados de uma configuração pela convenção e retorne nomes consistentes em minúsculas.

Verificar um limite de alerta

Compare um nível configurado com o mínimo exigido e use a relação explícita em um teste de implantação.

Criar documentação ordenada

Transforme uma lista arbitrária de níveis compatíveis em uma progressão previsível para páginas de referência.

Qual é a ordem de severidade?

Da menor para a maior severidade: trace, debug, info, warn, error e fatal.

Nomes em maiúsculas são aceitos?

Sim. Espaços externos são removidos, a comparação ignora maiúsculas e o retorno usa minúsculas canônicas.

O que acontece com níveis duplicados?

As duplicatas são preservadas. Entradas iguais mantêm sua ordem relativa original.

Posso usar warning ou critical?

Não. São aceitos apenas trace, debug, info, warn, error e fatal; outras convenções exigem um mapeamento explícito definido por você.

Como interpretar rank_difference?

É a posição do primeiro nível menos a do segundo. Um valor positivo indica que o primeiro é mais grave, um negativo favorece o segundo e zero indica igualdade.

Quanto custa uma solicitação de API?

Cada solicitação de API custa US$ 0,002. A mesma capacidade determinística também pode ser executada gratuitamente no navegador.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/dev/log-level-severity-rank

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/dev/log-level-severity-rank \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"levels":["error","debug","fatal","info"],"first":"warn","second":"error"}'
{
  "levels": [
    "error",
    "debug",
    "fatal",
    "info"
  ],
  "first": "warn",
  "second": "error"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.log_level_severity_rank",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

max_items1000
HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Ver a documentação completa do KIT →