Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Atualização da nomenclatura da marca
Informações
titleAtenção

Esta página foi revisada para considerar as novas configurações de server do fluig para a atualização é destinada para atualizações 1.6.2 .

Caso possua uma atualização anterior a versão 1.6, acesse: Monitor de Serviços fluig.

Para versões 1.5.13 e anteriores, acesse: ARQ 062 - Monitor de Serviços fluige superiores do TOTVS Fluig Plataforma.

Índice

Índice
outlinetrue
exclude.*ndice
stylenone
 


Objetivo

...

O objetivo deste guia é explicar como obter informações de monitoramento de serviços do fluigda plataforma. Estas APIs permitem que clientes monitorem e realizem consultas de diversos relatórios referente a serviços consumidos pelo fluig, além de fornecer um acesso via Web aos dados publicados via JMX.pela plataforma.


Pré-requisitos

...

Para que se tenha uma compreensão completa destas informações, alguns conhecimentos são considerados pré-requisitos, entre eles:

  • Visão geral sobre a plataforma TOTVS Fluig
Nota
titleAtenção

Para acessar as APIs de Monitoramento de Serviços do fluig, deve-se obrigatoriamente realizar autenticação com um usuário administrador ou com o usuário "wcmadmin".Caso o acesso seja feito em


Funcionamento

...

O módulo de monitoramento permite a consulta de uma série de relatórios referente a serviços em uso pelo fluig. Estas informações são úteis para monitorar desenvolvimentos sobre a plataforma para evoluí-los. O acesso aos relatórios pode ser feito através de API REST (que retorna um JSON) e via JMX. 


Balanceamento de carga e alta disponibilidade - Cluster

...

Em um ambiente de alta disponibilidade com autenticação integrada, a autenticação do wcmadmin deve ser realizada através do endereço: [protocolo]://[endereço_ip]:[porta]/portal/home?dologin.

...

Em seguida acessar a URL: http://[servidor_fluig]:[porta]/monitoring/api/v1/

...

monitors/report

...

.

Em ambientes com balanceamento de carga, o monitoramento deverá ser realizado em cada nó. Isso significa que, não é possível consultar em um nó e obter o resultado dos demais no mesmo retorno.


Serviços monitorados

Funcionamento

O módulo de monitoramento permite a consulta de uma série de relatórios referente a serviços em uso pelo fluig. Estas informação são úteis para monitorar desenvolvimentos sobre a plataforma para evoluí-los. O acesso aos relatórios pode ser feito através de API REST (que retorna um JSON) e via JMX. Primeiramente vamos resumir cada um dos serviços monitorados.

...

...

Os monitores podem ser observados através de duas consultas REST diferentes. Você pode consultar diretamente o monitoramento que desejar incluindo o parâmetro na URL. Abaixo são apresentados as APIs com a relação de nomes e parâmetros de todos os monitores e seus serviços monitorados. 


API

...

monitors

...

Para acompanhar os serviços listados abaixo, altere a URL do fluig no da plataforma no navegador pela apresentada a seguir:. Os resultados apresentam o status atual dos serviços.

Bloco de código
languagebash
[protocolo]://[host fluig]/monitoring/api/v1/monitormonitors/report/<parâmetro>

apresenta o status atual do serviço.

GRUPOPARÂMETRODESCRIÇÃO

Analytics

ANALYTICS_AVAIABILITY

