Todos os produtos
Search
Central de documentação

Simple Log Service:CreateLogtailPipelineConfig

Última atualização: Jun 28, 2026

Cria uma configuração de pipeline do Logtail.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

A tabela abaixo descreve a autorização necessária para chamar esta API. Você pode defini-la em uma política do Resource Access Management (RAM). As colunas da tabela estão detalhadas abaixo:

  • Ação: As ações que podem ser usadas no elemento Action das instruções de política de permissão do RAM para conceder permissões para executar a operação.

  • API: A API que você pode chamar para executar a ação.

  • Nível de acesso: O nível de acesso predefinido concedido para cada API. Valores válidos: create, list, get, update e delete.

  • Tipo de recurso: O tipo de recurso que suporta autorização para executar a ação. Indica se a ação suporta permissão em nível de recurso. O recurso especificado deve ser compatível com a ação. Caso contrário, a política será ineficaz.

    • Para APIs com permissões em nível de recurso, os tipos de recursos obrigatórios são marcados com um asterisco (*). Especifique o Nome de Recurso Alibaba Cloud (ARN) correspondente no elemento Resource da política.

    • Para APIs sem permissões em nível de recurso, é exibido como Todos os Recursos. Use um asterisco (*) no elemento Resource da política.

  • Chave de condição: As chaves de condição definidas pelo serviço. A chave permite controle granular, aplicando-se somente a ações ou a ações associadas a recursos específicos. Além das chaves de condição específicas do serviço, o Alibaba Cloud fornece um conjunto de chaves de condição comuns aplicáveis a todos os serviços compatíveis com RAM.

  • Ação dependente: As ações dependentes necessárias para executar a ação. Para concluir a ação, o usuário RAM ou a função RAM deve ter permissões para executar todas as ações dependentes.

Ação

Nível de acesso

Tipo de recurso

Chave de condição

Ação dependente

log:CreateLogtailPipelineConfig

create

*All Resource

*

  • log:TLSVersion
Nenhuma

Sintaxe da solicitação

POST /pipelineconfigs HTTP/1.1

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

project

string

Sim

O nome do projeto.

test-project

body

object

Não

O conteúdo da configuração de pipeline do Logtail.

configName

string

Sim

O nome da configuração.

Nota

O nome da configuração deve ser exclusivo dentro do projeto e não pode ser modificado após a criação da configuração. O nome deve seguir estas regras:

  • Pode conter apenas letras minúsculas, dígitos, hifens (-) e underscores (_).

  • Deve começar e terminar com uma letra minúscula ou um dígito.

  • Deve ter de 2 a 128 caracteres de comprimento.

test-config

logSample

string

Não

Um log de exemplo. Múltiplas entradas de log são suportadas.

2022-06-14 11:13:29.796 | DEBUG | __main__::1 - hello world

global

object

Não

A configuração global.

inputs

array<object>

Sim

A lista de plugins de entrada.

Importante Atualmente, você pode configurar apenas um plugin de entrada.

object

Não

O plugin de entrada.

Nota

Para informações sobre os parâmetros do plugin de entrada de arquivo, consulte Plugin de arquivo. Para informações sobre os parâmetros de outros plugins de entrada, consulte Plugins de processamento.

{ "Type": "input_file", "FilePaths": ["/var/log/*.log"] }

processors

array<object>

Não

A lista de plugins de processamento.

Nota

Os plugins de processamento são classificados em plugins de processamento nativos e plugins de processamento de extensão. Para mais informações, consulte Plugins de processamento.

Importante
Nota
  • Plugins nativos podem ser usados apenas para coletar logs de texto.

  • Você não pode adicionar plugins nativos e plugins de extensão ao mesmo tempo.

  • Ao usar plugins nativos, os seguintes requisitos devem ser atendidos:

    • O primeiro plugin de processamento deve ser um plugin de análise baseado em expressão regular, um plugin de análise baseado em separador, um plugin de análise baseado em JSON, um plugin de análise baseado em NGINX, um plugin de análise baseado em Apache ou um plugin de análise baseado em IIS.

    • Após o primeiro plugin de processamento, você pode adicionar apenas um plugin de processamento de análise de tempo, um plugin de filtro e múltiplos plugins de mascaramento de dados.

object

Não

O plugin de processamento.

Nota

Para mais informações sobre plugins de processamento nativos e de extensão, consulte Plugins de processamento.

{ "Type": "processor_parse_json_native", "SourceKey": "content" }

aggregators

array<object>

Não

A lista de plugins de agregação.

Importante Este parâmetro é válido apenas quando você usa plugins de processamento de extensão. Você pode usar no máximo um plugin de agregação.

object

Não

O plugin de agregação.

flushers

array<object>

Sim

A lista de plugins de saída.

