Os serviços e padrões descritos abaixo foram definidos conforme o Guia de implementação das APIs TOTVS.
Quando necessário, o JSON de retorno deverá possuir uma lista com a estrutura de informações dos itens que foram avaliados pelo TOTVS Discovery.
Esta estrutura deve seguir conforme descrito abaixo:
Atributo | Tipo | Descrição | Obrigatório? | Valores |
---|---|---|---|---|
code | String | Código/Chave do item avaliado. | Sim | |
title | String | Título do item avaliado. | Sim | |
detail | String | Detalhe do item avaliado. | Não | |
value | String | Valor do item avaliado. | Sim | |
health | Array | Lista com a estrutura com as informações de saúde do nó descoberto. | Não |
Quando necessário, o JSON de retorno de deverá possuir uma lista com a estrutura de informações de saúde retornada pelo TOTVS Discovery.
Esta estrutura deve seguir conforme descrito abaixo:
Atributo | Tipo | Descrição | Obrigatório? | Valores |
---|---|---|---|---|
type** | String | Tipo da informação da situação encontrada. | Sim |
|
message | String | Breve mensagem sobre a situação encontrada. | Sim | |
detail | String | Detalhes sobre a situação encontrada. | Não | |
helpUrl | String | Página de ajuda sobre a situação encontrada. | Não |
GET /discovery/v1/environments/{name}
Retorna os ambientes disponíveis.
PATH PARAM [name]
Nome do ambiente que deseja-se filtrar ou nulo para trazer todos os ambientes
No JSON de retorno, no atributo items
, deve constar as seguintes informações:
Atributo | Tipo | Descrição | Obrigatório? | Valores |
---|---|---|---|---|
name | String | Nome do ambiente. | Sim |
{ "total": 2, "hasNext": false, "items": [{ "name": "PRODUCAO" },{ "name": "HOMOLOGACAO" }] } |
GET /discovery/v1/resources/{name}/[host]/[category]?info=[true|false]
Retorna os recursos dispoíveis de determinado ambiente.
PATH PARAM {name}
Nome do ambiente do qual deseja-se retornar os recursos disponíveis (obrigatório)
PATH PARAM [host]
IP ou domínio do recurso do ambiente selecionado
PATH PARAM [category]
Categoria do recurso do ambiente selecionado
QUERY PARAM [info]
Indicador se deverá ser retornado no JSON as informações avaliadas pelo TOTVS Discovery
No JSON de retorno, no atributo items
, deve constar as seguintes informações:
Atributo | Tipo | Descrição | Obrigatório? | Valores |
---|---|---|---|---|
name | String | Nome do ambiente. | Sim | |
host | String | IP ou domínio do recurso. | Sim | |
port | Number | Porta do recurso. | Não | |
category | String | Categoria do recurso. | Sim |
|
date | String | Data de descoberta do recurso (no formato yyyy-mm-ddThh:mm:ss.nnnnnn+|-hh:mm). | Sim | |
status | String | Indicador de saúde do recurso. | Não | Health:status |
info | Array | Lista com a estrutura com as informações dos itens avaliados. | Não | Info |
{ "total": 2, "hasNext": false, "items": [{ "name": "PRODUCAO", "host": "10.1.1.1", "port": 1234, "category": "server|machine|database|lsv|gateway", "date": "yyyy-mm-ddThh:mm:ss.nnnnnn+|-hh:mm", "status": "success|warning|error|danger", "info": [{ "code": "cpu", "title": "CPU", "detail": "Central Processing Unit", "value": "90", "health": [{ "status": "success|warning|error|danger", "message": "Consumo de CPU em 80%", "details": "O alto consumo da CPU do servidor prejudica o desempenho do sistema", "helpUrl": "http://www.tdn.totvs.com.br" }, { "status": "success|warning|error|danger", "message": "Memória disponível no servidor abaixo da recomendada", "details": "O recomendado para o uso do TOTVS Microsiga Protheus é de no mínimo 8gb de RAM", "helpUrl": "http://www.tdn.totvs.com.br" }] }] }] } |
GET /discovery/v1/config
Retorna as configurações atuais do TOTVS Discovery.
POST /discovery/v1/config
Atualiza as configurações atuais do TOTVS Discovery.
O JSON de retorno da busca e de atualização deverão possuir a mesma estrutura abaixo:
Atributo | Tipo | Descrição | Obrigatório? | Valores |
---|---|---|---|---|
monitorPaused | Boolean | Indicador se o serviço de monitoramento está ou não pausado. | Sim | |
historyDays | Number | Quantidade de dias para manter o histórico das informações de monitoramento. | Sim | Padrão 30 dias |
monitorInterval | Number | Intervalo em minutos do ciclo de monitoramento. | Sim | Padrão 15 minutos |
{ "monitorPaused": true|false, "historyDay": 30, "monitorInterval": 15 } |