Todos os produtos
Search
Central de documentação

Simple Log Service:Gerenciamento de runtime

Última atualização: Jul 03, 2026

Após instalar o LoongCollector, gerencie seu ciclo de vida e a configuração de runtime.

Comandos comuns do LoongCollector

Iniciar o LoongCollector

Se houver requisitos específicos de desempenho para coleta de dados, modifique o arquivo de configuração de parâmetros de inicialização (ilogtail_config.json) antes de iniciar o LoongCollector.
sudo /etc/init.d/loongcollectord start

Parar o LoongCollector

sudo /etc/init.d/loongcollectord stop

Verificar o status do LoongCollector

sudo /etc/init.d/loongcollectord status # A return value of "loongcollector is running" indicates a successful start.

Consultar a versão do LoongCollector

cat /usr/local/ilogtail/app_info.json # The version information is stored in the loongcollector_version field.

Reiniciar o LoongCollector

sudo /etc/init.d/loongcollectord restart

Desinstalar o LoongCollector

  1. No código de exemplo, substitua ${region_id} por cn-hangzhou. Para acelerar o download, substitua ${region_id} pela região da sua instância ECS. Para mais informações, consulte Regiões.

    wget https://aliyun-observability-release-${region_id}.oss-${region_id}.aliyuncs.com/loongcollector/linux64/latest/loongcollector.sh -O loongcollector.sh;
  2. Execute o comando de desinstalação.

    chmod +x loongcollector.sh; sudo ./loongcollector.sh uninstall;

Atualizar o LoongCollector

Atualize o LoongCollector para uma versão mais recente ou migre do Logtail para o LoongCollector. Os comandos de atualização são os mesmos para ambos os cenários.

Atualizar o LoongCollector ou migrar do Logtail para o LoongCollector

Importante

O LoongCollector é interrompido durante a atualização e reinicia automaticamente após a conclusão do processo. A atualização sobrescreve apenas arquivos essenciais. Seus arquivos de configuração e checkpoint são preservados para evitar perda de logs.

  1. Execute o comando de download no servidor para obter o pacote de instalação mais recente. No código de exemplo, substitua ${region_id} por cn-hangzhou. Para acelerar o download, substitua ${region_id} pela região da sua instância ECS. Para mais informações, consulte Regiões.

    wget https://aliyun-observability-release-${region_id}.oss-${region_id}.aliyuncs.com/loongcollector/linux64/latest/loongcollector.sh -O loongcollector.sh;
  2. Execute o comando de atualização. Utilize o comando upgrade. Se utilizar o comando install, a instalação será sobrescrita e a configuração original será perdida.

    chmod +x loongcollector.sh; sudo ./loongcollector.sh upgrade;
  3. Se as seguintes informações forem exibidas, a atualização foi bem-sucedida.

    Upgrade loongcollector files successfully.
    Starting loongcollector ...
    Upgrade loongcollector successfully.

Reverter do LoongCollector para o Logtail

Nota

Baixe o script logtail.sh novamente. Não utilize o script logtail.sh antigo.

  1. Execute o comando de download no servidor para obter o pacote de instalação. No código de exemplo, substitua ${region_id} por cn-hangzhou. Para acelerar o download, substitua ${region_id} pela região da sua instância ECS. Para mais informações, consulte Regiões.

    wget https://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail.sh -O logtail.sh; 
  2. Execute o comando de reversão. Para especificar uma versão, como 1.8.7, consulte o comentário e substitua o número da versão conforme necessário.

    chmod +x logtail.sh; sudo ./logtail.sh upgrade;
    #chmod +x logtail.sh; sudo ./logtail.sh upgrade -v -v 1.8.7;

