Configuração dos arquivos de registro que são coletados pelo agente

Ao implantar ou atualizar o agente de registro, você pode configurar o arquivo logs-values.yaml para incluir e excluir o conjunto de registros a serem processados pelo agente. Por padrão, o agente coletará os registros de /var/log/containers/*.log e ignorará /var/log/at/*.

Depois de modificar o logs-values.yaml, você pode fazer o upgrade do agente ou continuar modificando o arquivo antes de aplicar todas as alterações.

Configuração de arquivos de registro personalizados

As seguintes variáveis adicionais podem ser fornecidas para incluir e excluir o conjunto de registros a serem processados pelo agente:

  • excludeLogSourcePaths: Lista de arquivos que o agente está configurado para ignorar. O valor padrão é definido como ignorar /var/log/at/*
  • selectedLogSourcePaths: Lista de arquivos que o agente coleta e envia para IBM Cloud Logs. O valor padrão é definido como /var/log/containers/*.log. Você pode definir vários caminhos usando uma lista separada por vírgulas, por exemplo, /var/log/abc/*.log,/var/log/xyz/*.log.

A entrada no arquivo logs-values.yaml tem a seguinte aparência:

# comma separated list, for example “/var/log/abc/*.log,/var/log/xyz/*.log”
excludeLogSourcePaths: ""
selectedLogSourcePaths: ""

Configuração de registros de componentes do sistema

Os logs de componentes do sistema registram os eventos que ocorrem no cluster. Há dois tipos de componentes do sistema: componentes do sistema que são executados em um contêiner e componentes do sistema diretamente envolvidos na execução de contêineres. Por exemplo, o kubelet e o tempo de execução do contêiner não são executados em contêineres. O agendador Kubernetes, o gerenciador de controladores e o servidor de API são executados em pods. Se o seu cluster usa o kube-proxy, você normalmente o executa como um DaemonSet.

Use a configuração systemLogs para ativar o processamento de registros de componentes do sistema localizados no diretório /var/log. Os logs do sistema em /var/log/containers/ são coletados automaticamente, a menos que você os exclua na seção excludeLogSourcePaths.

A entrada no arquivo logs-values.yaml tem a seguinte aparência:

systemLogs:
  - /var/log/kube-apiserver.log. # Logs generated by the API server.
  - /var/log/kube-scheduler.log # Logs generated by the scheduler. This component is responsible for making scheduling decisions.
  - /var/log/kube-controller-manager.log # Logs generated by the Kube controller manager that runs most Kubernetes built-in controllers.
  - /var/log/kube-proxy.log  # Logs generated by the kube-proxy. This component is responsible for directing traffic to Service endpoints.
  - /var/log/kubelet.log  # Logs generated by the kubelet. This component is responsible for running containers on the node.
  - /var/log/syslog

Por padrão, o analisador kube_syslog é usado.

Alguns dos clusters clássicos do Kubernetes podem exigir que o systemLogsParser seja definido como kube_syslog_classic para corresponder ao formato de registro de data e hora nesses sistemas. Você pode usar a opção systemLogsParser para considerar um analisador diferente. A entrada no arquivo logs-values.yaml tem a seguinte aparência:

systemLogsParser: "kube_syslog_classic"
systemLogs:
  - /var/log/syslog