欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle OAM单点实现登录后,查看当前登录用户数量的方法

程序员文章站 2022-04-21 20:51:07
背景: 一个项目上线后,尤其是门户项目,经常会要求统计在线人数的情况,那么怎样准确的统计当前系统的在线人数情况呢,下面给出查询方法 查询方法: 方法一: 在oamconso...

背景:

一个项目上线后,尤其是门户项目,经常会要求统计在线人数的情况,那么怎样准确的统计当前系统的在线人数情况呢,下面给出查询方法

查询方法:

方法一:

在oamconsole中,查看会话管理,可以看出此页面是ADF标准查询,上方是查询面板,有用户IP和客户机IP地址两个搜索条件,k可以输入客户机IP进行模糊搜索,此IP一般情况为OHS服务器的IP地址

Oracle OAM单点实现登录后,查看当前登录用户数量的方法

如此就可以搜索出用户的在线情况,但是此方法有一定弊端,就是只能搜索出100个用户,当在线数量大于100时,就无法完全显示,这是产品后台查询限制住了,那我们还有其他方法去查询全部的用户在线情况吗,答案是肯定的

方法二:

分析:从方法一中的截图可以看出,用户记录的显示在后台肯定是有底层表的支持的,我们在安装Oam创建RCU时,会自动新建Schema,那如果找到这个Schema下存放用户登录情况的表不就可以解决问题了吗

1、先确定安装Oam创建RCU时新建的Schema名称,一般为_OAM结尾

2、pl/sql登录此Schema,查看Table,会发现有一张oam_session的表,没错,就是他,上图中的底层表,执行如下,查询语句

即可查看当前用户在线情况

selectuserid,

to_char(s.last_access_time,'yyyy-mm-dd hh24:mi:ss') create_date,

to_char(s.last_update_time,'yyyy-mm-dd hh24:mi:ss') update_date

fromoam_session s

wheres.identity_domain='UserIdentityStore1'

orderbyupdate_datedesc