Arquivo de configuração de parâmetros de inicialização (ilogtail_config.json)

  • Descrição: Este arquivo configura os parâmetros de inicialização do LoongCollector. Configurações incorretas podem afetar o desempenho da coleta ou causar erros.

  • Caminho: /usr/local/ilogtail/ilogtail_config.json.

  • Cenário: O Simple Log Service (SLS) limita o desempenho de coleta do LoongCollector para evitar consumo excessivo de recursos do servidor. Caso o desempenho não atenda às suas necessidades, ajuste os parâmetros de inicialização.

  • Exemplo de arquivo:

    {
        "primary_region" : "cn-beijing", // Default region. You can ignore this parameter.
        "config_servers" : // The address used to obtain collection configurations.
        [
            "http://logtail.cn-beijing.log.aliyuncs.com"
        ],
        "data_servers" : // The address for data transmission with SLS.
        [
            {
                "region" : "cn-beijing",
                "endpoint_list": [
                    "cn-beijing.log.aliyuncs.com"
                ]
            }
        ],
        "cpu_usage_limit" : 0.4,
        "mem_usage_limit" : 384,
        "max_bytes_per_sec" : 20971520,
        "bytes_per_sec" : 1048576,
        "buffer_file_num" : 25,
        "buffer_file_size" : 20971520,
        "buffer_map_num" : 5
    }
  • Parâmetros: A tabela a seguir lista apenas os parâmetros de inicialização comuns que podem precisar de configuração. Adicione ou modifique-os conforme necessário. Mantenha os valores padrão para parâmetros não listados na tabela.

    Parâmetros de inicialização do ilogtail_config.json

    Parâmetro

    Tipo

    Descrição

    Exemplo

    cpu_usage_limit

    double

    Limiar de uso de CPU, calculado por núcleo. Detalhes:

    • Valores válidos: 0,1 até o número de núcleos de CPU da máquina.

    • Valor padrão: 0,4.

    Aviso

    cpu_usage_limit é um limite flexível. O uso real de CPU pode exceder esse valor. Se o limite for ultrapassado por cinco minutos, um disjuntor é acionado e o LoongCollector reinicia automaticamente.

    Por exemplo, um valor de 0,4 significa que o SLS tenta limitar o uso de CPU do coletor a 40% de um único núcleo. Se o uso exceder esse limite, o LoongCollector reinicia.

    Geralmente, um único núcleo processa cerca de 100 MB/s no modo minimalista ou 20 MB/s no modo de expressão regular completa.

    "cpu_usage_limit" : 0.4

    mem_usage_limit

    int

    Limiar de uso de memória. Detalhes:

    • Valores válidos: 128 MB a 8192 MB.

    • Valor padrão: 384 MB para hosts e 2048 MB para componentes ACK.

    Aviso

    mem_usage_limit é um limite flexível. O uso real de memória pode exceder esse valor. Se o limite for ultrapassado por cinco minutos, um disjuntor é acionado e o LoongCollector reinicia automaticamente.

    A taxa de coleta, a quantidade de diretórios e arquivos monitorados e bloqueios de envio estão relacionados ao parâmetro mem_usage_limit. Para mais informações, consulte Limites.

    "mem_usage_limit" : 384

    max_bytes_per_sec

    int

    Tráfego máximo para envio de dados brutos por segundo. Detalhes:

    • Valores válidos: 1024 Byte/s a 52428800 Byte/s.

    • Valor padrão: 20971520 Byte/s.

      Importante

      Um valor maior que 20971520 Byte/s (20 MB/s) indica ausência de limite de velocidade.

    Por exemplo, um valor de 2097152 define a taxa de envio de dados para 2 MB/s.

    "max_bytes_per_sec" : 2097152

    process_thread_count

    int

    Número de threads para processamento de dados. Detalhes:

    • Valores válidos: 1 a 64.

    • Valor padrão: 1.

    Uma única thread geralmente lida com 24 MB/s de gravação de dados no modo minimalista ou 12 MB/s no modo de expressão regular completa. Normalmente, não é necessário ajustar este parâmetro.

    "process_thread_count" : 1

    send_request_concurrency

    int

    Número de requisições assíncronas simultâneas. Detalhes:

    • Valores válidos: 1 a 50.

    • Valor padrão: 20.

    Se houver um TPS de gravação elevado, defina um valor de concorrência maior. Estime que uma requisição simultânea suporta de 0,5 MB/s a 1 MB/s de throughput de rede, dependendo da latência da rede.

    Nota

    Definir a concorrência muito alta pode ocupar portas de rede em excesso. Pode ser necessário ajustar parâmetros relacionados ao TCP.

    "send_request_concurrency" : 4

    buffer_file_num

    int

    Número máximo de arquivos de cache. Detalhes:

    • Valores válidos: 1 a 100.

    • Valor padrão: 25.

    Em caso de problemas de rede ou estouro de cota de gravação, o coletor armazena os logs analisados em arquivos locais no diretório de instalação. Ele tenta reenviá-los após a resolução do problema.

    "buffer_file_num" : 25

    buffer_file_size

    int

    Tamanho máximo de um único arquivo de cache, em bytes. Detalhes:

    • Valores válidos: 1048576 Byte a 104857600 Byte.

    • Valor padrão: 20971520 Byte.

    O espaço máximo em disco para arquivos de cache é buffer_file_size × buffer_file_num.

    "buffer_file_size" : 20971520

    buffer_file_path

    String

    Diretório onde os arquivos de cache são armazenados. O valor padrão é vazio, indicando que os arquivos ficam no diretório de instalação /usr/local/ilogtail.

    Ao definir este parâmetro, mova manualmente os arquivos chamados logtail_buffer_file_* do diretório original para o novo. Isso garante que o coletor possa ler os arquivos de cache e excluí-los após o envio.

    "buffer_file_path" : ""

    bind_interface

    String

    Nome da placa de rede vinculada. O valor padrão é vazio, o que significa que o LoongCollector se vincula automaticamente a uma placa disponível.

    Se definido para uma placa específica, como eth1, o LoongCollector é forçado a usá-la para enviar logs.

    "bind_interface" : ""

    check_point_filename

    String

    Caminho onde o arquivo de checkpoint é salvo. Valor padrão: /tmp/logtail_check_point.

    "check_point_filename" : /tmp/logtail_check_point

    check_point_dump_interval

    int

    Intervalo para atualização do arquivo Checkpoint, em segundos. Valor padrão: 900. Por padrão, o arquivo Checkpoint é atualizado a cada 15 minutos.

    "check_point_dump_interval" : 900

    user_config_file_path

    String

    Caminho onde o arquivo de configuração é salvo. O padrão é o diretório do binário do processo. O nome do arquivo padrão é user_log_config.json.

    "user_config_file_path" : user_log_config.json

    discard_old_data

    Boolean

    Define se logs antigos devem ser descartados. Valor padrão: true. Se definido como true, logs com mais de 12 horas são descartados.

    "discard_old_data" : true

    ilogtail_discard_interval

    int

    Limiar de idade para descarte de logs antigos, em segundos. Valor padrão: 43200 (12 horas).

    "ilogtail_discard_interval": 43200

    working_ip

    String

    O valor padrão é vazio, indicando que o endereço IP é obtido automaticamente do servidor. Se você definir um valor, ele será reportado como o IP do servidor.

    "working_ip" : ""

    working_hostname

    String

    Hostname reportado para este servidor. O valor padrão é vazio, indicando que o hostname é obtido automaticamente do servidor.

    "working_hostname" : ""

    max_read_buffer_size

    long

    Tamanho máximo para uma única entrada de log, em bytes. Valor padrão: 524288 (512 KB). Valor máximo: 8388608 (8 MB).

    Se uma única entrada de log exceder 524288 bytes, aumente este valor.

    "max_read_buffer_size" : 524288

    oas_connect_timeout

    long

    Timeout de conexão para requisições de obtenção de configurações de coleta ou AccessKeys, em segundos. Valor padrão: 5.

    Aumente este valor se sua conexão de rede for instável e causar tempos de conexão longos.

    "oas_connect_timeout" : 5

    oas_request_timeout

    long

    Timeout total da requisição para obtenção de configurações de coleta ou AccessKeys, em segundos. Valor padrão: 10.

    Aumente este valor se sua conexão de rede for instável.

    "" : 10

    data_server_port

    long

    Se você definir data_server_port como 443, os dados serão enviados ao SLS via HTTPS.

    "data_server_port": 443

    enable_log_time_auto_adjust

    Boolean

    Se você definir enable_log_time_auto_adjust como true, o horário do log se ajustará automaticamente à hora local do servidor.

    Para segurança dos dados, o SLS valida o timestamp em cada requisição, incluindo as do LoongCollector. Requisições com timestamp divergente do horário do servidor em mais de 15 minutos são rejeitadas. O coletor usa a hora local do servidor nas requisições. Se a hora local for alterada (por exemplo, para um horário futuro em testes), as requisições falharão. Use este parâmetro para permitir que o horário do log se adapte à hora local do servidor.

    Importante
    • Quando este recurso está ativado, o deslocamento entre o horário do SLS e a hora local do servidor é adicionado ao horário do log. Como o deslocamento só é atualizado quando uma requisição é rejeitada, o horário consultado no SLS pode não corresponder ao momento exato da gravação.

    • Algumas lógicas do LoongCollector dependem do aumento monotônico do horário do sistema. Reinicie o coletor após ajustar o horário da máquina.

    "enable_log_time_auto_adjust": true

    accept_multi_config

    Boolean

    Define se múltiplas configurações de coleta podem coletar o mesmo arquivo. Valor padrão: false.

    Por padrão, um arquivo só pode ser coletado por uma única configuração. Use este parâmetro para remover essa restrição. O processamento de cada configuração é independente. Permitir múltiplas configurações para o mesmo arquivo consome mais CPU e memória.

    "accept_multi_config": true

    enable_checkpoint_sync_write

    Boolean

    Define se o recurso de gravação síncrona deve ser ativado. Valor padrão: false.

    A gravação síncrona é usada principalmente com o recurso ExactlyOnce. Quando o ExactlyOnce está ativado, o coletor registra informações detalhadas de Checkpoint no nível de arquivo no disco local. Por questões de desempenho, a chamada sync não é usada por padrão ao gravar Checkpoints. Se a máquina reiniciar antes que os dados do buffer sejam gravados no disco, o Checkpoint poderá ser perdido. Nesse caso, defina enable_checkpoint_sync_write como true para ativar gravações síncronas. Para mais informações, consulte Configuração do Logtail (Versão antiga).

    "enable_checkpoint_sync_write": false

    enable_env_ref_in_config

    Boolean

    Define se a substituição de variáveis de ambiente nas configurações de coleta deve ser ativada. Valor padrão: false.

    Quando este recurso está ativado, use ${xxx} na configuração de coleta no console como espaço reservado para a variável de ambiente xxx. Por exemplo, se o caminho de coleta for /${xxx}/logs e a variável de ambiente for xxx=user, o caminho efetivo será /user/logs.

    Se sua configuração precisar usar os caracteres literais ${ ou }, escape-os como $${ e $}, respectivamente.

    "enable_env_ref_in_config": false

    logreader_max_rotate_queue_size

    Int

    Comprimento máximo da fila de rotação. Valor padrão: 20. Quando a coleta de logs está bloqueada ou atrasada, os arquivos pendentes mantêm seus identificadores de arquivo e aguardam nesta fila.

    Se houver atraso na coleta e você precisar controlar o uso máximo de disco, considere reduzir este valor.

    Aviso

    Se o número de arquivos atrasados exceder este valor, a coleta de novos arquivos será ignorada.

    "logreader_max_rotate_queue_size" : 10

    data_endpoint_policy

    string

    Política de alternância para endpoints do SLS. Valores possíveis:

    Nota

    Verifique o parâmetro data_server no arquivo ilogtail_config.json para ver se há um domínio padrão configurado.

    • designated_first (Padrão)

      • Se um domínio padrão for especificado para uma região e estiver disponível, o sistema o utilizará.

      • Se o domínio padrão especificado estiver indisponível, o sistema selecionará automaticamente um domínio disponível.

      • Se nenhum domínio padrão for especificado, o sistema selecionará automaticamente um domínio disponível.

    • designated_locked

      • Se um domínio padrão for especificado para uma região, o sistema usará apenas esse domínio, independentemente de sua disponibilidade.

      • Se nenhum domínio padrão for especificado, o sistema selecionará automaticamente um domínio disponível.

    "data_endpoint_policy" : "designated_first"

    inotify_black_list

    Array<String>

    Lista de bloqueios para o listener inotify. É uma lista de correspondência exata. Diretórios nesta lista não são monitorados pelo inotify.

    "inotify_black_list": ["/tmp"]

    host_path_blacklist

    String

    Lista de bloqueios global para caminhos de host, correspondida por substring. No Linux, separe múltiplas substrings com dois pontos (:).

    Por exemplo, "host_path_blacklist" : "/volumes/kubernetes.io~csi/nas-" impede a coleta de dados de montagens NAS.

    "host_path_blacklist" : "/volumes/kubernetes.io~csi/nas-"

    LOGTAIL_LOG_LEVEL

    String

    Nível de log. Deve ser configurado como variável de ambiente. O valor padrão é vazio, correspondendo a info. Valores possíveis: trace, debug, info, warning, error e fatal.

    LOGTAIL_LOG_LEVEL=info

    FORCE_RELEASE_STOP_CONTAINER_FILE

    Boolean

    • Configuração: Só pode ser configurado como variável de ambiente.

    • Descrição: Quando definido como true, o coletor libera imediatamente o identificador de arquivo do contêiner quando o contêiner da aplicação para. Isso evita que o contêiner fique impossibilitado de encerrar devido ao identificador de arquivo não liberado.

    • Observação:

      • Com esta configuração, a integridade da coleta de dados do contêiner não pode ser garantida.

      • Adicione um atraso de alguns segundos antes da saída da aplicação para garantir que todos os logs sejam coletados.

    "FORCE_RELEASE_STOP_CONTAINER_FILE" : "true"

  • Cenários: Os exemplos a seguir mostram cenários e operações comuns.

