Ir para o conteúdo

Observabilidade (Beta) em agentes privados Jitterbit 11.34 a 11.36

Cuidado

Este recurso está atualmente lançado como uma versão beta, com suporte em agentes privados versão 11.34.0.75 a 11.36. Para fornecer feedback, entre em contato com a Equipe de produtos Jitterbit.

Introdução

Você pode monitorar remotamente o desempenho e o comportamento de um agente privado em tempo real com qualquer uma das seguintes plataformas de observabilidade suportadas:

Antes de começar a monitorar agentes privados em execução no Docker, Linux, ou Windows, você deve instalar o agente da plataforma de observabilidade escolhida em cada agente privado que deseja monitorar e configurar suas métricas.

Nota

No Linux e no Windows, os agentes de observabilidade iniciam automaticamente quando o hospedar inicia. No Docker, você deve iniciá-los manualmente usando os seguintes comandos:

Start Datadog
sudo datadog-agent start
Start Elasticsearch
sudo metricbeat start
sudo filebeat start

Instalar o Datadog em um hospedar de agente privado Jitterbit

Pré-requisitos do Datadog

Para instalar o Datadog em um hospedar de agente privado, você deve ter o seguinte:

  • Agente privado 11.34 a 11.36 instalado e em execução.

  • Uma conta Datadog.

  • Um superusuário (root) conta no Linux ou uma conta de administrador no Windows.

    Importante

    Execute todos os comandos como este usuário.

Instalar o agente Datadog

Para instalar o agente Datadog em um hospedar de agente privado, siga estas etapas:

  1. Entre na sua conta Datadog.

  2. No menu principal, selecione Integrações > Agente.

  3. Na página Instruções de instalação do Agente, selecione seu tipo de hospedar de agente privado.

  4. Clique no botão API Key. A caixa de diálogo Select an API Key abre.

  5. Se você não tiver nenhuma chave de API, clique em Botão Criar novo para criar um.

    Caso contrário, selecione sua entrada de chave de API e clique no botão Usar chave de API.

  6. No Comando de instalação do Agente, clique em Clique no ícone copiar para copiar o comando para sua área de transferência.

  7. Abra um terminal ou PowerShell no hospedar do agente privado, cole o comando copiado e pressione Enter para executá-lo.

  8. Feche o terminal ou o PowerShell.

Configurar o agente Datadog

O software do agente privado Jitterbit inclui um script para configurar o Datadog. Para usá-lo, siga estas etapas:

  1. Para agentes privados do Docker, o valor para o hostname propriedade no /etc/datadog-agent/datadog.yaml deve ser definido como o nome do host do host. Se não for, defina-o manualmente.

  2. Execute o seguinte em um novo terminal ou PowerShell no hospedar do agente privado:

    cd /opt/jitterbit/scripts/
    ./configure_datadog.sh
    
    cd /opt/jitterbit/scripts/
    ./configure_datadog.sh
    
    cd "C:\Program Files\Jitterbit Agent\scripts\"
    .\configure_datadog.ps
    
  3. Leia e responda aos prompts.

  4. Para confirmar que seu agente Datadog está funcionando, faça login em sua conta Datadog e selecione Integrações > Automação de frota no menu principal.

Adicionar um pipeline do analisador Grok

  1. Entre na sua conta Datadog.

  2. Selecione Logs > Pipelines.

  3. Clique em Botão New Pipeline.

  4. Insira valores para os seguintes campos:

    • Filtro: service:JitterbitAgentMetric

    • Nome: agent.operation.schedule.pipeline

    • Descrição: (Opcional) Insira uma descrição.

  5. Clique no botão Criar.

