热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

OracleBAM的DrillDown实现

最近在做OracleBAM监控OEM的报表,为了给客户展现更多的内容,打算给客户进行数据钻取,类似BI的下钻功能。例如:客

最近在做Oracle BAM监控OEM的报表,为了给客户展现更多的内容,打算给客户进行数据钻取,类似BI的下钻功能。 

例如:客户环境中应用Admin.war部署在weblogic的cluster上,cluster上有两台server1、server2,

在监控报表展现时,计划展现成如下:

页面上将监控的war应用在列表上列出,如下图,在应用状态的列表中将admin.war显示在目标名称列里,点击详细信息时,可以看到admin.war具体分布在哪些Server上,

当点击目标名称上时,Line Char上显示admin.war的Heap used 走向图,重点来了,外部界面上显示的是admin.war在两台Server随时间变化的heap used的sum值,用户可能希望除了看到整体分布情况,还希望能看到分布在具体Server随时间变化的heap used的走向图,此为需求。

 

 

Oracle BAM提供了Dimension的功能,类似BI的纬度。

在DataObject中创建纬度Hier_Dim,第一纬为时间,第二纬为Server名,第三纬为时间,实现的效果是整体界面展示heap used随时间纬度变化,当用户点击数字或者时间轴时,可下钻到具体分配的Server,在点击Server名时,可看到admin.war在server1上随时间变化的纬度。

创建完纬度后,在报表中找到编辑Line Chart这个图表,在DATA中的Drill选择Hier_Dim,保存后查看效果,发现确实是按照设计的纬度下钻的,唯一不足的是,当在第三纬时,即展示Admin.war在Server1随时间变化的走向图时,时间格式无法按照中国人的习惯设置,如2012-7-28 11:12:12AM,显示出来的效果是2012-7-28T11:12:12.0000AM,效果类似下图:

 

这对于追求完美的国人来说,就有点不完美了呢,为了能将时间格式化成我们需要的,于是到处翻查资料,把整个互联网都翻遍了,就为了论证Time Dimension是否可进行时间格式问题,翻得头发都白了,翻着翻着,还真给我翻着了呢。

 


thanks for your help.
and i have another question.
when use drilling through to see the data details, can not format date to show as user's prefer timezone? because don't know how to "applies the "Adjust Time zone from GMT to" property from Value Format in Properties tab of View Editor" for drill through details.

 


Right, the default drill through report that gets opened doesn't have any option to have its properties changed by the user. So, the suggested solution for this is use "Drill Across" target for "Drill through" option and this way the target report that gets opened can have its properties defined by the user. You can check documentation on how to use drill across.

参考连接如下:

https://forums.oracle.com/forums/thread.jspa?messageID=9406952

 

这么看来,这条路行不通,BAM还真是不够灵活,得另外想折咯,其实还有一个方式可以实现,只是实现起来比较曲折和麻烦,可以用Drill Across的方式,参数传递,但是需要三个视图才能将这个功能,实在是。。。

怎么说,Oracle BAM的不够灵活以及资料的缺乏,确实让我们实现起来走了不少弯路,不过还好,总算走下来了,起码项目完成得还不错。


推荐阅读
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案
    深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • 在尝试对 QQmlPropertyMap 类进行测试驱动开发时,发现其派生类中无法正常调用槽函数或 Q_INVOKABLE 方法。这可能是由于 QQmlPropertyMap 的内部实现机制导致的,需要进一步研究以找到解决方案。 ... [详细]
  • 如何将Python与Excel高效结合:常用操作技巧解析
    本文深入探讨了如何将Python与Excel高效结合,涵盖了一系列实用的操作技巧。文章内容详尽,步骤清晰,注重细节处理,旨在帮助读者掌握Python与Excel之间的无缝对接方法,提升数据处理效率。 ... [详细]
  • 属性类 `Properties` 是 `Hashtable` 类的子类,用于存储键值对形式的数据。该类在 Java 中广泛应用于配置文件的读取与写入,支持字符串类型的键和值。通过 `Properties` 类,开发者可以方便地进行配置信息的管理,确保应用程序的灵活性和可维护性。此外,`Properties` 类还提供了加载和保存属性文件的方法,使其在实际开发中具有较高的实用价值。 ... [详细]
  • 本文详细解析了使用C++实现的键盘输入记录程序的源代码,该程序在Windows应用程序开发中具有很高的实用价值。键盘记录功能不仅在远程控制软件中广泛应用,还为开发者提供了强大的调试和监控工具。通过具体实例,本文深入探讨了C++键盘记录程序的设计与实现,适合需要相关技术的开发者参考。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 在配置Nginx的SSL证书后,虽然HTTPS访问能够正常工作,但HTTP请求却会遇到400错误。本文详细解析了这一问题,并提供了Nginx配置的具体示例。此外,还深入探讨了DNS服务器证书、SSL证书的申请与安装流程,以及域名注册、查询方法和CDN加速技术的应用,帮助读者全面了解相关技术细节。 ... [详细]
  • 在《ChartData类详解》一文中,我们将深入探讨 MPAndroidChart 中的 ChartData 类。本文将详细介绍如何设置图表颜色(Setting Colors)以及如何格式化数据值(Formatting Data Values),通过 ValueFormatter 的使用来提升图表的可读性和美观度。此外,我们还将介绍一些高级配置选项,帮助开发者更好地定制和优化图表展示效果。 ... [详细]
  • 本文深入解析了WCF Binding模型中的绑定元素,详细介绍了信道、信道管理器、信道监听器和信道工厂的概念与作用。从对象创建的角度来看,信道管理器负责信道的生成。具体而言,客户端的信道通过信道工厂进行实例化,而服务端则通过信道监听器来接收请求。文章还探讨了这些组件之间的交互机制及其在WCF通信中的重要性。 ... [详细]
  • Keepalived 提供了多种强大且灵活的后端健康检查机制,包括 HTTP_GET、SSL_GET、TCP_CHECK、SMTP_CHECK 和 MISC_CHECK 等多种检测方法。这些健康检查功能确保了高可用性环境中的服务稳定性和可靠性。通过合理配置这些检查方式,可以有效监测后端服务器的状态,及时发现并处理故障,从而提高系统的整体性能和可用性。 ... [详细]
  • 在数据库事务处理中,InnoDB 存储引擎提供了多种隔离级别,其中 READ COMMITTED 和 REPEATABLE READ 是两个常用的选项。本文详细对比了这两种隔离级别的特点和差异,不仅从理论角度分析了它们对“脏读”和“幻读”的处理方式,还结合实际应用场景探讨了它们在并发控制和性能表现上的不同。特别关注了行锁机制在不同隔离级别下的行为,为开发者选择合适的隔离级别提供了参考。 ... [详细]
author-avatar
lewis_and_his_wife_480
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有