Planejamento de configuração de desempenho de coleta

Para evitar que o coletor consuma recursos excessivos do servidor e afete outros serviços, o SLS limita seu desempenho de coleta. Para melhorar o desempenho, modifique os parâmetros de inicialização.

Exemplos de parâmetros recomendados

As configurações de parâmetros a seguir são recomendadas para coleta de arquivos JSON comuns. O desempenho dos modos de expressão regular completa e separador é semelhante ao do modo JSON. O modo minimalista tem desempenho cinco vezes superior ao modo JSON. Fatores como complexidade de dados e regras, além da quantidade de diretórios e arquivos de coleta, afetam o consumo de CPU e memória. Ajuste os parâmetros da tabela abaixo conforme necessário.

Adicione ou modifique os valores dos parâmetros em /usr/local/ilogtail/ilogtail_config.json e reinicie o LoongCollector para aplicar as alterações. A tabela a seguir fornece valores recomendados para diferentes taxas de coleta.

Nota

Ao configurar parâmetros de inicialização baseados na coluna Taxa de coleta superior a 40 MB/s da tabela, o desempenho da coleta estará próximo do limite.

Parâmetro

Descrição

Taxa de coleta superior a 10 MB/s

Taxa de coleta superior a 20 MB/s

Taxa de coleta superior a 40 MB/s

