

 O Amazon Redshift não permitirá mais a criação de UDFs do Python a partir do Patch 198. As UDFs do Python existentes continuarão a funcionar normalmente até 30 de junho de 2026. Para ter mais informações, consulte a [publicação de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Regras de monitoramento de consulta do WLM
<a name="cm-c-wlm-query-monitoring-rules"></a>

No gerenciador de workload (WLM) do Amazon Redshift, as regras de monitoramento de consulta definem limites de performance baseados em métricas para filas WLM e especificam qual ação tomar quando uma consulta ultrapassa esses limites. Por exemplo, para uma fila dedicada a consultas rápidas, convém criar uma regra que cancele consultas executadas por mais de 60 segundos. Para acompanhar consultas mal projetadas, convém ter outra regra que registre consultas que contenham loops aninhados. 

Você define regras de monitoramento de consultas como parte da configuração do Workload Management (WLM – Gerenciamento do workload). É possível definir até 25 regras para cada fila, com um limite de 25 regras para todas as filas. Cada regra inclui até três condições, ou predicados, e uma ação. Um *predicado* consiste em uma métrica, uma condição de comparação (=, < ou > ) e um valor. Se todos os predicados para qualquer regra forem atendidos, a ação dessa regra será disparada. As ações de regra possíveis são registrar em log, saltar e anular, conforme abordado a seguir. 

As regras em uma determinada fila se aplicam somente a consultas em execução nessa fila. A regra independe de outras regras. 

O WLM avalia métricas a cada 10 segundos. O Amazon Redshift aplica regras de monitoramento de consultas no nível de consulta secundária quando as consultas são reescritas automaticamente. Se mais de uma regra for acionada, o WLM escolherá a regra com a ação mais grave. Se a ação para duas regras tiver a mesma gravidade, o WLM executará as regras em ordem alfabética, com base no nome da regra. Se a ação for saltar ou anular, a ação será registrada, e a consulta será removida da fila. Se a ação for registrar em log, a consulta continuará sendo executada na fila. O WLM inicia somente uma ação de registrar em log por consulta por regra. Se a fila contiver outras regras, essas regras permanecerão em vigor. Se a ação for saltar e a consulta for roteada para outra fila, as regras para a nova fila se aplicarão. Para obter mais informações sobre ações de monitoramento e rastreamento realizadas em consultas específicas, consulte o conjunto de exemplos em [Aceleração de consulta breve](wlm-short-query-acceleration.md).

Quando todos os predicados de uma regra são atendidos, o WLM grava uma linha na tabela do sistema [STL\$1WLM\$1RULE\$1ACTION](r_STL_WLM_RULE_ACTION.md). Além disso, o Amazon Redshift registra métricas de consulta para consultas em execução no momento em [STV\$1QUERY\$1METRICS](r_STV_QUERY_METRICS.md). As métricas para consultas concluídas são armazenadas em [STL\$1QUERY\$1METRICS](r_STL_QUERY_METRICS.md). 

**nota**  
Para o Amazon Redshift sem servidor, é possível configurar filas de consultas e regras de monitoramento usando o parâmetro `wlm_json_configuration`. Isso permite criar várias filas com diferentes perfis de usuário, grupos de consultas e regras de monitoramento. Para ter mais informações sobre como configurar filas de consultas sem servidor, consulte [Configurar filas de consultas](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-workgroup-query-queues.html) no *Guia de gerenciamento do Amazon Redshift*.

## Definir uma regra de monitoramento de consultas
<a name="cm-c-wlm-defining-query-monitoring-rules"></a>

Você cria regras de monitoramento de consulta como parte da configuração do WLM, estabelecida como parte da definição do grupo de parâmetro do cluster.

Você pode criar regras usando o Console de gerenciamento da AWS ou programaticamente usando JSON. 

**nota**  
Se você optar por criar regras programaticamente, será altamente recomendável usar o console para gerar o JSON incluído por você na definição do parameter group. Para ter mais informações, consulte [Criar uma regra de monitoramento de consulta](https://docs.aws.amazon.com/redshift/latest/mgmt/parameter-group-modify-qmr-console.html) e [Configuring Parameter Values Using the AWS CLI](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html#configure-parameters-using-the-cli) no *Guia de gerenciamento do Amazon Redshift*. 

Para definir uma regra de monitoramento da consulta, você especifica os seguintes elementos:
+ Um nome de regra – Os nomes de regra devem ser exclusivos na configuração do WLM. Os nomes de regra podem ter até 32 caracteres alfanuméricos ou sublinhados e não podem conter espaços ou aspas. Pode haver até 25 regras por fila e o limite total para todas as filas é de 25 regras.
+ Um ou mais predicados – Você pode ter até três predicados por regra. Se todos os predicados para qualquer regra forem atendidos, a ação associada será disparada. Um predicado é definido por um nome de métrica, um operador ( =, < ou > ) e um valor. Um exemplo é `query_cpu_time > 100000`. Para obter uma lista de métricas e exemplos de valores para métricas diferentes, consulte [Métricas de monitoramento de consultas para o Amazon Redshift provisionado](#cm-c-wlm-query-monitoring-metrics) posteriormente nesta seção. 
+ Uma ação – Se mais de uma regra for acionada, o WLM escolherá a regra com a ação mais severa. As ações possíveis, em ordem crescente de gravidade, são:
  + Log – Registra informações sobre a consulta na tabela de sistema STL\$1WLM\$1RULE\$1ACTION. Use a ação de registrar em log quando você quiser gravar somente um registro de log. O WLM cria no máximo um log por consulta, por regra. Depois de uma ação de registrar em log, outras regras permanecerão em vigor e o WLM continuará monitorando a consulta. 
  + Saltar (disponível apenas com WLM manual) – Registra a ação e salta a consulta para a próxima fila correspondente. Se não houver outra fila correspondente, a consulta será cancelada. O QMR salta somente instruções [CREATE TABLE AS](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_TABLE_AS.html) (CTAS) e consultas somente leitura, como instruções SELECT. Para obter mais informações, consulte [Salto na fila de consultas do WLM](wlm-queue-hopping.md). 
  + Abort (Anular): registra a ação e encerra a consulta. A QMR não interrompe as instruções COPY e as operações de manutenção, como ALTER, ANALYZE e VACUUM. 
  + Alterar prioridade (disponível apenas com WLM automático) – Altera a prioridade de uma consulta. 

Para limitar o tempo de execução de consultas, recomendamos a criação de uma regra de monitoramento de consulta em vez de usar o tempo limite do WLM. Por exemplo, é possível definir `max_execution_time` como 50.000 milissegundos, conforme mostrado no trecho de JSON a seguir.

```
"max_execution_time": 50000
```

Mas, em vez disso, recomendamos que você defina uma regra de monitoramento de consultas equivalente. O seguinte exemplo demonstra uma regra de monitoramento de consultas que define `query_execution_time` como 50 segundos:

```
"rules": 
[
    {
        "rule_name": "rule_query_execution",
        "predicate": [
            {
                "metric_name": "query_execution_time",
                "operator": ">",
                "value": 50
            }
        ],
        "action": "abort"
    }            
]
```

Para ver as etapas de como criar ou modificar uma regra de monitoramento de consultas, consulte [Criar uma regra de monitoramento de consulta](https://docs.aws.amazon.com/redshift/latest/mgmt/parameter-group-modify-qmr-console.html) e [Propriedades referentes ao parâmetro de configuração do WLM](https://docs.aws.amazon.com/redshift/latest/mgmt/workload-mgmt-config.html#wlm-json-config-properties) no *Guia de gerenciamento do Amazon Redshift*.

Você pode encontrar mais informações sobre regras de monitoramento de consulta nos seguintes tópicos: 
+  [Métricas de monitoramento de consultas para o Amazon Redshift provisionado](#cm-c-wlm-query-monitoring-metrics) 
+  [Modelos de regras de monitoramento de consulta](#cm-c-wlm-query-monitoring-templates) 
+  [Criar uma regra de monitoramento de consulta](https://docs.aws.amazon.com/redshift/latest/mgmt/parameter-group-modify-qmr-console.html) 
+  [Configurar gerenciamento do workload](https://docs.aws.amazon.com/redshift/latest/mgmt/workload-mgmt-config.html) 
+  [Tabelas de sistema e visualizações para regras de monitoramento de consultas](#cm-c-wlm-qmr-tables-and-views) 

## Métricas de monitoramento de consultas para o Amazon Redshift provisionado
<a name="cm-c-wlm-query-monitoring-metrics"></a>

A tabela a seguir descreve as métricas usadas em regras de monitoramento de consulta. (Essas métricas são diferentes das métricas armazenadas nas tabelas de sistema [STV\$1QUERY\$1METRICS](r_STV_QUERY_METRICS.md) e [STL\$1QUERY\$1METRICS](r_STL_QUERY_METRICS.md).) 

Para uma determinada métrica, o limite de performance é acompanhado no nível de consulta ou no nível de segmento. Para obter mais informações sobre segmentos e etapas, consulte [Planejamento de consulta e fluxo de trabalho de execução](c-query-planning.md).

**nota**  
O parâmetro [Tempo limite do WLM](cm-c-defining-query-queues.md#wlm-timeout) é diferente das regras de monitoramento de consulta.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/redshift/latest/dg/cm-c-wlm-query-monitoring-rules.html)

**nota**  
Não há suporte para a ação de salto com o predicado `query_queue_time`. Ou seja, as regras definidas para saltar quando um predicado `query_queue_time` é atendido são ignoradas. 
Os tempos de execução de segmento curto podem resultar em erros de amostragem com algumas métricas, como `io_skew` e `query_cpu_usage_percent`. Para evitar ou reduzir erros de amostragem, inclua o tempo de execução do segmento nas regras. Um bom ponto de partida é `segment_execution_time > 10`.

A exibição [SVL\$1QUERY\$1METRICS](r_SVL_QUERY_METRICS.md) mostra as métricas de consultas concluídas. A exibição [SVL\$1QUERY\$1METRICS\$1SUMMARY](r_SVL_QUERY_METRICS_SUMMARY.md) mostra os valores máximos de métricas de consultas concluídas. Use os valores nessas exibições como um auxílio para determinar os valores limite para definir regras de monitoramento de consultas.

## Métricas de monitoramento de consultas para o Amazon Redshift Serverless
<a name="cm-c-wlm-query-monitoring-metrics-serverless"></a>

A tabela a seguir descreve as métricas usadas em regras de monitoramento de consulta para o Amazon Redshift Serverless. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/redshift/latest/dg/cm-c-wlm-query-monitoring-rules.html)

**nota**  
Não há suporte para a ação de salto com o predicado `max_query_queue_time`. Ou seja, as regras definidas para saltar quando um predicado `max_query_queue_time` é atendido são ignoradas. 
Os tempos de execução de segmento curto podem resultar em erros de amostragem com algumas métricas, como `max_io_skew` e `max_query_cpu_usage_percent`.

Para o Amazon Redshift sem servidor, é possível configurar filas de consultas e regras de monitoramento usando o parâmetro `wlm_json_configuration`. Isso permite criar várias filas com diferentes perfis de usuário, grupos de consultas e regras de monitoramento usando as métricas listadas acima. Para ter mais informações sobre como configurar filas de consultas sem servidor, consulte [Regras de monitoramento de consulta do WLM](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-workgroup-query-queues.html#serverless-wlm-json-configuration) no *Guia de gerenciamento do Amazon Redshift*.

## Modelos de regras de monitoramento de consulta
<a name="cm-c-wlm-query-monitoring-templates"></a>

Ao adicionar uma regra usando o console do Amazon Redshift, você pode optar por criar uma regra com base em um modelo predefinido. O Amazon Redshift cria uma nova regra com um conjunto de predicados e preenche os predicados com valores padrão. A ação padrão é registrar em log. Você pode modificar os predicados e a ação para atender ao caso de uso. 

A tabela a seguir lista os modelos disponíveis. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/redshift/latest/dg/cm-c-wlm-query-monitoring-rules.html)

## Tabelas de sistema e visualizações para regras de monitoramento de consultas
<a name="cm-c-wlm-qmr-tables-and-views"></a>

Quando todos os predicados de uma regra são atendidos, o WLM grava uma linha na tabela do sistema [STL\$1WLM\$1RULE\$1ACTION](r_STL_WLM_RULE_ACTION.md). Essa linha contém detalhes sobre a consulta que acionou a regra a ação resultante. 

Além disso, o Amazon Redshift registra as métricas de consulta nas tabelas e visualizações do sistema a seguir.
+ A tabela [STV\$1QUERY\$1METRICS](r_STV_QUERY_METRICS.md) exibe as métricas de consultas em execução no momento.
+ A tabela [STL\$1QUERY\$1METRICS](r_STL_QUERY_METRICS.md) registra as métricas de consultas concluídas. 
+ A exibição [SVL\$1QUERY\$1METRICS](r_SVL_QUERY_METRICS.md) mostra as métricas de consultas concluídas. 
+ A exibição [SVL\$1QUERY\$1METRICS\$1SUMMARY](r_SVL_QUERY_METRICS_SUMMARY.md) mostra os valores máximos de métricas de consultas concluídas.