作者:lewis_and_his_wife_480 | 来源:互联网 | 2023-06-24 04:11
最近在做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的不够灵活以及资料的缺乏,确实让我们实现起来走了不少弯路,不过还好,总算走下来了,起码项目完成得还不错。