Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Use a fase de filtro num fluxo de dados para eliminar mensagens que correspondam a uma condição. Quando uma expressão de filtro é avaliada como verdadeira, a mensagem é descartada. Quando a expressão é avaliada como falsa, a mensagem passa para a fase seguinte.
Podes definir várias regras de filtro. Cada regra especifica campos de entrada e uma expressão booleana. As regras usam lógica OR: se alguma regra for avaliada como verdadeira, a mensagem é descartada.
Configurar um filtro
Cada regra de filtro tem as seguintes propriedades:
| Propriedade | Obrigatório | Descrição |
|---|---|---|
inputs |
Sim | Lista de caminhos de campo a ler da mensagem recebida. Variáveis posicionais atribuídas: a primeira entrada é $1, a segunda é $2, e assim sucessivamente. |
expression |
Sim | A expressão booleana é avaliada em relação a cada mensagem. Se for verdade, a mensagem é descartada. |
description |
No | Descrição legível para humanos da regra do filtro. |
Usar o último valor conhecido
Adicione ? $last a uma entrada para usar o último valor conhecido quando o campo estiver em falta na mensagem atual. Esta abordagem é útil para dados esparsos onde nem todas as mensagens contêm todos os campos.
Exemplos
Filtrar por um limiar
Eliminar mensagens em que a temperatura esteja a 20 ou abaixo.
- Experiência em operações
- CLI do Azure
- Bíceps
- Kubernetes (apenas depuração)
Em Transformar (opcional), selecione Adicionar filtro>.
Introduza as seguintes definições:
Configuração Descrição Condição do filtro temperature <= 20Descrição Eliminar leituras de baixa temperatura No campo de condição do filtro, insira
@ou selecione Ctrl + Espaço para escolher pontos de dados em uma lista suspensa.Selecione Aplicar.
Filtro com o último valor conhecido
Use o último valor de temperatura conhecido se a mensagem atual não o incluir. Descartar mensagens em que a última temperatura conhecida é 20 ou inferior.
- Experiência em operações
- CLI do Azure
- Bíceps
- Kubernetes (apenas depuração)
No campo de condição do filtro, introduza @temperature ? $last <= 20.
Filtro com múltiplas condições
Eliminar mensagens onde o produto da temperatura e da humidade é 100.000 ou mais.
- Experiência em operações
- CLI do Azure
- Bíceps
- Kubernetes (apenas depuração)
No campo de condição do filtro, introduza @temperature * @humidity >= 100000.
Filtrar com dados enriquecidos
Se configurou um conjunto de dados de enriquecimento, pode usar campos enriquecidos em condições de filtro. Por exemplo, filtre contra um limite específico de dispositivo a partir de um conjunto de dados de armazenamento de estados:
- Experiência em operações
- CLI do Azure
- Bíceps
- Kubernetes (apenas depuração)
Atualmente, a filtragem baseada em enriquecimento não está disponível na experiência operacional.
Este exemplo elimina mensagens do armazenamento de estados onde a temperatura excede o máximo permitido pelo dispositivo.
Múltiplas regras de filtro
Podes definir várias regras de filtro. Todas as regras usam lógica OR: se alguma regra for avaliada como verdadeira, a mensagem é descartada:
- Experiência em operações
- CLI do Azure
- Bíceps
- Kubernetes (apenas depuração)
Em Transformar (opcional), selecione Adicionar Filtro> várias vezes para adicionar regras de filtro adicionais.