IIS

A integração de Serviços de Informações da Internet coleta telemetria dos servidores web do IIS. As métricas fornecem informações de conexão e dados sobre bytes transferidos. A integração também coleta informações de registros de acesso.

Para mais informações sobre o IIS, consulte a documentação dos serviços de informações da Internet (em inglês).

Antes de começar

O agente de operações versão 2.15.0 apresenta compatibilidade com um novo conjunto de métricas IIS usando o prefixo workload.googleapis.com/. Configure o agente para coletar essas métricas, conforme descrito em configuração de exemplo.

O agente de operações sempre foi compatível com um conjunto limitado de métricas do IIS. Essas métricas usam o prefixo agent.googleapis.com/iis/. Nenhuma outra configuração é necessária para coletar essas métricas nas VMs do Windows.

Este documento refere-se às métricas com prefixo agent como métricas v1 e às métricas com prefixo workload como métricas v2. Para ver as tabelas dessas métricas, consulte O que é monitorado.

A partir do agente de operações versão 2.15.0, é possível configurar o agente para coletar métricas v1, métricas v2 ou ambas.

Prerequisites

Para coletar a telemetria do IIS, instale o agente de operações:

  • Para as métricas v1, instale a versão 1.0.0 ou posterior.
  • Para as métricas v2, instale a versão 2.15.0 ou posterior.
  • Para registros, instale a versão 2.14.0 ou posterior.

Essa integração é compatível com IIS versões 8.5 e 10.0.

Configurar o agente de operações para IIS

Seguindo o guia para configurar o Agente de operações, adicione os elementos necessários para coletar a telemetria das instâncias do IIS e reinicie o agente.

Exemplo de configuração

O comando a seguir cria a configuração para coletar e ingerir a telemetria para o IIS e reinicia o agente de operações.

$ErrorActionPreference = 'Stop'

# This config gets merged with the built-in Ops Agent config, which already
# includes the v1 receiver in the default pipeline.
# Because the v2 receiver here uses a unique ID, it does not overwrite
# the default receiver and so both receivers will be active simultaneously
# during the test.

# Create a back up of the existing file so existing configurations are not lost.
Copy-Item -Path 'C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml' -Destination 'C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml.bak'

# Configure the Ops Agent.
Add-Content 'C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml' "
metrics:
  receivers:
    iis_v2:
      type: iis
      receiver_version: 2
  service:
    pipelines:
      iispipeline:
        receivers:
          - iis_v2
logging:
  receivers:
    iis_access:
      type: iis_access
  service:
    pipelines:
      iis:
        receivers:
        - iis_access
"

# Stop-Service may fail if the service isn't in a Running state yet.
(Get-Service google-cloud-ops-agent*).WaitForStatus('Running', '00:03:00')
Stop-Service google-cloud-ops-agent -Force
Start-Service google-cloud-ops-agent*

Esse receptor é compatível apenas com o formato de geração de registros padrão do W3C.

Configurar a coleta de registros

Para ingerir registros de acesso do IIS, crie receptores para os registros e um pipeline para os novos receptores.

iis_accessPara configurar um receptor para os registros , especifique os seguintes campos:

Campo Padrão Descrição
exclude_paths [] Uma lista de padrões de caminho do sistema de arquivos a serem excluídos do conjunto correspondente a include_paths.
include_paths ['C:\inetpub\logs\LogFiles\W3SVC1\u_ex*'] Uma lista de caminhos do sistema de arquivos a serem lidos acompanhando cada arquivo. Um caractere curinga (*) pode ser usado nos caminhos. por exemplo, C:\inetpub\logs\LogFiles\W3SVC1\u_ex*.
type O valor precisa ser iis_access.
record_log_file_path false Se definido como true, o caminho para o arquivo específico de que a gravação de registro foi recebida aparecerá na entrada de registro de saída como o valor do identificador agent.googleapis.com/log_file_path. Ao usar um caractere curinga, apenas o caminho do arquivo de que o registro foi recebido é gravado.
wildcard_refresh_interval 60s O intervalo em que os caminhos de arquivos curinga no include_paths são atualizados. Especificado como intervalo de tempo da parsable time.ParseDuration, por exemplo, 30s ou 2m. Essa propriedade pode ser útil com capacidades de registro altas em que os arquivos de registro são alternados mais rapidamente do que o intervalo padrão.

O que é registrado

O logName é derivado dos IDs do receptor especificados na configuração. Os campos detalhados dentro de LogEntry são os seguintes.

Os registros iis_access contêm os seguintes campos no LogEntry:

Campo Tipo Descrição
httpRequest.referer string Conteúdo do cabeçalho Referer
httpRequest.remoteIp string O IP do cliente que fez a solicitação
httpRequest.requestMethod string Método HTTP
httpRequest.requestUrl string URL da solicitação (normalmente apenas a parte do caminho do URL)
httpRequest.serverIp string O IP e a porta do servidor solicitados
httpRequest.status number Código de status HTTP
httpRequest.userAgent string Conteúdo do cabeçalho User-Agent
jsonPayload.sc_substatus number O código de erro do substatus
jsonPayload.sc_win32_status number Código de status do Windows
jsonPayload.time_taken number Período em que a ação levou, em milissegundos
jsonPayload.user string Nome de usuário autenticado da solicitação
timestamp string (Timestamp) Hora em que a solicitação foi recebida

