Todos os produtos
Search
Central de documentação

Simple Log Service:Funções de string

Última atualização: Jul 04, 2026

Este tópico explica a sintaxe básica e apresenta exemplos de funções de string.

O Log Service oferece suporte às seguintes funções de string.

Importante

Para usar strings em instruções analíticas, coloque-as entre aspas simples (''). Strings sem aspas ou entre aspas duplas ("") indicam nomes de campos ou colunas. Por exemplo,

'status'

indica a string status, enquanto

status

ou

"status"

indica o campo de log status.

Função

Sintaxe

Descrição

SQL

SPL

Função chr

chr(x)

Converte um código ASCII em caractere.

√

√

Função codepoint

codepoint(x)

Converte um caractere em código ASCII.

√

√

Função concat

concat(x, y...)

Concatena várias strings.

√

√

Função from_utf8

from_utf8(x)

Decodifica uma string binária como texto UTF-8 e substitui caracteres inválidos pelo caractere de substituição padrão (U+FFFD).

√

√

from_utf8(x, replace_string)

Decodifica uma string binária como texto UTF-8 e substitui caracteres inválidos por uma string personalizada.

√

√

Função length

length(x)

Retorna o comprimento de uma string.

√

√

Função levenshtein_distance

levenshtein_distance(x, y)

Calcula a distância mínima de edição entre x e y.

√

×

Função lower

lower(x)

Converte uma string para minúsculas.

√

√

Função lpad

lpad(x, length, lpad_string)

Preenche o início de uma string com outra string especificada até atingir o comprimento definido.

√

√

Função ltrim

ltrim(x)

Remove espaços em branco à esquerda de uma string.

√

√

Função normalize

normalize(x)

Normaliza uma string para a forma NFC.

√

×

Função position

position(sub_string in x)

Retorna a posição inicial da primeira ocorrência de uma substring em outra string.

√

×

Função replace

replace(x, sub_string )

Remove todas as ocorrências de uma substring especificada de uma string.

√

√

replace(x, sub_string, replace_string)

Substitui todas as ocorrências de uma substring especificada por uma string de substituição.

√

√

Função reverse

reverse(x)

Inverte uma string.

√

√

Função rpad

rpad(x, length, rpad_string)

Preenche o final de uma string com outra string especificada até atingir o comprimento definido.

√

√

Função rtrim

rtrim(x)

Remove espaços em branco à direita de uma string.

√

√

Função split

split(x, delimiter)

Divide uma string por um delimitador e retorna um array de substrings.

√

√

split(x, delimiter, limit)

Divide uma string por um separador especificado, usa o parâmetro limit para restringir o número de divisões e retorna um array das substrings resultantes.

√

√

Função split_part

split_part(x, delimiter, part)

Divide uma string por um delimitador e retorna a substring na posição especificada.

√

√

Função split_to_map

split_to_map(x, delimiter01, delimiter02)

Divide uma string em um mapa de pares chave-valor usando dois delimitadores.

√

√

Função strpos

strpos(x, sub_string)

Alias para position(sub_string in x).

√

√

Função substr

substr(x, start)

Extrai uma substring de uma string a partir de uma posição especificada.

√

√

substr(x, start, length)

Extrai uma substring com comprimento especificado de uma string a partir de uma posição definida.

√

√

Função to_utf8

to_utf8(x)

Codifica uma string em formato binário UTF-8.

√

√

Função trim

trim(x)

Remove espaços em branco à esquerda e à direita de uma string.

√

√

Função upper

upper(x)

Converte uma string para maiúsculas.

√

√

Função csv_extract_map

csv_extract_map(x, delimiter, quote, keys)

Extrai valores especificados de uma linha de texto CSV para um mapa.

√

×

Função ilike

ilike(x, pattern)

Verifica se uma string corresponde a um padrão, sem diferenciar maiúsculas de minúsculas.

√

√

Função str_uuid

str_uuid()

Gera um UUID aleatório de 128 bits e o retorna como string.

×

√

Função gzip_compress

gzip_compress(data, compression_level)

Comprime uma string em um fluxo binário usando o algoritmo GZIP.