Adicione um analisador (operation.scheduler.processor)

  1. Expanda o novo (agent.operation.schedule.pipeline) pipeline e clique em Adicionar processador.

  2. Na caixa de diálogo Criar Grok Parser, insira valores para os seguintes campos:

    • Selecione o tipo de processador: Grok Parser

    • Nomeie o processador: operation.scheduler.processor

    • Amostras de log: Copie e cole as seguintes amostras de log no campo. Após cada uma, clique em Adicione para criar novos campos:

      Log sample 1
      2024-10-15 22:19:01`[AgentMetric, Informativo] `Added to queue: OperationID = 12345 and OperationName = "test-operation" and OperationInstanceGuid = a1b2c3-2ef3-4667-833f-2e6c50ae613b and Status = 1
      
      Log sample 2
      2024-10-15 22:19:03`[AgentMetric, Informativo] `Operation changed to Running: OperationID = 12345 and Operation Name = "test-operation" and OperationInstanceGuid = a1b2c3-2ef3-4667-833f-2e6c50ae613b and Status = 3
      
      Log sample 3
      2024-10-15 22:16:07`[AgentMetric, Informativo] `Operation changed to Running: OperationID = 12345 and Operation Name = "test-operation" and OperationInstanceGuid = a1b2c3-2ef3-4667-833f-2e6c50ae613b and Status = 3
      
      Log sample 4
      2024-10-15 22:20:04`[AgentMetric, Informativo] `Operation finished: OperationID = 12345 and Operation Name = "test operation" and OperationInstanceGuid = a1b2c3-2ef3-4667-833f-2e6c50ae613b and Status = 5 and Duration = 1.1111
      
      Log sample 5
      2024-10-15 22:19:03`[AgentMetric, Informativo] `Operation finished: OperationID = 12345 and Operation Name = "test-operation" and OperationInstanceGuid = 90c34115-2ef3-4667-833f-2e6c50ae613b and Status = 5 and Duration = 2.2222
      
    • Defina regras de análise: Copie e cole a seguinte regra de análise no campo:

      submittedOperationRule %{date("yyyy-mm-dd HH:mm:ss"):status_date}\s+\[AgentMetric,\s+Informative\]\s+%{notSpace:status}\s+to\s+queue\:\s+OperationID\s+\=\s+%{integer:scheduled_operation_id}\s+and\s+OperationName\s+\=\s+"%{data:scheduled_operation_name}"\s+and\s+OperationInstanceGuid\s+\=\s+%{notSpace:submitted_operation_instance_guid}\s+and\s+Status\s+\=\s+%{number:operation_status}
      runningOperationRule %{date("yyyy-mm-dd HH:mm:ss"):status_date}\s+\[AgentMetric,\s+Informative\]\s+Operation\s+changed\s+to\s+%{notSpace:status}\:\s+OperationID\s+\=\s+%{notSpace:scheduled_operation_id}\s+and\s+Operation Name\s+\=\s+"%{data:scheduled_operation_name}"\s+and\s+OperationInstanceGuid\s+\=\s+%{notSpace:running_operation_instance_guid}\s+and\s+Status\s+\=\s+%{number:operation_status}
      completedOperationRule %{date("yyyy-mm-dd HH:mm:ss"):status_date}\s+\[AgentMetric,\s+Informative\]\s+Operation\s+%{notSpace:status}\:\s+OperationID\s+\=\s+%{notSpace:scheduled_operation_id}\s+and\s+Operation Name\s+\=\s+"%{data:scheduled_operation_name}"\s+and\s+OperationInstanceGuid\s+\=\s+%{notSpace:running_operation_instance_guid}\s+and\s+Status\s+\=\s+%{number:operation_status}\s+and\s+Duration\s+\=\s+%{number:duration}
      
  3. Clique no botão Criar.

