Todos os produtos
Search
Central de documentação

Simple Log Service:Configuração de saída dos resultados da transformação de dados

Última atualização: Jul 06, 2026

Configure os destinos de saída para os conjuntos de dados produzidos por uma tarefa de transformação de dados (nova versão), incluindo o roteamento dinâmico para projetos ou Logstores e a atribuição de chave hash no nível do shard.

Visão geral dos conjuntos de dados

Uma tarefa de transformação de dados (nova versão) referencia conjuntos de dados definidos em regras SPL e os grava em um ou mais destinos de saída. Conjuntos de dados nomeados são referenciados pelo nome, enquanto conjuntos sem nome utilizam o identificador __UNNAMED__. Para obter mais informações sobre definições de conjuntos de dados na sintaxe SPL do Simple Log Service, consulte Referência Geral.

Exemplo

Neste exemplo, a tarefa de transformação de dados produz dois conjuntos de dados: valid e __UNNAMED__.

-- Output unnamed dataset __UNNAMED__
*
| where mode is null;

-- Define named dataset src, do not output
.let src = *
| where mode is not null;

-- Define dataset valid, do not output
.let valid = $src
| where mode = 'a'
| parse-regexp content, '(\S+)\s+(\S+)\s+(\S+)' as x, y, z
| project x, y, z;

-- Output named dataset valid
$valid;

-- Output unnamed dataset __UNNAMED__
$src
| where mode = 'b'
| parse-csv content as u, v
| project u, v;

Saída dinâmica para um projeto ou Logstore

Use regras SPL para rotear dinamicamente a saída para um projeto ou Logstore específico. Os campos reservados a seguir controlam esse roteamento:

Campo reservado

Descrição

__tag__:__sls_etl_output_project__

Especifique o projeto de destino para a saída dinâmica.

__tag__:__sls_etl_output_logstore__

Especifique o Logstore de destino para a saída dinâmica.

Aviso

Não configure o armazenamento de destino como o armazenamento de origem atual (configuração de mesma origem). Caso contrário, os logs podem ser gravados em loop, gerando custos adicionais de armazenamento e tráfego. Você é responsável pelo consumo de recursos e pelos custos incorridos.

Exemplos

  • Exemplo 1: Especifique o projeto de destino do resultado da transformação de dados como o valor do campo dst_project.

    | extend "__tag__:__sls_etl_output_project__"=dst_project

  • Exemplo 2: Defina o Logstore de destino do resultado da transformação de dados como uma string concatenada.

    | extend "__tag__:__sls_etl_output_logstore__"=concat('log-', cast(status as VARCHAR))

Especificação de uma chave hash para saída

Use regras SPL para especificar uma chave hash que roteie os resultados da transformação de dados para um shard específico em um Logstore. Para obter mais informações sobre o roteamento de shards com chaves hash, consulte Gravar Logs.

__tag__:__sls_etl_output_hash_key__: Chave hash usada para rotear a saída para um shard específico no Logstore de destino.

Exemplo: Restringir intervalo de hash (recomendado para produção)

Em ambientes de produção, para acomodar um número fixo de partições de consumo downstream (como 256 ou 1.024), recomenda-se truncar o valor hash e preenchê-lo com um sufixo fixo para convergir as chaves hash para um intervalo específico.

Cenário: Convergência para 256 pontos de ancoragem de shard fixos

Trunque o hash MD5 para os primeiros 2 caracteres e preencha os 30 caracteres restantes com zeros. Essa abordagem garante a gravação dos dados sempre em 256 limites de hash fixos, independentemente do volume, o que facilita o processamento agregado na transformação de dados e melhora a eficiência do processamento.

| extend "__tag__:__sls_etl_output_hash_key__" = concat(substring(to_hex(md5(to_utf8(field))), 1, 2), '000000000000000000000000000000')