cpu_usage_limit

Limiar de uso de CPU, calculado por núcleo.

  • Valores válidos: 0,1 até o número de núcleos de CPU da máquina.

  • Valor padrão: 0,4.

Um valor de 0,4 significa que o SLS tenta limitar o uso de CPU do coletor a 40% de um único núcleo. Se o uso exceder esse limite, o LoongCollector reinicia automaticamente.

Este é um limite flexível. O uso real de CPU pode exceder esse valor. Se o limite for ultrapassado por cinco minutos, um disjuntor é acionado e o LoongCollector reinicia automaticamente.

1

2

4

mem_usage_limit

Limiar de uso de memória.

  • Valores válidos: 128 MB a 8192 MB.

  • Valor padrão: 384 MB.

A taxa de coleta, a quantidade de diretórios e arquivos monitorados e bloqueios de envio estão relacionados a este parâmetro. Para mais informações, consulte Limites.

Este é um limite flexível. O uso real de memória pode exceder esse valor. Se o limite for ultrapassado por cinco minutos, um disjuntor é acionado e o LoongCollector reinicia automaticamente.

1024

2048

4096

process_thread_count

Número de threads para processamento de dados.

  • Valores válidos: 1 a 64.

  • Valor padrão: 1.

Uma única thread consegue lidar com 24 MB/s de gravação de dados no modo minimalista ou 12 MB/s no modo de expressão regular completa. Normalmente, não é necessário ajustar este parâmetro.