Importante Atualmente, você pode adicionar apenas um plugin flusher_sls.

object

Não

O plugin de saída.

{ "Type": "flusher_sls", "Logstore": "test" }

task

object

Não

A configuração da tarefa.

Configuração global

ParâmetroTipoObrigatórioValor padrãoExemploDescrição
TopicTypestringNãoNonefilepathO tipo de tópico. Valores válidos:* filepath: extrai informações do caminho do arquivo de log como tópico. Este valor é válido apenas quando o plugin de entrada é input_file.
* machine_group_topic: usa o tópico do grupo de máquinas ao qual a configuração é aplicada.
* custom: um tópico personalizado. Para mais informações, consulte Tópico de log.
TopicFormatstringNão. Este parâmetro é obrigatório se você definir TopicType como filepath ou custom.//var/log/(.*).logO formato do tópico.
EnableTimestampNanosecondboolNãofalsefalseEspecifica se a precisão de nanossegundos deve ser ativada para timestamps.
PipelineMetaTagKeyobjectNãoNone{"HOST_NAME":"hostname"}
Importante Este parâmetro é suportado apenas pelo LoongCollector 3.0.10 e versões posteriores.
Controla as tags relacionadas às informações do LoongCollector. A chave é o nome do parâmetro da tag, e o valor é o nome do campo da tag no log. Se você definir o valor como default, o valor padrão será usado. Se você definir o valor como uma string vazia, a tag será excluída. As seguintes tags podem ser configuradas:* HOST_NAME: o hostname. Esta tag é adicionada por padrão. O valor padrão é "__hostname__".
* AGENT_TAG: o identificador personalizado. Esta tag é adicionada por padrão. O valor padrão é "__user_defined_id__".
* HOST_ID: o ID do host. Esta tag não é adicionada por padrão. O valor padrão é "__host_id__".
* CLOUD_PROVIDER: Esta tag não é adicionada por padrão. O valor padrão é "__cloud_provider__".

Plugins de entrada.

Plugin de entrada de arquivo

