Compartilhar via


Logs de diagnóstico do Gateway de Aplicativos para contêineres

Saiba como solucionar problemas comuns no Gateway de Aplicativos para contêineres.

Você pode monitorar os recursos do Gateway de Aplicativo do Azure para Contêineres das seguintes maneiras:

  • Logs: os logs permitem que o desempenho, o acesso e outros dados sejam salvos ou consumidos de um recurso para fins de monitoramento.

  • Métricas: o Gateway de Aplicativos para contêineres tem várias métricas que ajudam a verificar se o sistema está funcionando conforme o esperado.

Logs de diagnóstico

Você pode usar diferentes tipos de logs no Azure para gerenciar e solucionar problemas do Gateway de Aplicativo para Contêineres. Você pode acessar alguns desses logs por meio do portal. Todos os logs podem ser extraídos de um Armazenamento de blobs do Azure e exibidos em diferentes ferramentas, como logs do Azure Monitor, Excel e Power BI. Saiba mais sobre os tipos diferentes de logs na lista a seguir:

  • Log de atividades: você pode usar os logs de atividades do Azure (anteriormente conhecidos como logs operacionais e logs de auditoria) para exibir todas as operações que estão sendo enviadas à sua assinatura do Azure, bem como seu status. As entradas do log de atividades são coletadas por padrão e podem ser exibidas no portal do Azure.
  • Log de acesso: você pode usar esse log para exibir padrões de acesso do Gateway de Aplicativos para contêineres e analisar informações importantes. Isso inclui o IP do chamador, a URL solicitada, a latência de resposta, o código de retorno e os bytes de entrada e saída. Um log de acesso é coletado a cada 60 segundos. Os dados podem ser armazenados em uma conta de armazenamento especificada no momento da habilitação do log.

Configurar log de acesso

O log de atividade é habilitado automaticamente para todos os recursos do Resource Manager. Você deve habilitar o log de acesso para começar a coletar os dados disponíveis por meio desses logs. Para habilitar o log, você pode definir configurações de diagnóstico no Azure Monitor.

Use as etapas a seguir para habilitar todos os logs em uma conta de armazenamento para o Gateway de Aplicativo para Contêineres usando o portal do Azure. Você deve ter uma conta de armazenamento disponível na mesma região que o Gateway de Aplicativos para contêineres.

  1. Entre no portal do Azure com sua conta do Azure.

  2. Em Recursos de pesquisa, serviço e documentos, digite Gateways de aplicativo para contêineres e selecione o nome do gateway de aplicativo para contêineres.

  3. Em Monitoramento, selecione Configurações de diagnóstico.

  4. Selecione Adicionar configuração de diagnóstico.

  5. Insira um Nome da configuração de diagnóstico (por exemplo, agfc-logs), escolha os logs e as métricas a serem salvos e escolha um destino, como Arquivar em uma conta de armazenamento. Para salvar todos os logs, selecione allLogs e AllMetrics.

  6. Selecione salvar para salvar suas configurações. Consulte o seguinte exemplo:

    Configurar logs de diagnóstico

Observação

Depois de habilitar inicialmente os logs de diagnóstico, pode levar até uma hora até que os logs estejam disponíveis no destino selecionado.

Para obter mais informações e tutoriais de implantação do Azure Monitor, consulte Configurações de diagnóstico no Azure Monitor.

Formato de log de acesso

Cada entrada de log de acesso no Gateway de Aplicativos para contêineres contém as seguintes informações.