2

4

8

send_request_concurrency

Número de requisições assíncronas simultâneas.

  • Valores válidos: 1 a 50.

  • Valor padrão: 20.

Se houver um TPS de gravação elevado, defina um valor de concorrência maior. Estime que uma requisição simultânea suporta de 0,5 MB/s a 1 MB/s de throughput de rede, dependendo da latência da rede.

20

40

80

Alta latência de rede ou transmissão de logs instável

Você pode enfrentar perda de logs, transmissão duplicada, novas tentativas frequentes pelo LoongCollector ou interrupções e flutuações constantes de rede. As possíveis causas incluem:

  • Largura de banda insuficiente: Se o volume de logs coletados for alto, a largura de banda inadequada pode causar acúmulo de logs e aumento de latência.

  • Ambiente de rede instável: Conexões entre regiões ou redes diferentes podem levar a latência de rede ou perda de pacotes.

Solução

Utilize nós de borda do Alibaba Cloud CDN para acelerar a coleta de logs. Este método oferece vantagens significativas em latência e estabilidade de rede em comparação à coleta via rede pública. Este recurso gera cobranças adicionais com base na quantidade de dados transferidos.

  1. Ative o recurso de aceleração de transferência de logs entre domínios no seu projeto.

  2. Pare o LoongCollector. Faça login no servidor onde o LoongCollector está instalado e execute o comando sudo /etc/init.d/loongcollectord stop.

  3. Modifique o endpoint. No arquivo /usr/local/ilogtail/ilogtail_config.json, substitua o valor do parâmetro endpoint_list dentro do parâmetro data_servers por log-global.aliyuncs.com. Isso altera o domínio usado para transmissão de dados para o endpoint de aceleração.

  4. Inicie o LoongCollector. Execute o comando sudo /etc/init.d/loongcollectord start.