×

√

Função gzip_decompress

gzip_decompress(binary_data)

Descomprime um fluxo binário comprimido com GZIP e retorna a string original.

×

√

Função search

search(search_expression)

Executa uma busca de texto completo em dados de log dentro de uma instrução analítica SQL. Suporta operações booleanas, buscas específicas de campos, consultas difusas e consultas de intervalo.

√

×

Função chr

A função chr converte um código ASCII em caractere.

Sintaxe

chr(x)

Parâmetros

Parâmetro

Descrição

x

O código ASCII.

Tipo de retorno

varchar.

Exemplo

Verifique se a primeira letra do valor do campo region é 'c', onde 99 é o código ASCII da letra minúscula 'c'.

  • Campo de amostra

    region:cn-shanghai
  • Instrução de consulta e análise (Testar)

    * | SELECT
      substr(region, 1, 1) = chr(99)
  • Resultados da consulta e análise: O valor retornado na coluna _col0 é true, indicando que o primeiro caractere do campo region corresponde a chr(99) (caractere c).

Função codepoint

A função codepoint converte um caractere em código ASCII.

Sintaxe

codepoint(x)

Parâmetros

Parâmetro

Descrição

x

O caractere a converter. Deve ser do tipo varchar.

Tipo de valor de retorno

integer.

Exemplo

Verifique se a primeira letra do valor do campo region é 'c', onde 99 é o código ASCII da letra minúscula 'c'.

  • Campo de amostra

    upstream_status:200
  • Instrução de consulta (Testar)

    * | SELECT
      codepoint(cast (substr(region, 1, 1) AS char(1))) = 99
  • Resultados da consulta e análise: A coluna _col0 retorna duas linhas de dados, ambas com valor true.

Função concat

Concatena várias strings em uma única string.

Sintaxe

concat(x, y...)

Parâmetros

Parâmetro

Descrição

x

Valor varchar.

y

Valor varchar.

Tipo de valor de retorno

varchar.

Exemplo

Concatene os valores dos campos region e request_method em uma única string.

  • Campos de amostra

    region:cn-shanghai
    time:14/Jul/2021:02:19:40
  • Instrução de consulta e análise (Testar)

    * | SELECT
      concat(region, '-', time)
  • Nos resultados da consulta e análise, a coluna _col0 retorna uma string concatenada, como cn-shanghai-14/Jul/2021:01:16:30.

Função from_utf8

Decodifica uma string binária para o formato UTF-8.

Sintaxe

  • Substitui caracteres UTF-8 inválidos pelo caractere de substituição padrão U+FFFD.

    from_utf8(x)
  • Substitui caracteres UTF-8 inválidos por um caractere especificado.

    from_utf8(x,replace_string)

Parâmetros

Parâmetro

Descrição

x

String binária a decodificar.

replace_string

Caractere único opcional ou espaço usado para substituir caracteres UTF-8 inválidos.

Tipo de valor de retorno

varchar

Exemplos

  • Decodifique a string binária 0x80 e substitua caracteres UTF-8 inválidos pelo caractere de substituição padrão (U+FFFD).

    • Instrução de consulta e análise (Depurar)

      * | SELECT
        from_utf8(from_base64('0x80'))
    • Resultados da consulta e análise: A consulta retorna uma única coluna _col0. O valor é uma string contendo o caractere de substituição (U+FFFD), indicando que bytes UTF-8 inválidos foram substituídos pelo caractere padrão.

  • Decodifique a string binária 0x80 e substitua caracteres UTF-8 inválidos por '0'.

    • Instrução de consulta e análise (Depurar)

      * | SELECT
        from_utf8(from_base64('0x80'), '0')
    • Os resultados retornam uma única coluna chamada _col0 com o valor 0□4. O quadrado representa um byte não renderizável, gerado pela função from_utf8 ao substituir um byte UTF-8 inválido.

Função length

Retorna o comprimento de uma string.

Sintaxe

length(x)

Parâmetros

Parâmetro

Descrição

x

Valor varchar.

Valor de retorno

bigint

Exemplo

