I am trying to find a report or something that would tell me when the last time or date a user(supervisor) logged into CME.
Is this possible?
It would be good enough to know whether they have logged in the last 30 days as well if this is easier to see.
We have CCA, ICON and access to Configuration Server tables but cannot see anything to obtain this particular data.
I maybe wrong but that’s likely only going to show up in the confserv logs unless you have some auditing solution installed as well to catch any changes they make.
You can enable Last Login option on config server.
But it might not help you as it only tracks the actual last log in for the user. Means if the supervisor uses WDE after CME it will show the WDE login.
It might work if you create a specific csproxy for CME logins, enable last login, and don’t use last login for all other CSPs.
To have a view which is telling you something you could use the following sql statement to check:
SELECT
CFG_PERSON.USER_NAME,
CFG_PERSON.EMPLOYEE_ID,
CFG_PERSON.LAST_NAME,
CFG_PERSON.FIRST_NAME,
decode(CFG_PERSON.STATE,1,'enabled',2,'disabled') as STATE,
decode(CFG_PERSON.IS_AGENT,1,'NONAGENT',2,'AGENT') as PERSON_TYPE,
to_date('1970-01-01','YYYY-MM-DD') + numtodsinterval(LOGIN_TIME,'SECOND') AS LastLogin,
CFG_APPLICATION.NAME AS APPLICATION
FROM
CFG_PERSON
LEFT JOIN
CFG_HDB_LAST_LOGIN
ON CFG_PERSON.DBID = CFG_HDB_LAST_LOGIN.PERSON_DBID
LEFT JOIN
CFG_APPLICATION
ON CFG_APPLICATION.DBID = CFG_HDB_LAST_LOGIN.APP_DBID
ORDER BY LastLogin ASC;
Yes!
Have just tested and using the CFG_HDB_LAST_LOGIN table I can report on the information required.
The login time itself is UTC so needs a conversion , otherwise reporting is available.
Sorry for the delayed post.
If you need historical reporting on this:
On Configuration Server Application (confserv):
make sure the option log\print-attributes is set to true;
Set the option log-extended\level-reassign-22121 to ‘standard’ (without the quotes);
Make sure the Configuration Server application has a connection to the Log Events message server;
Confirm the option log\standard has ‘network’ on its destinations (without the quotes).
On the Log Events Message Server Application:
Confirm it has a DAP in its connections to the Log Database (or it has the DBServer options pointing to the Log Database);
Make sure the option messages\db_storage is set to true.
On the Log Database, perform the following query (assuming Oracle DBMS):
select to_char(lm.timegenerated, ‘yyyy-mm-dd hh24:mi:ss’) as logintime, lau.attr_value as username, lap.attr_value as application_, lah.attr_value as hostname, lm.messagetext
from gen_log.g_log_messages lm
inner join gen_log.g_log_attrs lau on lau.LRID = lm.id and lau.attr_name = ‘USER’
inner join gen_log.g_log_attrs lap on lap.lrid = lm.id and lap.attr_name = ‘APPNAME’
inner join gen_log.g_log_attrs lah on lah.lrid = lm.id and lah.attr_name = ‘HOST’
where lm.message_id = 22121;
There is another option for historical reporting that I just thought about (the problem is solved already, but just for a matter of keeping it recorded here):
You could create a Database Trigger that runs after UPDATEs on the table CFG_HDB_LAST_LOGIN and save the data of the new values on a customized table. That way, you can record each login of a person, and have control of the retention rules.
I am not sure about the table CFG_HDB_LAST_LOGIN whether contains all attempts to log into Genesys environment as I saw a few installation where this table was always empty (even the HDB was enabled). So I would not rely on it
At least for me it’s tracking all logins for now in a test environment.
If the customers are using CSProxies they have to be configured to sync this information with confserv.
I have to admit , that I like the solution via log db more.
The Log DB does not automatically purge by default. The administrator is reposible for either run the Log DB Maintenance Wizard or create an automated job for purging old data.
In that case, it is interesting to include a “WHERE” clause in order not to delete the records which have the messageid = 22121 or else this historical report would be compromised
Edit: I just realized you have already added that note