Adicione um analisador (operation.over.schedule.processor)

  1. No pipeline expandido, sob o analisador existente, clique em Adicionar processador.

  2. Na caixa de diálogo Criar Grok Parser, insira valores para os seguintes campos:

    • Selecione o tipo de processador: Grok Parser

    • Nomeie o processador: operation.over.scheduler.processor

    • Amostras de log: Copie e cole as seguintes amostras de log no campo. Após cada uma, clique em Adicione para criar novos campos:

      Log sample 1
      2024-10-15 22:19:01`[AgentMetric, Informativo] `The requested scheduled Operation is already being processed. OperationId = 12345 OperationName = "test operation" [SCHEDULE_IN_PROCESS]
      
      Log sample 2
      2024-10-03 22:21:02`[AgentMetric, Informativo] `The requested scheduled Operation is already being processed. OperationId = 12345 OperationName = "test-operation" [SCHEDULE_IN_PROCESS]
      
    • Defina regras de análise: Copie e cole a seguinte regra de análise no campo:

      operationOverSchdeuleRule %{date("yyyy-mm-dd HH:mm:ss"):schedule_ts}\s+\[AgentMetric,\s+Informative\]\s+The\s+requested\s+scheduled\s+Operation\s+is\s+already\s+being\s+processed\.\s+OperationId+\s=\s+%{integer:over_running_operation_id}\s+OperationName+\s=\s+\"%{data:over_running_operation_name}\"\s+\[SCHEDULE_IN_PROCESS\]
      

Criar facetas

Para definir facetas do Datadog, siga estas etapas:

  1. Selecione Logs > Explorer.

  2. Na barra Search facets, clique em Adicionar (Adicionar uma faceta).

  3. No campo Caminho da caixa de diálogo Adicionar faceta, insira o texto mostrado abaixo e clique no botão Adicionar. Repita para cada item na lista a seguir:

    • @over_running_operation_id

    • @scheduled_operation_id

    • @operation_status

    • @scheduled_operation_name

    • @running_operation_instance_guid

Criar medidas

  1. Na página Logs > Explorer, na barra Pesquisar facetas, clique em Adicionar (Adicionar uma faceta).

  2. Na caixa de diálogo Adicionar faceta, selecione a aba Medir.

  3. No campo Caminho, insira o texto mostrado abaixo e clique no botão Adicionar:

    • @duration

Criar métricas

Para definir métricas, siga os passos abaixo para cada métrica.

Dica

Você também pode usar logs para criar métricas do Datadog.

  1. Crie o agent.operation.count.by.status métrica:

    1. Selecione Logs > Gerar métricas.

    2. Clique em Botão New Metric.

    3. Na caixa de diálogo Generate Metric, defina os valores da seguinte forma:

      • Set Metric Name: agent.operation.count.by.status

      • Definir consulta: service:JitterbitAgentMetric

    4. Clique no menu agrupar por e clique em cada um dos seguintes para adicioná-los à lista:

      • @operation_status

      • @scheduled_operation_id

      • @scheduled_operation_name

      • @agentgroup

    5. Clique no botão Criar métrica.

  2. Crie a agent.operation.duration métrica:

    1. Clique em Botão New Metric.

    2. Na caixa de diálogo Generate Metric, defina os valores da seguinte forma:

      • Set Metric Name: agent.operation.duration

      • Definir consulta: service:JitterbitAgentMetric

    3. Clique no menu Contagem e selecione duração (@duração).

    4. Clique no menu agrupar por e clique em cada um dos seguintes para adicioná-los à lista:

      • @scheduled_operation_id

      • @scheduled_operation_name

      • @agentgroup

    5. Clique no botão Criar métrica.

  3. Crie a agent.operation.schedule métrica:

    1. Clique em Botão New Metric.

    2. Na caixa de diálogo Generate Metric, defina os valores da seguinte forma:

      • Set Metric Name: agent.operation.schedule

      • Definir consulta: service:JitterbitAgentMetric

    3. Clique no menu agrupar por e clique em cada um dos seguintes para adicioná-los à lista:

      • @scheduled_operation_id

      • @scheduled_operation_name

      • @status

      • @agentgroup

    4. Clique no botão Criar métrica.

Importar um painel do Datadog

Para importar um painel pré-criado do Datadog, siga estas etapas:

  1. Baixe o arquivo JSON do Jitterbit Agente privado Datadog dashboard do portal Harmony Downloads página.

  2. Selecione Dashboards > Novo painel.

  3. Na caixa de diálogo Criar um painel, insira um nome no campo Nome do painel e clique no botão Novo painel.

  4. Clique no botão Botão Configurar e selecione Importar JSON do painel.

  5. Encontre o arquivo JSON do painel baixado e selecione-o.

  6. Para usar o painel, selecione Painéis > Lista de painéis, insira Jitterbit Harmony Agente privado no campo Pesquisar painéis e selecione o painel importado.

