Todos os produtos
Search
Central de documentação

Simple Log Service:Funções de operação de campo

Última atualização: Sep 12, 2026

Este tópico descreve a sintaxe, os parâmetros e exemplos das funções de operação de campo.

Lista de funções

Função

Descrição

v

Obtém o valor de um campo de log específico. Se você passar vários nomes de campo, a função retornará o valor do primeiro campo existente no log.

É possível usar esta função com outras funções. Para mais informações, consulte Cleanse data by calling functions.

e_set

Adiciona um novo campo ou define um novo valor para um campo existente.

É possível usar esta função com outras funções. Para mais informações, consulte Cleanse data by calling functions.

e_drop_fields

Exclui campos de log que atendem às condições especificadas.

É possível usar esta função com outras funções. Para mais informações, consulte Transform complex JSON data.

e_keep_fields

Retém campos de log que atendem às condições especificadas.

e_pack_fields

Agrupa campos de log e gera a saída em um novo campo.

e_rename

Renomeia campos de log que atendem às condições especificadas.

É possível usar esta função com outras funções. Para mais informações, consulte Cleanse data by calling functions.

v

Use a função v para recuperar o valor de um campo de log específico. Se você especificar vários nomes de campo, a função retornará o valor do primeiro campo existente no log.

  • Sintaxe

    v(key, ..., default=None)
  • Parâmetros

    Parâmetro

    Tipo de parâmetro

    Obrigatório

    Descrição

    key

    String

    Sim

    Insira um nome para o campo.

    default

    Qualquer

    Não

    Se o nome do campo especificado não existir, a função retornará o valor de default. O valor padrão é None.

  • Resposta

    Retorna o valor do primeiro campo existente no log. Se nenhum dos campos especificados existir, a função retornará o valor do parâmetro default.

  • Exemplos

    Atribua o valor do campo content ao campo test_content.

    • Log bruto

      content: hello
    • Regra de transformação

      e_set("test_content", v("content"))
    • Resultado

      content: hello
      test_content: hello
  • Referências

    É possível usar esta função com outras funções. Para mais informações, consulte Cleanse data by calling functions.

e_set

Use a função e_set para adicionar um novo campo ou definir um novo valor para um campo existente.

  • Sintaxe

    e_set(key1, value1, key2, value2, mode="overwrite")
    Importante
    • Especifique os parâmetros key1 e value1 em pares.

    • Ao usar a função e_set para definir um campo de tempo, como F_TIME ou __time__, o valor deve ser uma string numérica.

      e_set(F_TIME, "abc")   # Incorrect
      e_set(F_TIME, "12345678")   # Correct
  • Parâmetros

    Parâmetro

    Tipo de parâmetro

    Obrigatório

    Descrição

    key

    String

    Sim

    Nome do campo de destino. Também é possível obter o nome do campo a partir de uma expressão de string. Para mais informações sobre como definir nomes de campos especiais, consulte Event types.

    value

    Qualquer

    Sim

    Novo valor do campo. Valores que não são strings são convertidos em strings e adicionados ao log. Tuplas, listas e dicionários são convertidos em strings de objeto JSON. Para mais informações sobre conversão de strings, consulte Automatic type conversion during assignment.

    Nota

    Se o valor passado for None, nenhuma atualização será realizada.

    mode

    String

    Não

    Modo de sobrescrita de campo. O valor padrão é overwrite. Para mais informações, consulte Field extraction check and overwrite modes.

  • Resposta

    Retorna o log atualizado.

  • Exemplos

    • Exemplo 1: Definir um valor estático para um campo.

      Adicione um novo campo chamado city e defina seu valor como Shanghai.

      e_set("city", "Shanghai")
    • Exemplo 2: Copiar o valor de um campo.

      Use uma única função de expressão para atribuir o valor do campo ret existente ao novo campo result.

      e_set("result", v("ret"))
    • Exemplo 3: Definir um valor dinâmico.

      Use uma função de expressão composta para recuperar o valor do primeiro campo existente, convertê-lo para minúsculas e atribuí-lo ao campo result.

      e_set("result", str_lower(v("ret", "return")))
    • Exemplo 4: Definir o valor de um campo várias vezes.

      1. Defina o valor do campo event_type.

        e_set("event_type", "login event", "event_info", "login host")
      2. Se o valor do campo ret for fail, defina o valor do campo event_type como login failed event.

        e_if(e_search('ret==fail'), e_set("event_type", "login failed event" ))
    • Referências

      É possível usar esta função com outras funções. Para mais informações, consulte Cleanse data by calling functions.

e_drop_fields

Use a função e_drop_fields para excluir campos de log que atendem às condições especificadas.

  • Sintaxe

    e_drop_fields(key1, key2, ....,regex=False)
  • Parâmetros

    Parâmetro

    Tipo de parâmetro

    Obrigatório

    Descrição

    key

    String

    Sim

    Nome do campo de log. Pode ser uma expressão regular. Se o nome do campo corresponder totalmente à condição, o campo será excluído. Os campos que não correspondem são retidos. Para mais informações sobre expressões regulares, consulte Regular expressions.

    Configure pelo menos um campo de log.

    regex

    Booleano

    Não

    Se este parâmetro for definido como False, as expressões regulares não serão usadas para correspondência. Se este parâmetro não for configurado, o valor padrão será True.

  • Resposta

    Retorna o log após a exclusão dos campos.

  • Exemplos

    Se o valor do campo content for 123, exclua os campos content e age.

    • Log bruto

      age: 18
      content: 123
      name: twiss
    • Regra de transformação

      e_if(e_search("content==123"), e_drop_fields("content", "age",regex=True))
    • Resultado

      name: twiss
  • Referências

    É possível usar esta função com outras funções. Para mais informações, consulte Transform complex JSON data.