Entradas de log grandes são truncadas

Se uma única entrada de log for muito grande, ela poderá ser truncada após a coleta. Isso ocorre porque o tamanho máximo padrão para uma única entrada é de 512 KB (524.288 bytes). Se um log exceder esse tamanho, o SLS o trunca. Para logs multilinha divididos com base em uma expressão regular na primeira linha, o limite de tamanho para cada entrada resultante também é de 512 KB. Se esse limite for excedido, a entrada é dividida forçosamente em várias entradas.

Solução

  1. No arquivo /usr/local/ilogtail/ilogtail_config.json, modifique o valor do parâmetro max_read_buffer_size. Se o parâmetro não existir, adicione-o. O valor máximo para este parâmetro é 8 MB (8.388.608 bytes).

    Observe que o uso de memória aumenta linearmente. Você deve reservar max_read_buffer_size × file concurrency de memória.
  2. Reinicie o LoongCollector. Execute o comando sudo /etc/init.d/loongcollectord restart.

Logs com mais de 15 minutos são perdidos durante a transmissão

A coleta de logs pode parecer estar funcionando, mas alguns logs são perdidos. Isso ocorre quando o timestamp de um log difere do horário atual do servidor SLS em mais de 15 minutos. Para segurança dos dados, o SLS valida o timestamp de cada requisição, incluindo as do LoongCollector, e rejeita requisições com timestamp divergente do horário do servidor em mais de 15 minutos. Se a hora local do servidor for alterada (por exemplo, para um horário futuro em testes), as requisições serão rejeitadas e as gravações de dados falharão.