Solucionar problemas do Datadog

Para ajudar a resolver quaisquer problemas com o Datadog, você pode verificar a documentação do Datadog, inspecionar arquivos de log ou executar comandos para gerenciar usuários e permissões.

Documentação do Datadog

Localizações dos arquivos Datadog

Arquivos de log

Os arquivos de log do Datadog podem ser encontrados no seguinte local:

/var/log/datadog/

Abra o aplicativo Datadog Agente Manager e selecione a aba Log.

Arquivos de configuração

O arquivo de configuração do Datadog pode ser encontrado no seguinte local:

/etc/datadog-agent/datadog.yaml

Abra o aplicativo Datadog Agente Manager e selecione a aba Configurações.

Neste arquivo, você deve verificar se possui valores corretos para as seguintes chaves:

  • api_key

  • site

  • $hostname

  • tags

Comandos de usuários e permissões do Datadog

Para criar um usuário e grupo Datadog, execute estes comandos:

usermod -a -G root dd-agent
usermod -a -G jitterbit dd-agent

Para definir a propriedade do arquivo de configuração do Datadog, execute estes comandos:

chown dd-agent:dd-agent /etc/datadog-agent/conf.d/logs.d/conf.yaml
chown dd-agent:dd-agent /etc/datadog-agent/conf.d/logs.d

Instalar o Metricbeat em um hospedar de agente privado

Pré-requisitos do Metricbeat

Antes de instalar o Metricbeat em um hospedar de agente privado, você deve instalar o seguinte:

Instalar Metricbeat e Filebeat

Metricbeat

Para instalar o Metricbeat em um hospedar de agente privado, siga as instruções do Metricbeat no site Elastic.co.

Para iniciar o Metricbeat quando o hospedar inicializar, siga as instruções de inicialização do Metricbeat no site Elastic.co.

Batida de arquivo

Para instalar o Filebeat em um hospedar de agente privado, siga as instruções do Filebeat no site Elastic.co.

Para iniciar o Filebeat quando o hospedar inicializar, siga as instruções de inicialização do Filebeat no site Elastic.co.

Defina a política de ciclo de vida do índice Kibana

  1. Abra o console da web do Kibana em http://HOSTNAME:5601, onde HOSTNAME é o nome do host ou endereço IP do hospedar do agente privado.

  2. Entre index lifecycle policies na barra de pesquisa do Elasticsearch e selecione a página resultante.

  3. Clique em Botão Criar política.

  4. Na caixa de diálogo Criar política, defina os seguintes valores:

    • Nome da política: private-agent-metrics-policy
  5. Ative a alternância Fase quente e defina os seguintes valores:

    • Mover dados para a fase quando: 30 dias
  6. Ative a alternância Fase fria e defina os seguintes valores:

    • Mover dados para a fase quando: 90 dias
  7. Clique em Botão Salvar política.

Criar modelos Kibana

Crie um modelo Kibana (private-agent-metric-template)

  1. Entre index management na barra de pesquisa do Elasticsearch e selecione a página resultante.

  2. Selecione a aba Modelos de Índice e clique em Botão Criar modelo.

  3. Na página Logística, insira valores para os seguintes campos:

    • Nome: private-agent-metric-template

    • Padrões de índice: private-agent-metric-8.15-*

  4. Clique em Avançar botão.

  5. Na página Modelos de componentes, clique em Avançar botão.

  6. Na página Configurações de índice, substitua o conteúdo do campo Configurações de índice pelo seguinte:

    {
      "index": {
        "lifecycle": {
          "name": "private-agent-metrics-policy",
          "rollover_alias": "private-agent-metric-alias"
        },
        "number_of_shards": "1",
        "number_of_replicas": "1"
      }
    }
    
  7. Clique em Avançar botão.

  8. Na página Mapeamentos, na aba Campos mapeados, adicione campos de acordo com a tabela a seguir (clique no botão Adicionar campo para adicionar campos adicionais):

    Tipo de campo Nome do campo
    Palavra-chave fields.env
    Palavra-chave private-agent.group
    Palavra-chave private-agent.name
  9. Selecione a aba Opções avançadas e defina as seguintes opções como Ativado:

    • Mapear sequências numéricas como números

    • Mapear sequências de datas como datas

  10. Clique em Avançar botão.

  11. Na página Aliases, clique em Next botão.

  12. Na página Review details, clique no botão Botão Criar modelo.

