Opa Galera,
O meu chefe está pedindo um relatorio pra extrair direto do banco e jogar em outra aplicação porem eu nao sei como conseguir... ou como calcular...
Já fiz essa consulta... porem a unica coisa q falta... é definir o tempo de duração de cada evento... tipo um problema durou 1 hora pra vir o resolvido... o resolvido ficou 2 horas até vir outro problema e por ai vai
alguem pode ajudar?
select
alerts.alertid,
events.objectid,
acknowledges.eventid as "Cod. Evento",
CASE WHEN triggers.priority = 4 THEN 'Alto'
WHEN triggers.priority = 5 THEN 'Desastre'
END as "Tipo",
alerts.subject as "Descrição do Evento",
to_char(from_unixtime(events.clock), 'DD/MM/YYYY HH24:MI:SS') as "Hora do Evento",
to_char(from_unixtime(acknowledges.clock), 'DD/MM/YYYY HH24:MI:SS') as "Hora do Visto",
age(from_unixtime(acknowledges.clock),from_unixtim e(events.clock)) as "Tempo para o Visto",
users.name as "Usuário Logado",
acknowledges.message as "Comentário",
triggers.lastchange
from alerts
left join events on alerts.eventid = events.eventid
left join acknowledges on acknowledges.eventid = events.eventid
left join users on users.userid = acknowledges.userid
inner join triggers on events.objectid = triggers.triggerid and triggers.priority in (5,4)
where alerts.alertid in (select max(alertid) from alerts group by eventid ) and from_unixtime(events.clock) between '2011-11-07 00:00:00' and '2011-11-11 23:59:59'
--and upper(alerts.subject) like upper('%problema%')
order by events.objectid, from_unixtime(events.clock),from_unixtime(acknowle dges.clock), alerts.alertid,acknowledges.eventid
O meu chefe está pedindo um relatorio pra extrair direto do banco e jogar em outra aplicação porem eu nao sei como conseguir... ou como calcular...
Já fiz essa consulta... porem a unica coisa q falta... é definir o tempo de duração de cada evento... tipo um problema durou 1 hora pra vir o resolvido... o resolvido ficou 2 horas até vir outro problema e por ai vai
alguem pode ajudar?
select
alerts.alertid,
events.objectid,
acknowledges.eventid as "Cod. Evento",
CASE WHEN triggers.priority = 4 THEN 'Alto'
WHEN triggers.priority = 5 THEN 'Desastre'
END as "Tipo",
alerts.subject as "Descrição do Evento",
to_char(from_unixtime(events.clock), 'DD/MM/YYYY HH24:MI:SS') as "Hora do Evento",
to_char(from_unixtime(acknowledges.clock), 'DD/MM/YYYY HH24:MI:SS') as "Hora do Visto",
age(from_unixtime(acknowledges.clock),from_unixtim e(events.clock)) as "Tempo para o Visto",
users.name as "Usuário Logado",
acknowledges.message as "Comentário",
triggers.lastchange
from alerts
left join events on alerts.eventid = events.eventid
left join acknowledges on acknowledges.eventid = events.eventid
left join users on users.userid = acknowledges.userid
inner join triggers on events.objectid = triggers.triggerid and triggers.priority in (5,4)
where alerts.alertid in (select max(alertid) from alerts group by eventid ) and from_unixtime(events.clock) between '2011-11-07 00:00:00' and '2011-11-11 23:59:59'
--and upper(alerts.subject) like upper('%problema%')
order by events.objectid, from_unixtime(events.clock),from_unixtime(acknowle dges.clock), alerts.alertid,acknowledges.eventid