Calcule o comprimento do valor do campo http_user_agent.

  • Campo de amostra

    http_user_agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2
  • Instrução de consulta (Testar)

    * | SELECT
      length(http_user_agent)
  • O resultado da consulta e análise é 127, representando o comprimento da string do campo http_user_agent.

Função levenshtein_distance

Calcula a distância mínima de edição entre duas strings.

Sintaxe

levenshtein_distance(x, y)

Parâmetros

Parâmetro

Descrição

x

Valor varchar.

y

Valor varchar.

Valor de retorno

bigint.

Exemplo

Consulte a distância mínima de edição entre os valores dos campos instance_id e owner_id.

  • Campos de amostra

    instance_id:i-01
    owner_id:owner-01
  • Instrução de consulta e análise (Depurar)

    * | SELECT
      levenshtein_distance(owner_id, instance_id)
  • O resultado da consulta e análise é 5.

Função lower

Converte uma string para minúsculas.

Sintaxe

lower(x)

Parâmetros

Parâmetro

Descrição

x

String varchar.

Tipo de retorno

varchar

Exemplo

Converta o valor do campo request_method para minúsculas.

  • Campo de amostra

    request_method:GET
  • Instrução de consulta e análise (Depurar)

    * | SELECT
      lower(request_method)
  • O resultado da consulta e análise é get.

Função lpad

A função lpad preenche uma string à esquerda com caracteres especificados até um comprimento definido.

Sintaxe

lpad(x, length, lpad_string)

Parâmetros

Parâmetro

Descrição

x

Valor do tipo varchar.

length

Inteiro que especifica o comprimento desejado da string resultante.

  • Se a string original for menor que length, a função a preencherá à esquerda.

  • Se a string original for maior que length, a função a truncará para length caracteres.

lpad_string

Caractere ou string usada para preenchimento.

Tipo de retorno

varchar

Exemplo

Preencha o valor do campo instance_id com zeros à esquerda até completar 10 dígitos.

  • Campo de amostra

    instance_id:i-01
  • Instrução de consulta (Testar)

    * | SELECT
      lpad(instance_id, 10, '0')
  • Nos resultados da consulta e análise, o valor da coluna _col0 é 000000i-01.

Função ltrim

Remove espaços à esquerda de uma string.

Sintaxe

ltrim(x)

Parâmetros

Parâmetro

Descrição

x

String de entrada. Deve ser do tipo varchar.

Tipo de valor de retorno

varchar

Exemplo

Remova os espaços à esquerda do valor do campo region.

  • Campo de amostra

    region: cn-shanghai
  • Instrução de consulta e análise (Testar)

    * | SELECT
      ltrim(region)
  • O resultado é cn-shanghai.

Função normalize

Normaliza uma string usando o formato Normalization Form C (NFC).

Sintaxe

normalize(x)

Parâmetros

Parâmetro

Descrição

x

String varchar a normalizar.

Tipo de valor de retorno

varchar.

Exemplo

Este exemplo normaliza a string schön usando o formato NFC.

  • Instrução de consulta (Depurar)

    * | SELECT
      normalize('schön')
  • Os resultados retornam uma linha e uma coluna. O nome da coluna é _col0 e o valor é schön.

Função position

Retorna a posição inicial de uma substring dentro de uma string.

Sintaxe

position(sub_string in x)

Parâmetros

Parâmetro

Descrição

sub_string

Substring a pesquisar.

x

String onde pesquisar. Deve ser do tipo varchar.

Tipo de valor de retorno

Inteiro representando a posição inicial baseada em 1 da substring. Retorna 0 se a substring não for encontrada.

Exemplo

Encontre a posição da substring cn no campo region.

  • Campo de amostra

    region:cn-shanghai
  • Instrução de consulta e análise (Testar)

    * | SELECT
      position('cn' in region)
  • Resultados da consulta e análise: A coluna _col0 retorna 1, indicando que a substring cn começa na posição 1 da string cn-shanghai.

Função replace

A função replace remove ou substitui todas as ocorrências de uma substring especificada em uma string.

