Execute vários trabalhos agendados para agrupamento de alertas

  • Versão de lançamento: Yokohama
  • Atualizado 25 de jun. de 2026
  • 3 min. de leitura
  • Execute vários trabalhos agendados em paralelo para agrupar alertas. Isso ajuda a evitar sobrecarregar o sistema durante picos (tempestades de alertas).

    Antes de Iniciar

    Função necessária: administrador

    Por Que e Quando Desempenhar Esta Tarefa

    O trabalho agendado atual opera com um único thread. Durante picos de alerta (tempestades de alertas), o processamento leva significativamente mais tempo. Para lidar com esse impacto, o Now vários trabalhos podem processar alertas no trabalho agendado. Isso melhora a escalabilidade e melhora o desempenho geral durante períodos de alto volume.

    O número de trabalhos a serem executados no processamento de alertas é definido em uma nova propriedade sa_analytics.agg.alert_grouping.num_of_jobs. O número do trabalho é enviado como um parâmetro para o método relevante.

    Nota:
    Neste cenário, o procedimento para aumentar o scale-out de sem scale-out (trabalho único) para 2 trabalhos é mostrado.
    Você pode gerenciar e executar com eficiência vários trabalhos agendados em paralelo para agrupar alertas usando propriedades específicas. Essas propriedades permitem que você personalize os critérios de agrupamento para atender às suas necessidades, garantindo que os alertas sejam processados com base em grupos de atribuição, separação de domínio ou campos de grupo por. As propriedades disponíveis são:
    • sa_analytics.agg.group_alert_with_same_assignment_group_onlyAlertas de grupos que compartilham o mesmo grupo de atribuição. Por padrão, o valor é definido como falso. Se você quiser definir esta propriedade como verdadeiro, crie uma propriedade com o mesmo nome e defina o valor como verdadeiro.
    • sa_analytics.agg.group_alert_with_same_domain_only: Agrupa alertas que pertencem ao mesmo domínio. Por padrão, o valor é definido como verdadeiro.
    • sa_analytics.agg.group_alert_with_same_group_by_fields: Propriedade "Agrupar por", com lista separada por vírgulas de nomes de campo que precisam ter valores correspondentes nos alertas para permitir que os alertas sejam agrupados. A propriedade pode conter nomes de campos de alerta (como assignment_group), nomes de campos de IC (como alert_cmdb_ci.location), nomes de campos de informações adicionais de alerta (como additional_info.state) ou marcadores de alerta (como t_data_center). Quando os valores de campo especificados correspondem entre si entre os alertas, esses alertas podem ser agrupados.
    Nota:
    Para garantir uma escalabilidade eficiente, pelo menos uma dessas propriedades deve ser definida para estabelecer alguma forma de lógica de separação ou agrupamento. Isso é necessário para garantir que todos os alertas pertencentes ao mesmo grupo sejam processados corretamente por trabalhos específicos, criando uma divisão lógica de alertas.

    Se pelo menos uma dessas propriedades for definida como verdadeira, os alertas não serão segregados corretamente. Por exemplo, se você não definir nenhuma lógica de agrupamento (definir qualquer propriedade como verdadeira) e a separação do grupo de atribuição e do domínio forem definidas como falso, a expansão horizontal não funcionará e todos os alertas serão processados por um único trabalho agendado.

    Procedimento

    1. Navegar até Tudo > Definição do sistema > Trabalhos agendados.
    2. Localize o trabalho agendado: Alertas do grupo de Análise de serviços usando RCA/Agregação de alertas.
    3. Para todos os alertas de grupo de Análise de serviços de trabalhos agendados existentes usando RCA/Agregação de alertas, defina o valor em Ativo coluna para falso .
      Figura 1. Desative o trabalho agendado
      Desative o trabalho agendado
    4. Crie uma nova propriedade sa_analytics.agg.alert_grouping.num_of_jobsou, se já existir, atualize a propriedade para o número desejado de vários trabalhos agendados para agrupamento de alertas, como 2 ou 4.
    5. Clone a definição de trabalho agendado da tabela Trabalhos agendados [sys_auto] para o número desejado de vários trabalhos agendados para agrupamento de alertas.
    6. Nos novos trabalhos, na seção Executar este script, chame a nova função JS queryS0 (em vez da função query() antiga) e transfira para ela o número do trabalho como parâmetro de entrada.
      Nota:
      Os números de trabalho devem começar em 0 e seguir consecutivamente: 0, 1, 2, 3, 4...
    7. Corrija hashes na tabela [sa_analytics_status] e [sa_hash] selecionando o hash mais antigo com o mesmo prefixo, clonando-o e adicionando o sufixo do nome do hash, por exemplo, "_groupingX", em que X é o número do trabalho.
      No caso de escalonamento de nenhum scale-out (trabalho único) para 2 trabalhos e para o nome de hash last_alert_process_time , clone-o para manter o mesmo valor de em last_alert_process_time :
      • last_alert_process_time_grouping0
      • last_alert_process_time_grouping1
      No caso de escalonamento de nenhum scale-out (trabalho único) para 4 trabalhos e para o nome de hash last_alert_process_time , clone-o para manter o mesmo valor de em last_alert_process_time :
      • last_alert_process_time_grouping0
      • last_alert_process_time_grouping1
      • last_alert_process_time_grouping2
      • last_alert_process_time_grouping3
      Tabela 1. Hashes a serem clonados
      Nome do hash Tabela
      query_job_last_run sa_hash
      last_alert_process_time sa_analytics_status
      last_staging_table_update_time sa_analytics_status
      last_staging_table_truncate_time sa_analytics_status
      gatilho_de análise_g1 sa_hash
    8. Selecione os novos trabalhos Ativo caixa de seleção para cada trabalho.
      Figura 2. Ative o trabalho agendado
      Ative o trabalho agendado

    Resultado

    Os alertas de grupo de Análise de serviços de trabalho agendado usando RCA/Agregação de alertas estão configurados para executar vários trabalhos simultaneamente para agrupamento de alertas.