Modificar notificação de erro da fila de impressão do AIX

2

Parece que o comportamento padrão da fila de impressão do AIX é relatar erros de fila para o usuário que enviou o trabalho de impressão. Temos várias centenas de filas usadas por scripts autônomos e tarefas agendadas em execução em contas do sistema que não são destinadas a receber mensagens.

O que eu gostaria de fazer, e tentei sem sucesso, é impedir que esses relatórios de erros sejam direcionados para os usuários que enviam trabalhos e, em vez disso, direcioná-los para outro endereço. Isso é o que eu tentei, sem efeito:

chque -q'queue_name' -a"recovery_type = sendmail "'[email protected]'

Isso adicionou a configuração esperada ao / etc / qconfig. Eu reiniciei o lpd, mas as mensagens de erro ainda estão sendo enviadas para os usuários. Além disso, as mensagens de erro não são entregues para [email protected].

Isso está no AIX 5.3. Um erro típico que gostaria de redirecionar:

Message from queueing system:
Queue hs-3841:@print went down, job is still queued:
  Backend: /usr/lib/lpd/rembak -S print.example.com -P hs-3841 -N \
           /usr/lib/lpd/aixshort /var/spool/lpd/dfA731sub.sub.example.com.1280424810.1028194 
  Backend Exit Value: EXITFATAL (0100)
  Job Submit Time: Mar 21 03:33:30 2011,  Current Time: Mar 21 12:00:51 2011
Use local problem reporting procedures.

Eu sei que posso ajustar o rembak para tentar evitar erros devido ao tempo de inatividade da fila remota intermitente, mas como posso configurar o lpd de maneira a direcionar erros de fila para um endereço diferente do usuário?

    
por Eli Heady 21.03.2011 / 17:20

1 resposta

1

Como isso tem sido feito por alguns dias, e nesse tempo eu (principalmente) descobri o problema, vou postar a resposta que funciona para mim.

Em resumo:

chvirprnt -qQUEUENAME -dDEVICENAME -a"si=USERNAME"

Onde QUEUNAME, DEVICENAME e USERNAME estão configurados para a fila, o dispositivo e o usuário para os quais você deseja enviar erros.

Na íntegra:

As filas de impressão do AIX possuem impressoras virtuais e dispositivos de impressão associados a cada fila. O comando chque , conforme fornecido na pergunta, é usado para gerenciar atributos da fila. A definição de "recovery_type" para "sendmail [email protected]" fará com que a notificação seja enviada para o endereço especificado quando a fila estiver inativa, mas não impedirá que todos os erros da impressora sejam enviados para o usuário que enviou o trabalho de impressão.

Por padrão, as mensagens de erro da impressora virtual serão enviadas para o remetente da tarefa por meio do daemon writesrv. O Writesrv emitirá as mensagens para o console do usuário, se elas estiverem conectadas. Se elas não estiverem conectadas no momento do erro, ou se o daemon writerv no host remoto (se aplicável) não estiver escutando, um email será enviado para o usuário no host do qual o trabalho foi enviado.

Para responder completamente a pergunta, você deve definir o parâmetro si no arquivo de pontos virtuais da impressora por meio do comando chvirprnt com o nome de um usuário para receber erros e também organizar o MTA local para encaminhar email para esse usuário para [email protected]. É aconselhável criar um usuário para essa finalidade, ou enviar erros para o root e refinar ainda mais a entrega de mensagens para o usuário root para rotear as mensagens de erro conforme desejado.

    
por 25.03.2011 / 21:48

Tags