Valor Descrição
backendHost Endereço do destino de back-end com porta anexada. Por exemplo, <ip>:<port> 
backendIp O endereço IP do Gateway de Aplicativo para Contêineres de destino de back-end faz proxy da solicitação. 
backendPort Número da porta do destino de back-end. 
backendResponseLatency Tempo em milissegundos para receber o primeiro byte do Gateway de Aplicativos para contêineres para o destino do back-end. 
backendTimeTaken Tempo em milissegundos para que a resposta seja transmitida do destino de back-end para o Gateway de Aplicativos para contêineres. 
clientIp Endereço IP do cliente que inicia a solicitação para o front-end do Gateway de Aplicativos para contêineres
frontendName Nome do front-end do Gateway de Aplicativos para contêineres que recebeu a solicitação do cliente
frontendPort Número da porta em que a solicitação foi ouvida pelo Gateway de Aplicativos para contêineres
frontendTLSFailureReason Contém informações sobre por que a negociação do TLS falhou. Comumente usado para entender solicitações de autenticação com falha para autenticação mútua do cliente
frontendTLSPeerFingerprint A impressão digital (impressão digital) do certificado apresentado por um cliente ao front-end do Gateway de Aplicativo para Contêineres
hostName Valor do cabeçalho de host recebido do cliente pelo Gateway de Aplicativos para contêineres
httpMethod Método HTTP da solicitação recebida do cliente pelo Gateway de Aplicativos para contêineres conforme RFC 7231
httpStatusCode Código de status HTTP retornado do Gateway de Aplicativos para contêineres para o cliente
httpVersion Versão HTTP da solicitação recebida do cliente pelo Gateway de Aplicativos para contêineres
referrer Cabeçalho de referência da solicitação recebida do cliente pelo Gateway de Aplicativos para contêineres
requestBodyBytes Tamanho em bytes da carga útil do corpo da solicitação recebida do cliente pelo Gateway de Aplicativos para contêineres
requestHeaderBytes Tamanho em bytes dos cabeçalhos da solicitação recebida do cliente pelo Gateway de Aplicativos para contêineres
requestUri URI da solicitação recebida do cliente pelo Gateway de Aplicativos para contêineres (tudo após <protocol>://<host> da URL)
responseBodyBytes Tamanho em bytes da carga útil do corpo da resposta retornada ao cliente pelo Gateway de Aplicativos para contêineres
responseHeaderBytes Tamanho em bytes dos cabeçalhos da resposta retornada ao cliente pelo Gateway de Aplicativos para contêineres
timeTaken Tempo em milissegundos da solicitação do cliente recebida pelo Gateway de Aplicativos para contêineres e o último byte retornado ao cliente do Gateway de Aplicativos para contêineres
tlsCipher Conjunto de codificação TLS negociado entre o cliente e o frontend do Gateway de Aplicativos para contêineres
tlsProtocol Versão TLS negociada entre o cliente e o frontend do Gateway de Aplicativos para contêineres
trackingId Guid gerado pelo Gateway de Aplicativos para contêineres para ajudar no rastreamento e depuração. Esse valor se correlaciona ao cabeçalho x-request-id retornado ao cliente do Gateway de Aplicativos para contêineres. 
userAgent Cabeçalho User-Agent da solicitação recebida do cliente pelo Gateway de Aplicativos para contêineres

Observação

Os valores de parâmetro de cadeia de caracteres de consulta, como "secret", "password", "pwd", "passwd", "key", "token", "pat", "accesskey", "accesstoken", "credential", "sas", "personalAccessToken" e "personal.access.token" registrados no campo requestUri, serão substituídos por um valor de <redacted> para impedir que informações confidenciais sejam registradas. Isso não é configurável.

Aqui um exemplo do log de acesso emitido no formato JSON para uma conta de armazenamento.

{
    "category": "TrafficControllerAccessLog",
    "operationName": "ReqRespLogs",
    "properties": {
        "backendHost": "10.1.0.15:80",
        "backendIp": "10.1.0.15",
        "backendPort": "80",
        "backendResponseLatency": "2",
        "backendTimeTaken": "-",
        "clientIp": "xxx.xxx.xxx.xxx:52526",
        "frontendName": "frontend-primary",
        "frontendPort": "443",
        "frontendTLSFailureReason": "-",
        "frontendTLSPeerFingerprint": "2c01bbc93009ad1fc977fe9115fae7ad298b665f",
        "hostName": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.fzXX.alb.azure.com",
        "httpMethod": "GET",
        "httpStatusCode": "200",
        "httpVersion": "HTTP\/1.1",
        "referer": "-",
        "requestBodyBytes": "0",
        "requestHeaderBytes": "223",
        "requestUri": "\/index.php",
        "responseBodyBytes": "91",
        "responseHeaderBytes": "190",
        "timeTaken": "2",
        "tlsCipher": "TLS_AES_256_GCM_SHA384",
        "tlsProtocol": "-",
        "trackingId": "0ef125db-7fb7-48a0-b3fe-03fe0ffed873",
        "userAgent": "curl\/7.81.0"
    },
    "resourceId": "/SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/YYYYYY/PROVIDERS/MICROSOFT.SERVICENETWORKING/TRAFFICCONTROLLERS/ZZZZZZZ",
    "time": "2023-07-22T06:26:58.895Z",
    "location": "northcentralus"
}