Sintaxe

  • Remove todas as ocorrências de uma substring de uma string.

    replace(x, sub_string)
  • Substitui todas as ocorrências de uma substring por outra string.

    replace(x, sub_string, replace_string)

Parâmetros

Parâmetro

Descrição

x

String de source. Deve ser varchar.

sub_string

Substring a remover ou substituir.

replace_string

String de substituição.

Tipo de valor de retorno

varchar

Exemplos

  • Exemplo 1: No valor do campo region, substitua cn por China.

    • Campo de amostra

      region:cn-shanghai
    • Instrução de consulta e análise (Depurar)

      * | select
        replace(region, 'cn', '中国')
    • Nos resultados da consulta e análise, o valor da coluna _col0 é China-shanghai.

  • Exemplo 2: Remova cn- do valor do campo region.

    • Campo de amostra

      region:cn-shanghai
    • Instrução de consulta e análise (Depurar)

      * | select
        replace(region, 'cn-')
    • O resultado da consulta e análise é shanghai.

Função reverse

A função reverse retorna uma string com seus caracteres em ordem inversa.

Sintaxe

reverse(x)

Parâmetros

Parâmetro

Descrição

x

String de entrada. Deve ser do tipo varchar.

Tipo de valor de retorno

varchar

Exemplo

Inverta o valor do campo request_method.

  • Campo de amostra

    request_method:GET
  • Instrução de consulta (Testar)

    * | SELECT
      reverse(request_method)
  • O resultado é TEG.

Função rpad

Preenche uma string à direita com caracteres especificados até um comprimento definido.

Sintaxe

rpad(x, length, rpad_string)

Parâmetros

Parâmetro

Descrição

x

String de source. Deve ser do tipo varchar.

length

Comprimento desejado da string resultante, especificado como inteiro.

  • Se a string original for menor que length, a função a preencherá à direita.

  • Se a string original for maior que length, a função a truncará para length caracteres.

rpad_string

Caractere ou string usada para preenchimento.

Tipo de valor de retorno

varchar.

Exemplo

O exemplo a seguir preenche o valor do campo instance_id com zeros à direita até completar 10 caracteres.

  • Campo de amostra

    instance_id:i-01
  • Instrução de consulta (Depurar)

    * | SELECT
      rpad(instance_id, 10, '0')
  • Resultados da consulta e análise: A coluna _col0 retorna o valor i-01000000.

Função rtrim

Remove espaços à direita de uma string.

Sintaxe

rtrim(x)

Parâmetros

Parâmetro

Descrição

x

String de source. Deve ser varchar.

Tipo de retorno

varchar

Exemplo

Esta consulta remove espaços à direita do valor do campo instance_id.

  • Campo de amostra

    instance_id:i-01 
  • Instrução de consulta (Depurar)

    * | SELECT
      rtrim(instance_id)
  • Resultados da consulta e análise: O valor da coluna _col0 é i-01.

Função split

A função split divide uma string em um array de substrings usando um separador.

Sintaxe

  • Divide uma string por um separador.

    split(x, delimiter)
  • Divide uma string por um separador em um número máximo de substrings.

    split(x,delimiter,limit)

Parâmetros

Parâmetro

Descrição

x

String varchar a dividir.

delimiter

Delimitador usado para dividir a string.

limit

Número máximo de substrings a retornar. Deve ser um inteiro positivo.

Tipo de valor de retorno

array

Exemplos

  • Exemplo 1: Divida o valor do campo request_uri em quatro substrings usando barra (/) e retorne um array dessas substrings.

    • Campo de amostra

      request_uri:/request/path-1/file-9
    • Instrução de consulta e análise (Testar)

      * | SELECT
        split(request_uri, '/')
    • Resultados da consulta e análise: A consulta retorna ["" ,"request","path-1","file-9"], que é o array criado pela divisão de request_uri por /.

  • Exemplo 2: Use barra (/) para dividir o valor do campo request_uri em 3 substrings e retorne uma coleção das substrings.

    • Campo de amostra

      request_uri:/request/path-1/file-9
    • Instrução de consulta e análise (Testar)

      * | SELECT
        split(request_uri, '/', 3)
    • Nos resultados da consulta e análise, o valor da coluna _col0 é ["","request","path-1/file-9"].

