Elemento groupingKey

Normalmente, cada regra ativa possui uma instância de regra, ou cópia, em execução no mecanismo da Tecnologia ACT. No entanto, às vezes, a mesma regra é necessária para grupos diferentes de eventos, relacionados, com freqüência, a diferentes grupos de recursos. A chave de agrupamento é um ou mais atributos de eventos, ou partes de atributos de eventos, que podem ser utilizados para separar os eventos selecionados em diferentes grupos para processamento exclusivo como um grupo. O elemento <groupingKey> define a chave de agrupamento de uma regra. A finalidade do elemento <groupingKey> é direcionar a regra para criar uma instância de regra separada (ou uma cópia de si mesma) para cada grupo de eventos que compartilham características comuns (conforme definido pelos valores de seus atributos que compõem a chave de agrupamento).

Detalhes

Os dois cenários a seguir ilustram a importância da chave de agrupamento.

Cenário 1:
Ocorrem dois eventos, um evento DB2down e um evento DB2up. O programa DB2 é executado em três computadores denominados A, B e C. Uma regra de seqüência é definida para correlacionar um evento DB2down dentro de um evento DB2up e para alertar o operador quando o programa DB2 pára e não reinicia.

Se a regra de seqüência for definida sem a chave de agrupamento e um evento DB2down for recebido do computador A, um evento DB2up de qualquer um dos computadores completará a seqüência, mas não realizará o que foi planejado. No entanto, se a chave de agrupamento tiver sido definida como o atributo de nome do host, uma cópia ou instância exclusiva da regra seria criada para cada valor exclusivo do atributo de nome do host nos eventos selecionados. O mecanismo da Tecnologia ACT enviaria cada evento para a instância de regra correta (a instância de regra do valor de nome do host desse evento). Portanto, se um evento DB2down for recebido do computador A, o mecanismo da Tecnologia ACT criará uma instância de regra para o computador A. Se um evento DB2down for recebido do computador B, o mecanismo da Tecnologia ACT criará uma segunda instância de regra para o computador B. Quando um evento DB2up for recebido do computador B, o mecanismo da Tecnologia ACT processará esse evento na segunda instância da regra. A seqüência estará completa e o operador será alertado porque os eventos DB2down e DB2up do computador B estão correlacionados corretamente.

Cenário 2:
Ocorre um evento para uma mensagem Tentativa incorreta de login em todos os computadores de um determinado ambiente. O evento contém um ID de usuário. É definida uma regra de limite para emitir um aviso ao operador se esse evento ocorrer mais de 10 vezes em 5 minutos.

Uma chave de agrupamento poderia ser definida como o ID de usuário. Em seguida, uma nova instância de regra seria criada para cada ID de usuário exclusivo. As tentativas de login de cada usuário seriam acompanhadas em uma instância de regra de limite exclusiva, com cada instância tendo uma conta separada do número de tentativas de login desse usuário. O operador receberia um aviso se algum ID de usuário excedesse 10 logins incorretos em 5 minutos.

Outras variações dessa idéia incluem:
  • A chave de agrupamento poderia ser definida como o nome do host, em vez de o ID de usuário. Essa opção poderia detectar um grande número de tentativas incorretas de login em um único computador.
  • A chave de agrupamento poderia ser definida como uma combinação do nome do host e do ID de usuário. Essa opção poderia detectar tentativas potenciais de hack por um ID de usuário específico em um computador específico.

Se o mesmo atributo estiver em todos os tipos de eventos especificados para uma regra, o uso do elemento <attributeName> será a maneira mais simples e mais comum de definir uma chave de agrupamento.

Atributos

<groupingKey> possui o seguinte atributo:

Tabela 1. Atributos do Elemento <groupingKey>
Nome Descrição Tipo de dado Obrigatório?
missingAttributeHandling Define a ação que a regra deve executar sob uma destas condições:
  • Quando um evento selecionado possuir um atributo que participa da chave de agrupamento, mas o valor desse atributo está ausente
  • Quando a expressão no elemento <computedValue> retornar um valor nulo. A regra tratará este valor nulo como um valor de atributo ausente.
Os valores válidos para o atributo missingAttributeHandling são:
  • ignoreEvent (o valor padrão), significando que a regra ignorará o evento e não executará ação nele.
  • ignoreAttribute, significando que a regra aceitará o evento, mas ignorará o atributo com o valor ausente. O mecanismo da Tecnologia ACT incluirá, então, um valor substituto para o atributo.
xsd:string Não

Contido em

<groupingKey> está contido nos seguintes elementos:

Contém

<groupingKey> contém os elementos a seguir.

Tabela 2. Elementos Contidos no Elemento <groupingKey>
Elemento Obrigatório ou opcional?
<attributeAlias> 1 desses elementos é obrigatório. Codificar mais de 1 desses elementos é opcional. São permitidas várias ocorrências dos três elementos. Esses elementos podem ser codificados em qualquer ordem.
<attributeName>
<computedValue>