Solução

  1. No arquivo /usr/local/ilogtail/ilogtail_config.json, altere o valor do parâmetro enable_log_time_auto_adjust para true. Se o parâmetro não existir, adicione-o. Esta configuração permite que o horário do log se ajuste automaticamente à hora local do servidor.

    Quando este recurso está ativado, o deslocamento entre o horário do SLS e a hora local do servidor é adicionado ao horário do log. Como o deslocamento só é atualizado quando uma requisição é rejeitada, o horário consultado no SLS pode não corresponder ao momento exato da gravação.
  2. Reinicie o LoongCollector. Execute o comando sudo /etc/init.d/loongcollectord restart.

Mudar para um projeto em outra região

Por vários motivos, você pode precisar armazenar logs coletados de um servidor em um novo projeto.

Solução

  1. Para reutilizar a configuração de coleta, salve o conteúdo do arquivo de configuração de coleta antes de prosseguir. O processo de desinstalação exclui este arquivo.

  2. Desinstale o LoongCollector do servidor.

  3. Escolha o método de instalação do LoongCollector apropriado com base na relação entre o novo projeto e o servidor.

  4. Se você também precisar transferir dados históricos para o novo projeto, dois métodos estão disponíveis:

Otimizar longos atrasos na transmissão de logs

Este problema ocorre quando o timestamp do log no SLS é mais de três segundos posterior ao horário em que o log foi gerado no servidor. As possíveis causas incluem:

  • Mais de 100 arquivos sendo coletados simultaneamente, ou mais de 5.000 arquivos no diretório monitorado, consumindo muita memória.

  • Alto tráfego de dados de log (por exemplo, acima de 2 MB/s no modo minimalista ou 1 MB/s no modo de expressão regular) causando alto uso de CPU.

    Ative o CloudLens for SLS e verifique o uso de CPU do host atual em Collection Monitoring .
  • A taxa em que o LoongCollector envia dados ao SLS excede 10 MB/s.

    Ative o CloudLens for SLS e verifique a taxa de coleta do host atual em Collection Monitoring .

Solução

Ajuste o número de arquivos ou o tráfego de dados com base nas possíveis causas listadas acima. Se não for possível reduzir o uso de memória ou diminuir o tráfego de transmissão, consulte Planejamento de configuração de desempenho de coleta para ajustar o desempenho da coleta.

Outros arquivos de configuração comuns

A seguir estão outros arquivos de configuração e informação usados pelo LoongCollector durante o runtime:

Arquivo de configuração de coleta do LoongCollector (user_log_config.json)

  • Descrição: Este arquivo registra as informações de configuração de coleta que o LoongCollector obtém do SLS. O arquivo é atualizado sempre que a configuração de coleta muda. Não modifique este arquivo, exceto para configurar manualmente informações sensíveis, como detalhes de AccessKey ou senhas de banco de dados.

  • Caminho: /usr/local/ilogtail/user_log_config.json.

  • Cenário: Verifique este arquivo para confirmar se uma configuração de coleta foi entregue ao servidor. Se o arquivo existir e seu conteúdo corresponder à configuração no SLS, a entrega foi bem-sucedida.