Função split_part

Divide uma string por um separador especificado e retorna a substring no índice especificado.

Sintaxe

split_part(x, delimiter, part)

Parâmetros

Parâmetro

Descrição

x

String a dividir. Deve ser varchar.

delimiter

String não vazia usada como separador.

part

Expressão inteira especificando o índice baseado em 1 da substring a retornar. Deve ser maior que 0.

Valor de retorno

varchar

Exemplo

Divida o valor do campo request_uri usando ponto de interrogação (?) e retorne a primeira substring (caminho do arquivo). Em seguida, conte o número de solicitações para cada caminho.

  • Campos de amostra

    request_uri: /request/path-2/file-6?name=value&age=18
    request_uri: /request/path-2/file-0?name=value&age=18
    request_uri: /request/path-3/file-2?name=value&age=18
  • Instrução de consulta (Testar)

    * | SELECT
      count(*) AS PV,
      split_part(request_uri, '?', 1) AS Path
    GROUP BY
      Path
    ORDER BY
      pv DESC
  • Resultados da consulta e análise: /request/path-2/file-6 tem PV 49, /request/path-2/file-0 tem PV 47 e /request/path-3/file-2 tem PV 44.

Função split_to_map

A função split_to_map analisa uma string de pares chave-valor em um mapa usando dois delimitadores.

Sintaxe

split_to_map(x, delimiter01, delimiter02)

Parâmetros

Parâmetro

Descrição

x

String de entrada a analisar. Deve ser varchar.

delimiter01

Delimitador que separa os pares chave-valor.

delimiter02

Delimitador que separa a chave do valor em cada par.

Tipo de retorno

map

Exemplo

Use vírgula (,) e dois pontos (:) para dividir o valor do campo time e retornar um MAP.

  • Campo de amostra

    upstream_response_time:"80",request_time:"40"
  • Instrução de consulta e análise

    * | SELECT
      split_to_map(time, ',', ':')
  • A função retorna um mapa exibido nos resultados em formato JSON: {"request_time":"\"40\"","upstream_response_time":"\"80\""}.

Função strpos

A função strpos retorna a posição inicial de uma substring em uma string. É um alias para a função position.

Sintaxe

strpos(x, sub_string)

Parâmetros

Parâmetro

Descrição

x

String de source a pesquisar. Deve ser varchar.

sub_string

Substring a pesquisar.

Tipo de valor de retorno

Inteiro representando a posição inicial baseada em 1 da substring. Retorna 0 se a substring não for encontrada.

Exemplo

Este exemplo encontra a posição do caractere 'H' no campo server_protocol.

  • Instrução de consulta (Testar)

    * | SELECT
      strpos(server_protocol, 'H')
  • Resultados da consulta e análise: A coluna _col0 retorna duas linhas de dados, ambas com valor 1, indicando que a primeira ocorrência do caractere H no campo server_protocol está na posição 1.

Função substr

A função substr extrai uma substring de uma string a partir de uma posição especificada.

Sintaxe

  • Extrai uma substring de uma posição inicial especificada até o final da string.

    substr(x, start)
  • Extrai uma substring com comprimento especificado de uma string a partir de uma posição definida.

    substr(x,start,length)

Parâmetros

Parâmetro

Descrição

x

String de source. Deve ser do tipo varchar.

start

Posição inicial baseada em 1 para extração.

length

Inteiro opcional especificando o número de caracteres a extrair. Se omitido, a função extrai todos os caracteres da posição start até o final da string.

Tipo de valor de retorno

varchar.

Exemplo

Extraia os primeiros 4 caracteres do valor do campo server_protocol (parte HTTP) e conte o número de solicitações HTTP.

  • Campo de amostra

    server_protocol:HTTP/2.0
  • Instrução de consulta (Testar)

    * | SELECT
      substr(server_protocol, 1, 4) AS protocol,
      count(*) AS count
    GROUP BY
      protocol
  • Nos resultados da consulta e análise, o valor da coluna protocol é HTTP e o valor da coluna count é 9078.