Crie um modelo Kibana (private-agent-filebeat-template)

  1. Na aba Modelos de índice, clique em Botão Criar modelo.

  2. Na página Logística, insira valores para os seguintes campos:

    • Nome: private-agent-filebeat-template

    • Padrões de índice: private-agent-filebeat-8.15-*

  3. Clique em Avançar botão.

  4. Na página Modelos de componentes, clique em Avançar botão.

  5. Na página Configurações de índice, substitua o conteúdo do campo Configurações de índice pelo seguinte:

    {
      "index": {
        "lifecycle": {
          "name": "private-agent-metrics-policy",
          "rollover_alias": "private-agent-metric-alias"
        },
        "number_of_shards": "1",
        "number_of_replicas": "1"
      }
    }
    
  6. Clique em Avançar botão.

  7. Na página Mapeamentos, na aba Campos mapeados, adicione campos de acordo com a tabela a seguir (clique no botão Adicionar campo para adicionar campos adicionais):

    Tipo de campo Nome do campo
    Palavra-chave fields.env
    Palavra-chave over_running_operation_name
    Palavra-chave private-agent.group
    Palavra-chave private-agent.name
    Palavra-chave scheduled_operation_name
    Palavra-chave status
  8. Selecione a aba Opções avançadas e defina as seguintes opções como Ativado:

    • Mapear sequências numéricas como números

    • Mapear sequências de datas como datas

  9. Clique em Avançar botão.

  10. Na página Aliases, clique em Próximo botão.

  11. Na página Review details, clique no botão Botão Criar modelo.

Criar analisadores Kibana

Crie um pipeline do analisador Kibana Grok (Over Schedule)

  1. Entre ingest pipelines na barra de pesquisa do Elasticsearch e selecione a página resultante.

  2. Clique em Criar pipeline botão e selecione Novo pipeline.

  3. Insira valores para os seguintes campos:

    • Nome: private-agent-metric-pipeline

    • Descrição: Insira uma descrição opcional.

  4. No painel Processadores, clique no botão Adicionar um processador.

  5. Na caixa de diálogo Adicionar processador, defina os seguintes campos:

    • Processador: Abra o menu e selecione Grok.

    • Campo: message

    • Padrões: No primeiro campo =, insira o seguinte:

      %{GREEDYDATA:operation_timestamp} \[AgentMetric, Informative\] The requested scheduled Operation is already being processed. OperationId = %{NUMBER:over_running_operation_id:int} OperationName = "%{GREEDYDATA:over_running_operation_name}" \[SCHEDULE_IN_PROCESS\]
      
  6. Ative Ignorar falhas para este processador.

  7. Clique no botão Adicionar processador.

  8. Na lista de processadores, clique no ícone, então altere o nome para Over Schedule.

Crie um pipeline do analisador Kibana Grok (Added Status)

  1. No painel Processadores, clique no botão Adicionar um processador.

  2. Na caixa de diálogo Adicionar processador, defina os seguintes campos:

    • Processador: Abra o menu e selecione Grok.

    • Campo: message

    • Padrões: No primeiro campo =, insira o seguinte:

      %{GREEDYDATA:timestamp} \[AgentMetric, Informative\] %{GREEDYDATA:status} to queue: OperationID = %{NUMBER:scheduled_operation_id:int} and OperationName = %{GREEDYDATA:scheduled_operation_name} and OperationInstanceGuid = %{GREEDYDATA:scheduled_operation_instance_guid}
      
  3. Ative Ignorar falhas para este processador.

  4. Clique no botão Adicionar processador.

  5. Na lista de processadores, clique no ícone, então altere o nome para Status adicionado.

