Caso de Uso OBIEE na TV: Como dar Refresh Automático
É cada vez mais comum o uso de uma TV ligada 24h com os dados de BI para os líderes da empresa. Considere os seguinte cenários:
- Um call center precisa de um mecanismo para comunicar as métricas de desempenho para o escritório, sem e-mails diários, reuniões e painéis impressos em papel.
- Uma organização de TI precisa acompanhar a utilização do hardware ‘em tempo real’ com notificações passivas ativadas durante picos e atividades irregulares.
- Equipe de testes da empresa precisa ter a capacidade de acompanhar métricas de defeito e de resolução contra os acordos de nível de serviço (SLA) em vários times.
E-mails curtos, reuniões desnecessárias, tudo isso pode morrer com a implantação de um painel (TV) para que todos acompanhem.
Quando pensamos em OBIEE, apesar da pouca documentação existente, é certamente possível transformá-lo de uma “análise interativa baseado no usuário” para um “display estilo painel”.
A principal questão para OBIEE é de como resolver o problema de dados obsoletos em todas as análises. Dados desatualizados podem existir dentro de BI Server, BI Presentation Server e até mesmo do browser e é necessáriaa verificação. Cada componente tem sua própria técnica de resolução, bem como os possíveis problemas. Quando um painel é exibido em um monitor estático, um mecanismo de refresh deve estar no local para garantir que ele está atualizado e cronometrado corretamente com os agentes existentes.
O guia abaixo irá ajudá-lo a definir as medidas necessárias para implementar o OBIEE considerando o cenário acima. Vamos fazer tal qual receita de bolo. Portanto, você precisará de:
- iFrame (desabilitado por padrão no OBIEE 11g)
- Oracle WebLogic para o XML
- goURL
- HTML (Meta Tags)
- Oracle BI 11.1.1.7.0 ou +
Obs.: Já vi em alguns websites este mesmo problema de refresh sendo resolvido via javascript. Não recomendo essa abordagem pois sua execução é baseada na permissão do navegador e tem grande potencial de ser desativado. No mínimo, uma caixa pop-up irá aparecer pedindo para o usuário autorizar o javascript executar… e isso não é uma experiência de usuário agradável.
Passo 1: Habilitar iFrame
Por padrão, o OBIEE 11g não permite exibir frames em dashboards. A razão de isso ser feito é proteger ataques hackers sobrepondo conteúdo malicioso.
Passo 1.1 – Modificar o instanceconfig.xml
Adicione o código a seguir no arquivo instanceconfig.xml:
<Security>
<InIFrameRenderingMode> allow </ InIFrameRenderingMode>
</Security>
Passo 1.2 – Baixar analytics.ear
Navegue para:
/Export/obiee/11g/Oracle_BI1/bifoundation/jee
e faça download do analytics.ear
O arquivo analytics.ear contém dois arquivos que abrigam o xml que precisa ser modificado.
Passo 1.3 – Modificar web.xml
Descompacte o arquivo analytics.war e o ws.war, identifique o arquivo web.xml em cada um e adicione o código em vermelho:
<servlet-name>RelatedContent</servlet-name>
<url-pattern>/RelatedContent</url-pattern> </servlet-mapping>
<context-param> <param-name>oracle.adf.view.rich.security.FRAME_BUSTING</param-name> <param-value>never</param-value> </context-param><login-config> <auth-method>CLIENT-CERT </auth-method> </login-config>
Passo 1.4 – Enviar e compactar novamente os arquivos
Faça o upload dos dois arquivos de volta para /Export/obiee/11g/Oracle_BI1/bifoundation/jee
Passo 1.4.1 – Compacte analytics.war
Navegue para:
/Export/obiee/11g/Oracle_BI1/bifoundation/jee/analytics/analytics
Execute:
jar cvf0 ../analytics.war
Suba um nível para /Export/obiee/11g/Oracle_BI1/bifoundation/jee/analytics
Excluir a pasta de análise a fim de que os únicos arquivos que permaneçam nesse diretório sejam:
Passo 1.5 – Compacte o arquivo analytics.ear
Navegue para:
/Export/obiee/11g/Oracle_BI1/bifoundation/jee/
Renomeie o arquivo analytics.ear antigo como backup.
Execute:
jar –cf analytics.ear –C analytics
Certifique-se de que o arquivo analytics.ear foi produzido na pasta /export/obiee/11g/Oracle_BI1/bifoundation/jee.
Passo 2: Reiniciar o BI Server
Isto pode ser feito usando o Enterprise Manager:
Passo 3: Criar um arquivo HTML de teste com o iFrame
Abra o bloco de notas e cole o texto:
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd“>
<HTML>
<HEAD>
<TITLE>Important Dashboard</TITLE>
<META http-equiv=no-cache>
<META content=900 http-equiv=refresh>
</HEAD>
<BODY>
<IFRAME style=”Z-INDEX: 998; POSITION: absolute; WIDTH: 100%; HEIGHT: 100%; TOP: 0px; LEFT: 0px” src=”http://yourdashboard.com/ImportantDashboard” frameBorder=no scrolling=auto> </IFRAME>
</BODY>
</HTML>
Observe os dois componentes importantes destacados em vermelho:
- A meta tag forçando o refresh a cada 900 segundos
- O iFrame que incorpora a URL do seu painel
Salve como HTML e abra.
Conclusão
Ao final, temos a capacidade de exibir os painéis em um dispositivo estático (monitor, TV) que terá pouca interação humana, atualizando os dados a cada 900 segundos. Ainda habilitamos a capacidade de incorporar um painel em um iFrame
Espero que ajude!
Até mais pessoal!
Leo
Latest posts by Leo (see all)
- Caso de Uso OBIEE na TV: Como dar Refresh Automático - 10 de dezembro de 2013
- Consulta de arquivos de log no OBIEE 11g - 3 de dezembro de 2013
- Senha do Oracle (SYS) – Como Reiniciar - 26 de novembro de 2013