Configurar a coleta de métricas v1

O agente de operações em uma VM do Microsoft Windows coleta automaticamente as métricas do IIS v1. Não é preciso fazer nenhuma configuração adicional. Para mais informações sobre como coletar apenas métricas v2, consulte Configurar a coleta de métricas v2.

Depois que você configura uma nova instância do IIS, o IIS pode não informar nenhuma métrica imediatamente. No Console do Gerenciador de servidores instalado no Windows Server, talvez você veja o status On-line – Contadores de desempenho não iniciados na coluna "Capacidade de gerenciamento".

Uma maneira de permitir que o IIS gere métricas é clicar com o botão direito do mouse no servidor IIS no console do Gerenciador de servidor e selecionar Iniciar contadores de desempenho. O servidor deverá começar a enviar métricas para o agente de operações.

Configurar a coleta de métricas v2

Para ingerir métricas v2 do IIS, crie um receptor para as métricas que o IIS produz e, em seguida, crie um pipeline para o novo receptor.

Esse receptor não aceita o uso de várias instâncias na configuração, por exemplo, para monitorar vários endpoints. Todas essas instâncias gravam na mesma série temporal, e o Cloud Monitoring não tem como diferenciá-las.

Para configurar um receptor para suas métricas do iis, especifique os campos a seguir:

Campo Padrão Descrição
collection_interval 60 s Um valor de time.Duration, como 30s ou 5m.
receiver_version Versão das métricas coletadas; usar 2 para coletar métricas v2.
type Este valor precisa ser iis.

Por padrão, as métricas da v1 são coletadas automaticamente. É possível aumentar as métricas da v1 coletando mais métricas v2 ou modificá-las para coletar apenas as métricas da v2.

  • Para coletar somente métricas da v2, faça o seguinte:

    • Nomeie seu receptor iis.
    • Defina o campo type como iis
    • Defina o campo receiver_version como 2
    • Use esse receptor no pipeline default_pipeline. Essa configuração substitui a configuração integrada do receptor iis.
  • Para coletar as métricas v1 e v2, faça o seguinte:

    • Dê ao receptor um nome diferente de iis, como iis_v2.
    • Defina o campo type como iis
    • Defina receiver_version como 2.
    • Use esse receptor no novo pipeline. Essa configuração adiciona um receptor v2 em vez de substituir o destinatário integrado. O script em configuração de exemplo usa essa abordagem.

O que é monitorado?

A partir da versão 2.15.0, o agente de operações pode coletar dois conjuntos diferentes de métricas:

  • As métricas da v1: agent.googleapis.com/iis/.
  • As métricas da v2: workload.googleapis.com/.
Métricas da V1

A tabela a seguir fornece a lista de métricas da v1 que o agente de operações coleta da instância do IIS.

As strings "tipo de métrica" nesta tabela precisam ser prefixadas com agent.googleapis.com/iis/. Esse prefixo foi omitido das entradas na tabela. Ao consultar um rótulo, use o prefixo metric.labels.. por exemplo, metric.labels.LABEL="VALUE".

Tipo de métrica Etapa do lançamento
Nome de exibição
Classe, Tipo, Unidade
Recursos monitorados
Descrição
Rótulos
current_connections GA
Conexões abertas do IIS
GAUGEDOUBLE1
aws_ec2_instance
gce_instance
Conexões abertas no IIS no momento. Amostras coletadas a cada 60 segundos.
network/transferred_bytes_count GA
Bytes transferidos do IIS
CUMULATIVEINT64By
aws_ec2_instance
gce_instance
Bytes de rede transferidos pelo IIS. Amostras coletadas a cada 60 segundos.
direction: Direção (enviada, recebida)
new_connection_count GA
Conexões do IIS
CUMULATIVEINT641
aws_ec2_instance
gce_instance
Conexões abertas no IIS. Amostras coletadas a cada 60 segundos.
request_count GA
Solicitações IIS
CUMULATIVEINT641
aws_ec2_instance
gce_instance
Solicitações feitas ao IIS. Amostras coletadas a cada 60 segundos.
http_method: Método HTTP (postar, colocar, obter, excluir, opção, traço, head)

Tabela gerada em 17-04-2024 21:38:09 UTC.

Métricas da V2

A tabela a seguir fornece a lista de métricas da v2 que o agente de operações coleta da instância do IIS.

Tipo de métrica 
Tipo, tipo
Recursos monitorados
Rótulos
workload.googleapis.com/iis.request.count
CUMULATIVEINT64
gce_instance
request
workload.googleapis.com/iis.request.rejected
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/iis.request.queue.count
GAUGEINT64
gce_instance
 