e_keep_fields

Use a função e_keep_fields para reter campos de log que atendem às condições especificadas.

Nota

O Simple Log Service inclui campos de metadados integrados, como __time__ e __topic__. Se você não reter o campo __time__ ao chamar a função e_keep_fields, o horário do log será redefinido para o horário atual do sistema. Para evitar a redefinição dos valores dos campos de metadados, adicione-os à lista. O formato comum é F_TIME, F_META, F_TAGS, "f1", "f2". Para mais informações, consulte Fixed identifiers.

  • Sintaxe

    e_keep_fields(key1, key2, ....,regex=False)
  • Parâmetros

    Parâmetro

    Tipo de parâmetro

    Obrigatório

    Descrição

    key

    String

    Sim

    Nome do campo de log. Pode ser uma expressão regular. Se o nome do campo corresponder totalmente à condição, o campo será retido. Os campos que não correspondem são excluídos.

    Configure pelo menos um campo.

    regex

    Booleano

    Não

    Se este parâmetro for definido como False, as expressões regulares não serão usadas para correspondência. Se este parâmetro não for configurado, o valor padrão será True.

  • Resposta

    Retorna os logs retidos.

  • Exemplos

    Se o valor do campo content for 123, retenha os campos content e age.

    • Log bruto

      age: 18
      content: 123
      name: twiss
    • Regra de transformação

      e_if(e_search("content==123"), e_keep_fields("content", "age"))
    • Resultado

      age: 18
      content: 123

e_pack_fields

Use a função e_pack_fields para agrupar campos de log e gerar a saída em um novo campo.

  • Sintaxe

    e_pack_fields(output_fields,include=".*",exclude=None,drop_packed=True)
  • Parâmetros

    Parâmetro

    Tipo

    Obrigatório

    Descrição

    output_field

    String

    Sim

    Nome do campo de saída após o agrupamento. Seu valor está no formato JSON.

    include

    String

    Não

    Configuração da lista de permissões. Os campos que correspondem à expressão regular são agrupados. O valor padrão é ".*", o que indica que todos os campos correspondem. Para mais informações, consulte Regular expressions.

    exclude

    String

    Não

    Configuração da lista de bloqueios. Os campos que correspondem à expressão regular não são agrupados. O valor padrão é None, o que indica que nenhuma correspondência é realizada. Para mais informações, consulte Regular expressions.

    drop_packed

    Booleano

    Não

    Define se os dados originais agrupados devem ser excluídos. O valor padrão é True.

    • True (padrão): Os dados originais agrupados são excluídos da saída.

    • False: Os dados originais agrupados não são excluídos da saída.

  • Resposta

    Retorna os dados de log agrupados.

  • Exemplos

    • Exemplo 1: Agrupar todos os campos de log no campo test. Por padrão, os campos agrupados originais são excluídos.

      • Log bruto

        test1:123
        test2:456
        test3:789
      • Regra de transformação

        e_pack_fields("test")
      • Resultado

        test:{"test1": "123", "test2": "456", "test3": "789"}
    • Exemplo 2: Agrupar todos os campos de log no campo test. Os campos agrupados originais não são excluídos.

      • Log bruto

        test1:123
        test2:456
        test3:789
      • Regra de transformação

        e_pack_fields("test",drop_packed=False)
      • Resultado

        test:{"test1": "123", "test2": "456", "test3": "789"}
        test1:123
        test2:456
        test3:789
    • Exemplo 3: Agrupar os campos test e abcd no campo content. Os campos agrupados originais não são excluídos.

      • Log bruto

        abcd@#%:123
        test:456
        abcd:789
      • Regra de transformação

        e_pack_fields("content", include="\w+", drop_packed=False)
      • Resultado

        abcd:789
        abcd@#%:123
        content:{"test": "456", "abcd": "789"}
        test:456
    • Exemplo 4: Agrupar todos os campos, exceto test e abcd, no campo content. Os campos agrupados originais são excluídos.

      • Log bruto

        abcd@#%:123
        test:456
        abcd:789
      • Regra de transformação

        e_pack_fields("content", exclude="\w+", drop_packed=True)
      • Resultado

        abcd:789
        content:{"abcd@#%": "123"}
        test:456

e_rename

Use a função e_rename para renomear campos de log que atendem às condições especificadas.

  • Sintaxe

    e_rename("key1", "new key1", "key2", "new key2", ..., regex=False)
    Nota

    Especifique os parâmetros key e new key em pares. Se a new key já existir no log de source, nenhuma operação será realizada.

  • Parâmetros

    Parâmetro

    Tipo de parâmetro

    Obrigatório

    Descrição

    key

    String

    Sim

    Nome do campo de log. Pode ser uma expressão regular. Se o nome do campo corresponder totalmente à condição, o campo será renomeado. Para mais informações sobre expressões regulares, consulte Regular expressions.

    Configure pelo menos um campo.

    new key

    String

    Sim

    Novo nome do campo.

    regex

    Booleano

    Não

    Se este parâmetro for definido como False, as expressões regulares não serão usadas para correspondência. Se este parâmetro não for configurado, o valor padrão será True.

  • Resposta

    Retorna o campo renomeado.

  • Exemplos

    • Exemplo 1: Renomear o campo host para client_host.

      • Log bruto

        host: 1006
      • Regra de transformação

        e_rename("host","client_host")
      • Resultado

        client_host: 1006
    • Exemplo 2: Se o campo não existir, ele não será renomeado.

      • Log bruto

        host: 1006
      • Regra de transformação

        e_rename("url","rename_url")
      • Resultado

        host: 1006
    • Referências

      É possível usar esta função com outras funções. Para mais informações, consulte Cleanse data by calling functions.