Como configurar o Zenoss para listar dispositivos por nome, em vez de endereço IP automaticamente?

1

Configurei o Zenoss 4.2.3 para obter dispositivos de toda a nossa rede de todas as sub-redes (INFRASTRUCTURE - > DEVICES). Mas ele me retorna a lista de dispositivos apenas com o endereço IP, ele não obtém os nomes de host das máquinas Windows e Linux.

Como posso configurá-lo para obter os nomes das máquinas?

    
por tenshimsm 07.05.2013 / 18:31

2 respostas

4

"Mas só me retorna a lista de dispositivos com o endereço IP"

Você quer dizer na guia de infraestrutura ou está se referindo aos e-mails de um notificador?

Se no notificador, há um bug no Zenoss 4.2 onde o device.id é usado em vez de device.title nas notificações por email.

Para corrigir, coloque a seguinte transformação na classe de evento "/" raiz.

d = dmd.Devices.findDevice(evt.device)
if d is not None:
  evt.device_title = d.title
else:
  evt.device_title = d.id

e, em seguida, na sua guia "Conteúdo" de notificação, use o seguinte

Message (subject) Format: [zenoss] **${evt/device_title}** - ${evt/summary}
Body Format: 

Location: ${evt/zenoss.device.groups}
Device: **${evt/device_title}**
Component: ${evt/component}
Severity: ${evt/sevword}
Time: ${evt/lastTime}

Message:

${evt/message}

a href="${urls/eventsUrl}">Device Events

a href="${urls/eventUrl}">Event Detail

a href="${urls/ackUrl}">Acknowledge

a href="${urls/closeUrl}">Close

Espero que isso ajude.

    
por 18.03.2014 / 13:18
2

Passei horas pesquisando isso ontem e espero salvar um pouco de dor. Eu descobri duas respostas para isso, e vamos começar com o fácil.

Nenhuma transformação é necessária

Na guia Conteúdo da notificação, basta substituir

${evt.device}

com

${eventSummary/actor/element_title}

Descoberto por: link
(graças a Philip Warren)

Usando transforma

A resposta de Ophir acima funcionará para eventos reais, mas descobri que ele não funcionará para nenhum evento criado manualmente (a.k.a. test) . O próprio Transform será analisado adequadamente, mas, por qualquer motivo, os eventos de teste não poderão analisar adequadamente os atributos personalizados usados no Conteúdo de Notificação e falharão com um erro "Não foi possível executar a avaliação do TALES". Isso dificulta o teste de atributos personalizados, por isso, esperamos que o Zenoss conserte isso em breve.

Eu também recomendaria alterar a última linha de sua transformação, caso contrário, pode falhar quando "d" não for encontrado. Este é o código de transformação completo reformulado:

d = dmd.Devices.findDevice(evt.device)
if d is not None:
  evt.device_title = d.title
else:
  evt.device_title = evt.device.title

Descoberto por: link

Um ... Como faço para transformar alguma coisa?

Para aqueles que não fizeram isso antes (como eu, ontem) você não precisa usar o Zope para chegar à área de transformação. Basta seguir estas etapas no Zenoss para adicionar uma transformação ao evento raiz:

  1. Clique em Eventos > Classes de eventos
  2. Clique no equipamento inferior esquerdo
  3. Clique em Transformar
  4. Digite o código na área de campo Transform
  5. Clique em Salvar

Se você sentir vontade de usar o Zope (porque "Perigo" é o seu nome do meio), então você pode navegar para http [s]: //yourserver.com [: port] / zport / dmd / Eventos / gerenciar e depois clicar em na guia Propriedades para acessar o campo Transformar.

    
por 30.12.2014 / 18:23