Open the menu
    Javadoc

    Framework de Integração HTTP

    Através deste framework é possível utilizar o Apache Fluent HTTP para fazer chamadas HTTP pelo Java ou em estilos Javascript e Groovy, aproveitando funcionalidades de logging detalhado, monitoramento e JMX. Isso proporciona uma visão completa e controle sobre as requisições HTTP realizadas pelo sistema, melhorando a capacidade de diagnóstico e gestão.

    Configuração

    O framework faz a configuração do cliente HTTP utilizando valores de variáveis de ambiente. Caso uma variável não esteja definida, um valor padrão será utilizado.

    O log da API por padrão limita-se apenas a exibir informações de chamadas com erro, para exibir informações de todas as chamadas deve-se alterar seu nível para debug. Consultar a seção Logs do Portal para verificar como habilitar.

    Uso

    Para utilizar o HTTP Integrator, deve-se criar uma requisição utilizando o Apache Fluent e ao invés de chamar o método execute nativo, passar essa requisição como parâmetro para o IHTTPIntegrationManager que pode ser obtido através do método ManagerFactory.getHTTPIntegrationManager().

    Java

    Estilo em Javascript

    JMX

    O framework também suporta monitoramento via JMX (Java Management Extensions), permitindo o gerenciamento e monitoramento em tempo real das requisições HTTP e do desempenho do sistema. Para obter mais informações sobre quais dados são expostos ao JMX, consulte:

    API de Monitoramento

    A API de monitoramento coleta informações sobre as requisições HTTP. Os campos e eventos monitorados são:

    Campos

    • lum_httpintegration.execution.id: Identificador da execução.
    • lum_httpintegration.request.url: URL da requisição.
    • lum_httpintegration.request.method: Método da requisição.
    • lum_httpintegration.request.body.contentLength: Tamanho do corpo da requisição.
    • lum_httpintegration.request.body.contentType: Content Type do corpo da requisição.
    • lum_httpintegration.request.exception: Exceção gerada durante a requisição.
    • lum_httpintegration.request.error.reason: Motivo do erro da requisição.
    • lum_httpintegration.response.status.code: Código de estado da resposta.
    • lum_httpintegration.response.body.contentLength: Tamanho do corpo da resposta.
    • lum_httpintegration.response.body.contentType: Content Type do corpo da resposta.

    Eventos

    • Execution Started
      • ID: lumis.portal.monitor.ev.httpintegration.executionStarted
      • Nome: Integração HTTP - Execução iniciada
      • Verbo: criou uma execução
      • Campos:
        • lum_httpintegration.execution.id (obrigatório)
        • lum_httpintegration.request.url (obrigatório)
        • lum_httpintegration.request.method (opcional)
        • lum_httpintegration.request.body.contentLength (opcional)
        • lum_httpintegration.request.body.contentType (opcional)
    • Request Started
      • ID: lumis.portal.monitor.ev.httpintegration.requestStarted
      • Nome: Integração HTTP - Requisição iniciada
      • Verbo: iniciou uma requisição
      • Campos:
        • lum_httpintegration.execution.id (obrigatório)
        • lum_httpintegration.request.url (obrigatório)
        • lum_httpintegration.request.method (opcional)
        • lum_httpintegration.request.body.contentLength (opcional)
        • lum_httpintegration.request.body.contentType (opcional)
    • Request Ended
      • ID: lumis.portal.monitor.ev.httpintegration.requestEnded
      • Nome: Integração HTTP - Requisição terminada
      • Verbo: terminou uma requisição
      • Campos:
        • lum_httpintegration.execution.id (obrigatório)
        • lum_httpintegration.request.url (obrigatório)
        • lum_httpintegration.request.method (opcional)
        • lum_httpintegration.request.body.contentLength (opcional)
        • lum_httpintegration.request.body.contentType (opcional)
        • lum_httpintegration.request.error.reason (opcional)
        • lum_httpintegration.response.status.code (opcional)
        • lum_httpintegration.response.body.contentLength (opcional)
        • lum_httpintegration.response.body.contentType (opcional)
    • Execution Ended
      • ID: lumis.portal.monitor.ev.httpintegration.executionEnded
      • Nome: Integração HTTP - Execução terminada
      • Verbo: completou uma execução
      • Campos:
        • lum_httpintegration.execution.id (obrigatório)
        • lum_httpintegration.request.url (obrigatório)
        • lum_httpintegration.request.method (opcional)
        • lum_httpintegration.request.body.contentLength (opcional)
        • lum_httpintegration.request.body.contentType (opcional)
        • lum_httpintegration.request.error.reason (opcional)
        • lum_httpintegration.request.exception (opcional)
        • lum_httpintegration.response.status.code (obrigatório)
        • lum_httpintegration.response.body.contentLength (opcional)
        • lum_httpintegration.response.body.contentType (opcional)