ParâmetroTipoObrigatórioValor padrãoExemploDescrição
TypestringSim/input_fileO tipo do plugin. Defina o valor como input_file.
FilePaths[string]Sim/["/var/log/*.log"]Os caminhos dos arquivos de log que você deseja coletar. Atualmente, apenas um caminho é suportado. Você pode usar os caracteres curinga (*) e () no caminho. O caractere curinga de duplo asterisco () pode aparecer apenas uma vez e pode ser usado apenas antes do nome do arquivo.
MaxDirSearchDepthuintNão00A profundidade máxima dos diretórios correspondidos pelo caractere curinga de duplo asterisco () em um caminho de arquivo. Este parâmetro é válido apenas quando um caminho de arquivo contém o caractere curinga de duplo asterisco (). Valores válidos: 0 a 1000.
ExcludeFilePaths[string]NãoNone["/home/admin/*.log"]A lista negra de caminhos de arquivo. Os caminhos devem ser caminhos absolutos. O caractere curinga (*) é suportado.
ExcludeFiles[string]NãoNone["app*.log", "password"]A lista negra de nomes de arquivo. O caractere curinga (*) é suportado.
ExcludeDirs[string]NãoNone["/home/admin/dir1", "/home/admin/dir2*"]A lista negra de diretórios. Os caminhos devem ser caminhos absolutos. O caractere curinga (*) é suportado.
FileEncodingstringNãoutf8utf8O formato de codificação do arquivo. Valores válidos: utf8 e gbk.
TailSizeKBuintNão10241024O tamanho dos dados a serem coletados do final de um arquivo quando a configuração é aplicada pela primeira vez. Se o tamanho do arquivo for menor que o valor especificado, os dados são coletados do início do arquivo. Unidade: KB. Valores válidos: 0 a 10485760.
MultilineobjectNãoNone/As opções de agregação de log multilinha.
Multiline.ModestringNãocustomcustomO modo de agregação de log multilinha. Valores válidos: custom e JSON.
Multiline.StartPatternstringObrigatório se Multiline.Mode for definido como customNone\d+-\d+-\d+.*A expressão regular para corresponder à primeira linha de um log multilinha.
EnableContainerDiscoveryboolNãofalsetrueEspecifica se a descoberta de contêineres deve ser ativada. Este parâmetro é válido apenas quando o Logtail é executado no modo DaemonSet e o caminho de coleta é um caminho dentro de um contêiner.
ContainerFiltersobjectNãoNone/As opções de filtragem de contêineres. Múltiplas opções são combinadas usando o operador AND. Este parâmetro é válido apenas se você definir EnableContainerDiscovery como true.
ContainerFilters.K8sNamespaceRegexstringNãoNonedefaultPara contêineres em um ambiente Kubernetes, especifica o namespace dos pods onde os contêineres a serem coletados residem. Se você não especificar este parâmetro, todos os contêineres serão coletados. Expressões regulares são suportadas.
ContainerFilters.K8sPodRegexstringNãoNonetest-podPara contêineres em um ambiente Kubernetes, especifica os nomes dos pods onde os contêineres a serem coletados residem. Se você não especificar este parâmetro, todos os contêineres serão coletados. Expressões regulares são suportadas.
ContainerFilters.IncludeK8sLabelmapNãoNone/Para contêineres em um ambiente Kubernetes, especifica os labels dos pods onde os contêineres a serem coletados residem. Múltiplas condições são combinadas usando o operador OR. Se você não especificar este parâmetro, todos os contêineres serão coletados. Expressões regulares são suportadas. A chave no map é o nome do label do pod, e o valor é o valor do label do pod. As seguintes regras se aplicam:* Se o valor no map estiver vazio, os pods que contêm a chave serão correspondidos.
* Se o valor no map não estiver vazio:
- Se o valor começar com ^ e terminar com $, os pods que tiverem um nome de label correspondente à chave e um valor de label correspondente à expressão regular serão correspondidos.
- Em outros casos, os pods que tiverem um nome de label correspondente à chave e um valor de label correspondente ao valor serão correspondidos.
ContainerFilters.ExcludeK8sLabelmapNãoNone/Para contêineres em um ambiente Kubernetes, especifica os labels dos pods onde os contêineres a serem excluídos residem. Múltiplas condições são combinadas usando o operador OR. Se você não especificar este parâmetro, todos os contêineres serão coletados. Expressões regulares são suportadas. A chave no map é o nome do label do pod, e o valor é o valor do label do pod. As seguintes regras se aplicam:* Se o valor no map estiver vazio, os pods que contêm a chave serão correspondidos.
* Se o valor no map não estiver vazio:
- Se o valor começar com ^ e terminar com $, os pods que tiverem um nome de label correspondente à chave e um valor de label correspondente à expressão regular serão correspondidos.
- Em outros casos, os pods que tiverem um nome de label correspondente à chave e um valor de label correspondente ao valor serão correspondidos.
ContainerFilters.K8sContainerRegexstringNãoNonetest-containerPara contêineres em um ambiente Kubernetes, especifica os nomes dos contêineres a serem coletados. Se você não especificar este parâmetro, todos os contêineres serão coletados. Expressões regulares são suportadas.
ContainerFilters.IncludeEnvmapNãoNone/As variáveis de ambiente dos contêineres a serem coletados. Múltiplas condições são combinadas usando o operador OR. Se você não especificar este parâmetro, todos os contêineres serão coletados. Expressões regulares são suportadas. A chave no map é o nome da variável de ambiente, e o valor é o valor da variável de ambiente. As seguintes regras se aplicam:* Se o valor no map estiver vazio, os contêineres cujas variáveis de ambiente contêm a chave serão correspondidos.
* Se o valor no map não estiver vazio:
- Se o valor começar com ^ e terminar com $, os contêineres que tiverem um nome de variável de ambiente correspondente à chave e um valor de variável de ambiente correspondente à expressão regular serão correspondidos.
- Em outros casos, os contêineres que tiverem um nome de variável de ambiente correspondente à chave e um valor de variável de ambiente correspondente ao valor serão correspondidos.
ContainerFilters.ExcludeEnvmapNãoNone/As variáveis de ambiente dos contêineres a serem excluídos. Múltiplas condições são combinadas usando o operador OR. Se você não especificar este parâmetro, todos os contêineres serão coletados. Expressões regulares são suportadas. A chave no map é o nome da variável de ambiente, e o valor é o valor da variável de ambiente. As seguintes regras se aplicam:* Se o valor no map estiver vazio, os contêineres cujas variáveis de ambiente contêm a chave serão correspondidos.
* Se o valor no map não estiver vazio:
- Se o valor começar com ^ e terminar com $, os contêineres que tiverem um nome de variável de ambiente correspondente à chave e um valor de variável de ambiente correspondente à expressão regular serão correspondidos.
- Em outros casos, os contêineres que tiverem um nome de variável de ambiente correspondente à chave e um valor de variável de ambiente correspondente ao valor serão correspondidos.
ContainerFilters.IncludeContainerLabelmapNãoNone/Os labels dos contêineres a serem coletados. Múltiplas condições são combinadas usando o operador OR. Se você não especificar este parâmetro, o valor padrão é vazio, o que indica que todos os contêineres serão coletados. Expressões regulares são suportadas. A chave no map é o nome do label do contêiner, e o valor é o valor do label do contêiner. As seguintes regras se aplicam:* Se o valor no map estiver vazio, os contêineres que contêm a chave serão correspondidos.
* Se o valor no map não estiver vazio:
- Se o valor começar com ^ e terminar com $, os contêineres que tiverem um nome de label correspondente à chave e um valor de label correspondente à expressão regular serão correspondidos.
- Em outros casos, os contêineres que tiverem um nome de label correspondente à chave e um valor de label correspondente ao valor serão correspondidos.
ContainerFilters.ExcludeContainerLabelmapNãoNone/Os labels dos contêineres a serem excluídos. Múltiplas condições são combinadas usando o operador OR. Se você não especificar este parâmetro, o valor padrão é vazio, o que indica que todos os contêineres serão coletados. Expressões regulares são suportadas. A chave no map é o nome do label do contêiner, e o valor é o valor do label do contêiner. As seguintes regras se aplicam:* Se o valor no map estiver vazio, os contêineres que contêm a chave serão correspondidos.
* Se o valor no map não estiver vazio:
- Se o valor começar com ^ e terminar com $, os contêineres que tiverem um nome de label correspondente à chave e um valor de label correspondente à expressão regular serão correspondidos.
- Em outros casos, os contêineres que tiverem um nome de label correspondente à chave e um valor de label correspondente ao valor serão correspondidos.
ExternalK8sLabelTagmapNãoNone/Para contêineres em um ambiente Kubernetes, especifica as tags relacionadas a labels de pod que você deseja adicionar aos logs. A chave no map é o nome do label do pod, e o valor é o nome da tag correspondente. Por exemplo, se você adicionar app: k8s_label_app ao map e um pod contiver o label app=serviceA, a informação será adicionada ao log como uma tag. O campo adicionado é __tag__:k8s_label_app: serviceA. Se o pod não contiver o label app, o campo vazio __tag__:k8s_label_app: será adicionado.
ExternalEnvTagmapNãoNone/Para contêineres em um ambiente Kubernetes, especifica as tags relacionadas a variáveis de ambiente do contêiner que você deseja adicionar aos logs. A chave no map é o nome da variável de ambiente, e o valor é o nome da tag correspondente. Por exemplo, se você adicionar VERSION: env_version ao map e um contêiner tiver a variável de ambiente VERSION=v1.0.0, a informação será adicionada ao log como uma tag. O campo adicionado é __tag__:env_version: v1.0.0. Se o contêiner não tiver a variável de ambiente VERSION, o campo vazio __tag__:env_version: será adicionado.
CollectingContainersMetaboolNãofalsetrueEspecifica se a pré-visualização de metadados do contêiner deve ser ativada.
AppendingLogPositionMetaboolNãofalsefalseEspecifica se os metadados do arquivo ao qual o log pertence devem ser adicionados. Os metadados incluem o campo tag:inode e o campo file_offset.
AllowingIncludedByMultiConfigsboolNãofalsefalseEspecifica se a configuração atual pode coletar arquivos que são correspondidos por outras configurações.
TagsobjectNãoNone{"FileInodeTagKey":"inode"}
Importante Este parâmetro é suportado apenas pelo LoongCollector 3.0.10 e versões posteriores.
Controla as tags relacionadas à coleta de arquivos. A chave é o nome do parâmetro da tag, e o valor é o nome do campo da tag no log. Se você definir o valor como default, o valor padrão será usado. Se você definir o valor como uma string vazia, a tag será excluída. As seguintes tags podem ser configuradas:* FileInodeTagKey: o inode do arquivo. Esta tag não é adicionada por padrão. O valor padrão é "__inode__".
* FilePathTagKey: o caminho do arquivo. Esta tag é adicionada por padrão. O valor padrão é "__path__".Os seguintes parâmetros são válidos apenas se você definir o parâmetro EnableContainerDiscovery como true.* K8sNamespaceTagKey: o namespace do contêiner no qual o arquivo está localizado. Esta tag é adicionada por padrão. O valor padrão é "_namespace_".
* K8sPodNameTagKey: o nome do pod no qual o arquivo está localizado. Esta tag é adicionada por padrão. O valor padrão é "_pod_name_".
* K8sPodUidTagKey: o UID do pod no qual o arquivo está localizado. Esta tag é adicionada por padrão. O valor padrão é "_pod_uid_".
* ContainerNameTagKey: o nome do contêiner no qual o arquivo está localizado. Esta tag é adicionada por padrão. O valor padrão é "_container_name_".
* ContainerIpTagKey: o endereço IP do contêiner no qual o arquivo está localizado. Esta tag é adicionada por padrão. O valor padrão é "_container_ip_".
* ContainerImageNameTagKey: a imagem do contêiner no qual o arquivo está localizado. Esta tag é adicionada por padr

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

Nenhum definido.

Exemplos

Resposta de sucesso

JSON formato

{}

Códigos de erro

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.