Crie um pipeline do analisador Kibana Grok (Finished Status)

  1. No painel Processadores, clique no botão Adicionar um processador.

  2. Na caixa de diálogo Adicionar processador, defina os seguintes campos:

    • Processador: Abra o menu e selecione Grok.
    • Campo: message
    • Padrões: No primeiro campo =, insira o seguinte:

      %{GREEDYDATA:status_ts} \[AgentMetric, Informative\] Operation changed to %{GREEDYDATA:status}: OperationID = %{NUMBER:scheduled_operation_id:int} and Operation Name = \"%{GREEDYDATA:scheduled_operation_name}\" and OperationInstanceGuid = %{GREEDYDATA:scheduled_operation_instance_guid}
      
  3. Ative Ignorar falhas para este processador.

  4. Clique no botão Adicionar processador.

  5. Na lista de processadores, clique no ícone, então altere o nome para Status Concluído.

Crie um pipeline do analisador Kibana Grok (Running Status)

  1. No painel Processadores, clique no botão Adicionar um processador.

  2. Na caixa de diálogo Adicionar processador, defina os seguintes campos:

    • Processador: Abra o menu e selecione Grok.
    • Campo: message
    • Padrões: No primeiro campo =, insira o seguinte:

      %{GREEDYDATA:status_ts} \[AgentMetric, Informative\] Operation %{GREEDYDATA:status}: OperationID = %{NUMBER:scheduled_operation_id:int} and Operation Name = \"%{GREEDYDATA:scheduled_operation_name}\" and OperationInstanceGuid = %{GREEDYDATA:scheduled_operation_instance_guid} and Status = %{NUMBER:scheduled_operation_status} and Duration = %{NUMBER:scheduled_operation_duration:float}
      
  3. Ative Ignorar falhas para este processador.

  4. Clique no botão Adicionar processador.

  5. Na lista de processadores, clique no ícone, então altere o nome para Running Status.

Defina a ordem dos processadores

Se ainda não o fez, reorganize a lista de processadores para que fiquem na seguinte ordem:

  1. Agendamento em excesso

  2. Status adicionado

  3. Status concluído

  4. Status em execução

Configurar o agente Metricbeat

O agente privado Jitterbit inclui um script para configurar o Metricbeat. Para usá-lo, siga estes passos:

  1. Execute o seguinte em um terminal ou PowerShell:

    cd /opt/jitterbit/scripts/
    ./configure_elasticsearch.sh
    
    cd /opt/jitterbit/scripts/
    ./configure_elasticsearch.sh
    
    cd "C:\Program Files\Jitterbit Agent\scripts\"
    .\configure_elasticsearch.ps
    
  2. Leia e responda aos prompts.

Importar um painel do Elasticsearch

Para importar um painel pré-criado do Elasticsearch, siga estas etapas:

  1. Baixe o arquivo JSON do Jitterbit Agente privado Elasticsearch dashboard do portal Harmony Downloads página.

  2. Entre kibana saved objects na barra de pesquisa do Elasticsearch e selecione a página resultante.

  3. Clique no botão Importar.

  4. Na caixa de diálogo Importar objetos salvos, clique em Importar, encontre o arquivo JSON do painel baixado e selecione-o.

  5. Em Opções de importação, selecione Verificar objetos existentes com Substituir conflitos automaticamente.

  6. Clique no botão Importar.

  7. Clique no botão Concluído.

  8. Para usar o painel, digite dashboards na barra de pesquisa do Elasticsearch, selecione a página resultante e, em seguida, selecione Jitterbit Harmony Agente privado Dashboard.

Solucionar problemas do Elasticsearch

Para ajudar a resolver quaisquer problemas com os componentes do Elasticsearch, você pode consultar a documentação do Elasticsearch, inspecionar arquivos de log ou executar comandos de diagnóstico.

Documentação do Elasticsearch

Locais dos arquivos de log do Elasticsearch

  • /var/log/metricbeat

  • /var/log/filebeat

Comandos de diagnóstico do Elasticsearch

Para verificar a conexão do Filebeat com o Elasticsearch, execute o seguinte comando:

filebeat test output