Indica a disponibilidade do fluig Analytics (http://analytics.fluig.com/).

Cache

CACHE_AVAIABILITY

Indica a disponibilidade do servidor de cache.

MiscLICENSE_SERVER_AVAILABILITYIndica se o servidor de licenças está disponível.
MAIL_SERVER_AVAILABILITYEnvia um e-mail de teste para [email protected], para indicar a disponibilidade do serviço de e-mails.
OPEN_OFFICE_AVAILABILITYIndica se o servidor do OpenOffice está ativo.
SOLR_SERVER_AVAILABILITYIndica se o servidor do Solr está ativo.
MS_OFFICE_AVAILABILITYIndica se o Office está instalado e ativo no servidor.
VIEWER_AVAILABILITYIndica se o Viewer está configurado.

Realtime

REAL_TIME_AVAILABILITY

Retorna se o NodeJS encontra acessível.

...


API

...

statistics

...

Para acompanhar os serviços listados abaixo, altere a URL do fluig no da plataforma no navegador pela apresentada a seguir:. É importante mencionar que os resultados não são monitorados em tempo real e sim checados a cada 5 minutos.

Bloco de código
languagebash
[protocolo]://[host fluig]/monitoring/api/v1/statistics/report/<parâmetro>

...

GRUPOPARÂMETRODESCRIÇÃO

Database

DATA_SOURCE_FLUIGDS

Retorna o tamanho do pool de conexões para o datasource transacionado.

DATA_SOURCE_FLUIGDSRO

Retorna o tamanho do pool de conexões para o datasource somente de leitura sem transação.

DATABASE_SIZE

Indica o tamanho total da base de dados utilizada

pelo fluig

pela plataforma.

DATABASE_TRAFFIC

Indica o tráfego de envio e de recebimento da base de dados utilizada

pelo fluig

pela plataforma. Só para MySQL.

DATABASE_INFO

Retorna dados sobre o nome e versão do banco de dados e do driver de conexão e versão do drive.

Filesystem

 


ARTIFACTS_APPS_DIR

Retorna a relação de arquivos implantados no [diretório

fluig

_instalação]/appserver/apps com suas respectivas Hash MD5.

LOG_DIR_SIZE_MONITOR

Indica o tamanho do diretório de logs do servidor.

ROOT_FILE_SYSTEMS

Retorna as raízes de montagem do filesystem com seus respectivos tamanhos em bytes.

TEMPLATE_DIR_SIZE

Indica o tamanho do diretório de templates.

VOLUME_DIR_SIZE

Indica o tamanho do diretório de volume.

TEMPORARY_DIR_SIZE

Indica o tamanho do diretório temporário do servidor.

Nota
titleAtenção

Os parâmetros LOG_DIR_SIZE_MONITOR,TEMPLATE_DIR_SIZE, VOLUME_DIR_SIZE e TEMPORARY_DIR_SIZE foram depreciados na atualização 1.6.4.

JVM

RUNTIME

Retorna a hora de início e o tempo que está em execução.

THREADING

Retorna o número de threads em execução, pico e quantidade iniciadas.

Memory

DETAILED_MEMORY

Retorna a relação de memórias da JVM, com tipo, total alocado, total comprometido e máximo.

MEMORY

Retorna o total de memória heap e non-heap alocados.

CacheCACHE_CONFIGURATIONIndica se a configuração do endereço do servidor de cache está definida para algo diferente de "LOCAL_MAP".

Misc

EXTERNAL_CONVERTERIndica se conversor interno de documentos está ativo.

Users

CONNECTED_USERS

Indica o número de sessões de usuários ativas no portal. Este número não corresponde necessariamente ao número de usuários autenticados na plataforma.

Nota
titleAtenção

Sempre que um monitor retornar FAILURE é possível acessar o arquivo server.log, armazenado em [Instalação fluigdiretório_instalação]/appserver/domain/servers/<fluig server>/log, para obter informações detalhadas do erro ocorrido.


Acesso REST

...

Para acessar os serviços via interface REST existem duas formas:

MétodoURLExplicação
GEThttp://<host>/monitoring/api/v1/
monitor
monitors/reportRetorna o relatório consolidado de todos os monitores citado acima, sem uso de parâmetros.
http://<host>/monitoring/api/v1/
 
statistics/report
GEThttp://<host>/monitoring/api/v1/
monitor
monitors/report/[PARÂMETRO]

Retorna o relatório para um recurso em específico. O parâmetro deve ser escrito em maiúsculo.

http://<host>/monitoring/api/v1/
 
statistics/report/[PARÂMETRO]

Onde:

  • [PARÂMETRO] = Nome do monitoramento.
  • Os retornos sempre são Strings.

 


Deck of Cards
idAcesso REST
Image Removed
Exemplo de consulta parametrizada.
Card
labelExemplo de consulta consolidada
Image Removed
Image Added
Figura 1 - Exemplo de consulta consolidada.
Card
labelExemplo de consulta parametrizada

 

Acesso JMX

Deck of Cards
idJMX
Card
labelPasso 1

 

  • Para acessar os monitores via JMX é utilizada a seguinte interface:
Bloco de código
languagejava
@MXBean
public interface FluigServiceMonitor {
    /**
     * 
     * Generates the report for this monitor with given parameters. The parameter syntax is:
     * 
     * paramenterName1=value1 parameterName2=value2
     * 
     * Example: "tenantId=10 forceSearch=true maxResults=15"
     * 
     * @param parameter for the monitor report
     * @return report result
     * @throws UnsupportedOperationException if this monitor doesn't support parameters.
     */
    String report(String parameter) throws UnsupportedOperationException;
    /**
     * Generates the report for this monitor.
     * 
     * @return report result.
     */
    String report();
    /**
     * Returns the name of this monitor, usually the class name without the "Monitor" suffix
     * 
     * @return name of this monitor.
     */
    String getName();
}
Card
labelPasso 2

 

  • Os MXBeans são registrados com o seguinte nome na mesma JVM do servidor de aplicações: com.fluig.monitor.jmx.bean:type=<Nome do Monitor>
Bloco de código
titleExemplo
com.fluig.monitor.jmx.bean:type=ConnectedUsersMonitor
Card
labelPasso 3

 

  • Com essas informações, basta acessar os JMXBeans, sem precisar utilizar uma biblioteca externa com a interface. Como os retornos e parâmetros são OpenTypes (Strings), não é necessário nenhuma dependência externa.

Image Removed

Exemplo de acesso aos JMX Beans através do Java VisualVM.

 

Acesso Web JMX

Para acessar o JMX Mini Console via web, basta abrir o navegador na seguinte URL: http://<fluig>/monitor/jmxconsole/ (lembrar de incluir uma barra no final).

Image Removed

Exemplo de acesso aos JMX Beans através do mini console Web.

Onde:
  • FAILURE: Falha na resposta do serviço;
  • NONE: Não foi utilizado até o momento;
  • OK: Em funcionamento e/ou ativado.
Card
labelExemplo de consulta parametrizada
Image Added
Figura 2 - Exemplo de consulta parametrizada

...