Função to_utf8

Codifica uma string para representação binária UTF-8.

Sintaxe

to_utf8(x)

Parâmetros

Parâmetro

Descrição

x

String a codificar. Deve ser varchar.

Tipo de valor de retorno

varbinary

Exemplo

Codifique a string 'log' para o formato UTF-8.

  • Instrução de consulta (Testar)

    * | SELECT
      to_utf8('log')
  • Nos resultados da consulta e análise, o valor da coluna _col0 é bG9n.

Função trim

Remove espaços à esquerda e à direita de uma string.

Sintaxe

trim(x)

Parâmetros

Parâmetro

Descrição

x

String de entrada. Deve ser varchar.

Tipo de retorno

varchar

Exemplo

Remova os espaços à esquerda e à direita do valor do campo instance_id.

  • Campo de amostra

    instance_id: i-01 
  • Instrução de consulta e análise (Testar)

    * | SELECT
      trim(instance_id)
  • Resultados da consulta e análise: i-01

Função upper

Converte uma string para maiúsculas.

Sintaxe

upper(x)

Parâmetros

Parâmetro

Descrição

x

Valor do tipo varchar.

Tipo de valor de retorno

varchar

Exemplo

Este exemplo converte o valor do campo region para maiúsculas.

  • Campo de amostra

    region:cn-shanghai
  • Instrução de consulta (Testar)

    * | SELECT
      upper(region)
  • O resultado da consulta e análise é CN-SHANGHAI.

Função csv_extract_map

A função csv_extract_map analisa uma string CSV de linha única e retorna um mapa.

Sintaxe

csv_extract_map(x, delimiter, quote, keys)

Parâmetros

Parâmetro

Descrição

x

String varchar contendo o texto CSV de linha única.

delimiter

Caractere varchar único que separa valores na string.

quote

Caractere varchar único usado para envolver valores.

keys

Array de strings definindo os nomes das chaves para os valores extraídos. O número de chaves deve corresponder ao número de valores na string CSV. Caso contrário, a função retorna null.

Tipo de valor de retorno

map(varchar, varchar)

Exemplo

Este exemplo extrai informações CSV do campo content.

  • Campo de amostra

    content: '192.168.0.100,"10/Jun/2019:11:32:16,127 +0800",example.aliyundoc.com'
  • Instrução de consulta

    select csv_extract_map(content, ',', '"', array['ip', 'time', 'host']) as item
  • Dados de saída

    A consulta retorna o seguinte registro JSON: {"ip":"192.168.0.100","host":"example.aliyundoc.com","time":"10/Jun/2019:11:32:16,127 +0800"}.

Função ilike

Verifica se uma string corresponde a um padrão especificado, sem diferenciar maiúsculas de minúsculas.

Sintaxe

ilike(x, pattern)

Parâmetros

Parâmetro

Descrição

x

String a avaliar. Deve ser do tipo varchar.

pattern

Padrão de caracteres. Pode incluir os seguintes curingas:

  • O sinal de porcentagem (%) corresponde a qualquer sequência de zero ou mais caracteres.

  • O sublinhado (_) corresponde a um único caractere.

Tipo de retorno

boolean

Exemplo

Este exemplo verifica se o valor de request_uri termina com file-6.

  • Campo de amostra

request_uri: '/request/path-2/File-6'
  • Instrução de consulta

select ilike(request_uri, '%file-6')
  • Resultados da consulta e análise

O resultado da consulta e análise é true, indicando que request_uri termina com file-6.

str_uuid

A função str_uuid() retorna um identificador aleatório de 128 bits como string.

Sintaxe

str_uuid()

Valor de retorno

  • Tipo de valor de retorno: VARCHAR

  • Formato: String de 36 caracteres com 32 dígitos hexadecimais e 4 hifens -.

  • Estrutura: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Exemplo

Para gerar um grande lote de identificadores únicos em um ambiente de teste simulado:

* | extend uuid = str_uuid()

Função gzip_compress

A função gzip_compress comprime uma string usando o algoritmo GZIP e retorna dados binários comprimidos.