workload.googleapis.com/iis.request.queue.age.max
GAUGEINT64
gce_instance
 
workload.googleapis.com/iis.network.file.count
CUMULATIVEINT64
gce_instance
direction
workload.googleapis.com/iis.network.blocked
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/iis.network.io
CUMULATIVEINT64
gce_instance
direction
workload.googleapis.com/iis.connection.attempt.count
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/iis.connection.active
GAUGEINT64
gce_instance
 
workload.googleapis.com/iis.connection.anonymous
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/iis.thread.active
GAUGEINT64
gce_instance
 
workload.googleapis.com/iis.uptime
GAUGEINT64
gce_instance
 

Verificar a configuração

```

Verificar a configuração

Nesta seção, descrevemos como verificar se você configurou corretamente o receptor do IIS. Pode levar um ou dois minutos para que o agente de operações comece a coletar telemetria.

Para verificar se os registros IIS estão sendo enviados para o Cloud Logging, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Logging e, depois, Explorador de registros:

    Acessar o Explorador de registros

  2. Digite a consulta a seguir no Editor e clique em Executar consulta:
    resource.type="gce_instance"
    log_id("iis_access")
    

Para verificar se as métricas do IIS estão sendo enviadas para o Cloud Monitoring, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Metrics Explorer:

    Acesse o Metrics explorer

  2. Na barra de ferramentas do painel do criador de consultas, selecione o botão  MQL ou  PromQL.
  3. Verifique se MQL está selecionado na opção de ativar/desativar Idioma. A alternância de idiomas está na mesma barra de ferramentas que permite formatar sua consulta.
    • Para métricas da v1, insira a seguinte consulta no editor e clique em Executar:
      fetch gce_instance
      | metric 'agent.googleapis.com/iis/request_count'
      | every 1m
      
    • Para métricas da v2, insira a seguinte consulta no editor e clique em Executar:
      fetch gce_instance
      | metric 'workload.googleapis.com/iis.request.count'
      | every 1m
      

Ver painel

Para visualizar as métricas do IIS, é necessário ter um gráfico ou painel configurado. A integração do IIS inclui um ou mais painéis para você. Todos os painéis são instalados automaticamente depois que você configura a integração e o Agente de operações começa a coletar dados de métricas.

Também é possível ver visualizações estáticas de painéis sem instalar a integração.

Para ver um painel instalado, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Painéis:

    Ir para Painéis

  2. Selecione a guia Lista de painéis e escolha a categoria Integrações.
  3. Clique no nome do painel que você quer visualizar.

Se você configurou uma integração, mas o painel não foi instalado, verifique se o agente de operações está em execução. Quando não há dados de métricas para um gráfico no painel, a instalação do painel falha. Depois que o Agente de operações começar a coletar métricas, o painel será instalado para você.

Para acessar uma visualização estática do painel, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Integrações:

    Acessar Integrações

  2. Clique no filtro de plataforma de implantação do Compute Engine.
  3. Localize a entrada do IIS e clique em Ver detalhes.
  4. Selecione a guia Painéis para uma visualização estática. Se o painel estiver instalado, navegue até ele clicando em Ver painel.

Para mais informações sobre painéis no Cloud Monitoring, consulte Painéis e gráficos.

Para mais informações sobre como usar a página Integrações, consulte Gerenciar integrações.

Instalar políticas de alertas

As políticas de alertas orientam o Cloud Monitoring a notificar você quando ocorrerem condições especificadas. A integração com o IIS inclui uma ou mais políticas de alertas para você usar. É possível ver e instalar essas políticas de alertas na página Integrações no Monitoring.

Para visualizar e descrever as descrições de políticas de alertas disponíveis, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Integrações:

    Acessar Integrações

  2. Localize a entrada do IIS e clique em Ver detalhes.
  3. Selecione a guia Alertas. Essa guia apresenta descrições das políticas de alertas disponíveis e mostra uma interface para instalá-las.
  4. Instalar políticas de alertas. As políticas de alertas precisam saber para onde enviar as notificações de que o alerta foi acionado. Portanto, elas exigem informações para instalação. Para instalar políticas de alertas, faça o seguinte:
    1. Na lista de políticas de alertas disponíveis, selecione aquelas que você quer instalar.
    2. Na seção Configurar notificações, selecione um ou mais canais de notificação. Você pode desativar o uso dos canais de notificação, mas, se isso acontecer, as políticas de alertas vão ser disparadas silenciosamente. É possível verificar o status no Monitoring, mas não receber notificações.

      Para saber mais sobre canais de notificação, consulte Gerenciar canais de notificação.

    3. Clique em Criar políticas.

Para mais informações sobre políticas de alertas no Cloud Monitoring, consulte Introdução a alertas.

Para mais informações sobre como usar a página Integrações, consulte Gerenciar integrações.

A seguir

Para ver um tutorial sobre como usar o Ansible para instalar o agente de operações, configurar um aplicativo de terceiros e instalar um painel de amostra, consulte o vídeo Instalação do agente de operações para resolver problemas de aplicativos de terceiros.