Objetivo

Definições Gerais

Os serviços e padrões descritos abaixo foram definidos conforme o Guia de implementação das APIs TOTVS.

Estrutura com informações dos nós filhos

Quando necessário, o JSON de retorno deverá possuir uma lista com a estrutura de informações dos nós filhos para o nó descoberto pelo TOTVS Discovery.

Esta estrutura deve seguir conforme descrito abaixo:

AtributoTipoDescriçãoObrigatório?Valores
hostStringIP ou domínio do nó filho.Sim
portNumericPorta do nó filho.Sim
categoryStringCategoria do nó filho.Sim
nameStringNome do nó filho.Não

Estrutura com informações dos itens avaliados

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:

AtributoTipoDescriçãoObrigatório?Valores
codeStringCódigo/Chave do item avaliado.Sim
titleStringTítulo do item avaliado.Sim
detailStringDetalhe do item avaliado.Não
valueStringValor do item avaliado.Sim
healthArrayLista com a estrutura com as informações de saúde do nó descoberto.Não


Estrutura com informações de saúde

Quando necessário, o JSON de retorno de deverá possuir uma lista com a estrutura de informações de saúde da informação retornada pelo TOTVS Discovery.

Esta estrutura deve seguir conforme descrito abaixo:

AtributoTipoDescriçãoObrigatório?Valores
typeStringTipo da informação da situação encontrada.Sim
  • sucess:
    Sucesso (OK)
  • warning:
    Alerta/Aviso
  • error:
    Erro | Com contorno
  • danger:
    Erro Fatal/Sem contorno
messageStringBreve mensagem sobre a situação encontrada.Sim
detailStringDetalhes sobre a situação encontrada.Não
helpUrlStringPágina de ajuda sobre a situação encontrada.Não

Serviços

Serviço de descoberta de recursos (nós) aptos para avalição através do TOTVS Discovery.

GET /discovery/v1/resources/{host}/{port}/{category}/{name}?category=[category]

O método GET /discovery/v1/resources é utilizado para a descoberta dos recursos (nós) que serão exibidos no Dashboard do TOTVS Discovery para avaliação de performance e saúde de cada um destes. Este método permite receber via PathParam o host, port, category e name do recurso que deseja-se retornar, caso não informado estes parâmetros, serão retornados todos os recursos descobertos. É possível também filtrar pela categoria dos recursos, se informado o filtro category via QueryParam, o serviço deverá filtrar os recursos descobertos retornando apenas os recursos da categoria filtrada.

No JSON de retorno, no atributo items, deve constar as seguintes informações:

AtributoTipoDescriçãoObrigatório?Valores
hostStringIP ou domínio do nó descoberto.Sim
portNumericPorta do nó descoberto.Sim
categoryStringCategoria do nó descoberto.Sim
  • server:
    Servidor de Aplicação
  • machine:
    ???
  • database:
    Banco de Dados
  • lsv:
    Servidor de Licenças
  • gateway:
    ???
nameStringNome do nó descoberto.Não
dateStringData de descoberta do nó (no formato yyyy-mm-ddThh:mm:ss.nnnnnn+|-hh:mm).Sim
infoArrayLista com a estrutura com as informações dos itens avaliados.Não
childrenArrayLista dos nós filhos do nó descoberto.Não

Exemplo JSON de retorno

{
	"total": 2,
	"hasNext": false,
	"items": [{
		"host": "10.1.1.1",
		"port": 1234,
		"category": "server|machine|database|lsv|gateway",
		"name": "PROTHEUS_V12_PROD",
		"date": "yyyy-mm-ddThh:mm:ss.nnnnnn+|-hh:mm",
		"info": [{
			"code": "cpu",
			"title": "CPU",
			"detail": "Central Processing Unit",
			"value": "90",
			"health": [{
				"type": "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"
			}, {
				"type": "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"
			}]
		}],
		"children": [{
			"host": "10.1.1.1",
			"port": 5555,
			"name": "DBACCESS",
			"category": "server|machine|database|lsv|gateway"

		}]
	}]
}