Sintaxe

-- Method 1: Default compression level (6)
gzip_compress(data)
-- Method 2: Specify compression level
gzip_compress(data, compression_level)

Parâmetros

Parâmetro

Tipo

Descrição

data

VARCHAR

String a comprimir.

compression_level

BIGINT

Nível de compressão, inteiro opcional de 1 a 9.

Valor de retorno

  • Tipo de valor de retorno: VARBINARY

  • Descrição: Dados binários comprimidos.

Exemplos

  • Exemplo 1: Compressão básica

    * | extend compress_data =  gzip_compress('Hello World')
  • Exemplo 2: Obter compressão máxima para texto grande

    Para maximizar a compressão de um log grande (dezenas de milhares de caracteres) e economizar espaço de armazenamento, use o nível 9:

    * | extend compress_data =  gzip_compress('Hello World',9)

gzip_decompress

gzip_decompress descomprime dados binários comprimidos com GZIP (Varbinary) e retorna o conteúdo original em texto simples.

Sintaxe

gzip_decompress(binary_data)

Parâmetros

binary_data deve conter dados válidos comprimidos com GZIP, normalmente gerados pela função gzip_compress. Se a entrada não estiver no formato GZIP padrão, a função retorna NULL.

Valor de retorno

  • Tipo de valor de retorno: VARCHAR

  • Descrição: Conteúdo original em texto simples após descompressão.

Exemplo

  • Pipeline simples de compressão e descompressão:

    * | extend original_content =  gzip_decompress(gzip_compress('Hello SLS!'))
    -- Output: "Hello SLS!"

Função search

A função search executa uma busca de texto completo em dados de log em uma instrução analítica SQL. Como função SQL padrão, suporta condições de consulta complexas, incluindo operações booleanas, consultas de campo, consultas difusas e consultas de intervalo.

Limitações

Limitação

Descrição

Limite por subconsulta

Use apenas uma função search() em cada subconsulta (SELECT subjacente). Para múltiplas condições de consulta, combine-as em uma única chamada search(), por exemplo, search('error AND timeout').

Limite do operador OR

A função search() não pode ser combinada com o operador SQL OR. No entanto, use o operador OR dentro da função search(). Por exemplo, search('error OR warning') é permitido.

Um índice é criado e não está no modo de varredura.

A função search não é suportada no modo de varredura.

Conflito de sintaxe de consulta

Não use a função search quando a entrada de sintaxe de consulta contiver condições de filtro reais. Use esta função apenas quando a entrada de sintaxe de consulta estiver vazia ou for *.

Tipo de parâmetro

O parâmetro da função search() deve ser um literal de string. A função não suporta valores dinâmicos, como referências de coluna, variáveis ou expressões de função.

Número de parâmetros

A função deve receber exatamente um parâmetro.

Sintaxe

search(search_expression)

Uso em uma instrução analítica SQL:

* | SELECT ... FROM log WHERE search('search_expression')

Importante: A função search só pode ser usada na cláusula WHERE.

Parâmetros

Parâmetro

Descrição

search_expression

A search_expression é um literal de string representando a expressão de consulta. Deve estar em total conformidade com a sintaxe de consulta do SLS e fornece os mesmos recursos descritos em Sintaxe e recursos de consulta, como consultas de texto completo, consultas de campo, operações booleanas, consultas difusas e consultas de intervalo.

Tipo de valor de retorno

BOOLEAN. true indica que a linha atual corresponde à condição de consulta; false indica que não corresponde.

Exemplos

  • Exemplo 1: Encontre logs contendo tanto error quanto timeout.

    * | SELECT * FROM log WHERE search('error AND timeout')
  • Exemplo 2: Encontre logs onde o campo status seja 200.

    * | SELECT * FROM log WHERE search('status: 200')
  • Exemplo 3: Combine a função search() com um predicado SQL para encontrar logs onde status seja 200 e request_time seja maior que 100.

    * | SELECT * FROM log
        WHERE search('status: 200') AND request_time > 100

    Para mais informações, consulte Usar a função search para realizar uma busca de texto completo.