Arquivo de registro AppInfo (app_info.json)

  • Descrição: O arquivo app_info.json registra informações como horário de inicialização do LoongCollector, endereço IP recuperado e hostname. Este arquivo serve apenas para registro. Quaisquer modificações nele não têm efeito.

  • Caminho: /usr/local/ilogtail/app_info.json.

  • Cenário: Visualize as informações de IP do servidor identificadas pelo SLS durante a coleta para verificar se correspondem às informações de IP no grupo de máquinas baseado em IP no console SLS. Isso é tipicamente usado para resolver falhas de heartbeat em grupos de máquinas baseados em IP.

    Se você definiu uma vinculação de hostname a IP no arquivo /etc/hosts do servidor, o endereço IP vinculado é recuperado automaticamente. Se nenhuma vinculação de hostname estiver definida, o IP da primeira placa de rede é recuperado automaticamente. Se o parâmetro working_ip no ilogtail_config.json estiver definido, seu valor será usado como o IP do servidor.

Log de runtime do LoongCollector (loongcollector.LOG)

  • Descrição: O arquivo loongcollector.LOG registra os logs de runtime do LoongCollector. Os níveis de log, do menor para o maior, são INFO, WARN e ERROR.

  • Caminho: /usr/local/ilogtail/loongcollector.LOG.

  • Cenário: Se ocorrer um erro de coleta, primeiro consulte Diagnosticar e monitorar o LoongCollector para verificar erros. Em seguida, solucione o problema consultando os tipos de erro de coleta de logs e o log de runtime do LoongCollector.

Arquivo de User ID

  • Descrição: Este arquivo contém o ID da conta Alibaba Cloud do projeto ao qual os logs coletados pertencem. O nome do arquivo é o ID da conta, sem sufixo. Indica que esta conta tem permissão para acessar e coletar logs deste servidor.

  • Caminho: /etc/ilogtail/users/{ID da conta Alibaba Cloud}.

  • Cenário: Configure um user ID apenas ao coletar logs de instâncias ECS fora da Alibaba Cloud, servidores autogerenciados ou servidores de outros provedores de nuvem. Se múltiplas contas precisarem coletar logs do mesmo servidor, crie múltiplos arquivos de user ID nesse servidor.

Arquivo de identificador personalizado

  • Descrição: Este arquivo é usado para configurar um identificador personalizado. Esse identificador serve como conteúdo para um grupo de máquinas de identificador personalizado, ajudando o SLS a descobrir o LoongCollector no servidor e estabelecer um heartbeat.

  • Caminho: /etc/ilogtail/user_defined_id.

  • Cenário: Esta configuração é necessária ao usar um grupo de máquinas de identificador personalizado. Para mais informações, consulte Associar um grupo de máquinas a uma configuração de coleta do LoongCollector.

Arquivo CheckPoint

  • Descrição: O mecanismo de checkpoint registra a posição atual da coleta para garantir a integridade dos logs.

  • Caminho: O caminho padrão é /tmp/logtail_checkpoint.

  • Cenário: Gerencie o arquivo de checkpoint modificando o arquivo de parâmetros de inicialização. Para mais informações, consulte Limites.

FAQ

Como atualizar quando o servidor não consegue se conectar à internet

  1. No servidor onde você precisa atualizar o LoongCollector, execute uname -m para determinar a arquitetura do sistema. Em seguida, em um servidor com acesso à rede pública, execute o comando correspondente. Substitua ${region_id} pela região do seu projeto.

    • Arquitetura ARM:

      wget https://aliyun-observability-release-${region_id}.oss-${region_id}.aliyuncs.com/loongcollector/linux64/latest/loongcollector.sh;wget http://aliyun-observability-release-${region_id}.oss-${region_id}.aliyuncs.com/loongcollector/linux64/latest/aarch64/main/loongcollector-linux64.tar.gz;
    • Arquitetura x86-64:

      wget https://aliyun-observability-release-${region_id}.oss-${region_id}.aliyuncs.com/loongcollector/linux64/latest/loongcollector.sh;wget http://aliyun-observability-release-${region_id}.oss-${region_id}.aliyuncs.com/loongcollector/linux64/latest/x86_64/main/loongcollector-linux64.tar.gz;
  2. Copie o script de instalação e o pacote para o servidor onde você precisa atualizar o LoongCollector e execute o seguinte comando:

    chmod +x loongcollector.sh;./loongcollector.sh upgrade-local;