Registrando a atividade apt / dpkg no syslog

7

Meu objetivo é registrar a atividade apt / dpkg usando syslog (rsyslog) , para que as entradas de log sejam enviadas ao servidor syslog central.

O dpkg grava em /var/log/dpkg.log , o apt escreve no diretório /var/log/apt .

Eu fiz alguma pesquisa e parece que o apt nem o dpkg são capazes de usar o syslog. A única opção é usar o recurso "Módulo de entrada de arquivo de texto" do rsyslog ( link ), que verifica periodicamente o arquivo de log para novos conteúdos.

O arquivo de configuração

/etc/dpkg/dpkg.cfg tem a opção log , mas não há uma página de manual para as opções e recursos do dpkg.cfg.

É realmente o rsyslog imfile a única opção?

    
por Petr Stastny 27.03.2015 / 13:03

2 respostas

2

Para o dpkg isso pode ser feito adicionando

status-logger "logger -t dpkg -p info"

para /etc/dpkg/dpkg.cfg . Como o apt-get chama o dpkg, também as ações apt-get / apt são registradas. Veja man logger para ajustar as informações registradas no syslog.

Estou usando esta tarefa ansible para atualizar as configurações:

- name: dpkg syslog
  lineinfile:
   dest: /etc/dpkg/dpkg.cfg
   line: 'status-logger "logger -t dpkg -p info"'

Se você estiver usando o diário do systemd, é conveniente verificar os logs via

journalctl SYSLOG_IDENTIFIER=dpkg
    
por 07.06.2016 / 20:22
0

Modificar onde o dpkg registra sua saída é possível através da opção --log . Isso só permite nomes de arquivos. O DPKG foi construído como uma ferramenta simples e eficiente para manipular pacotes, portanto não ter registrador que complica as coisas é uma vantagem. A maneira mais simples é que você escreva em um arquivo e o syslog leia desse arquivo como você já sabe.

Você pode usar status-fd para enviar o status para um descritor de arquivo como /dev/log ou status-logger para ter um intermediário que envia as entradas para o syslog.

    
por 04.07.2016 / 20:17