Tuesday, July 7, 2020

Kibana Dashboards - Related Content for Classic

In the following DIY blog series, I described how we can use the framework provided in PeopleTools 8.58 to configure our own custom visualizations and dashboards in Kibana and use them in PeopleSoft applications via the 'Kibana Visualizer'.

Refer: DIY - Kibana Dashboards with Application Data

Part 3 described how we can configure a Kibana visualization/dashboard as a Tile within PeopleSoft. There is also another way we can expose the Kibana visualization/dashboard in PeopleSoft. This alternate approach is to configure them as related information/content of a component.

Configure Kibana Visualizations as Related Information/Content of a Component

Let us take the same Kibana dashboards that we built in the DIY series and configure them as related information of a component.

Gotcha: As delivered, this option only works for Fluid components.

So, let us pick a Fluid component - HR_EE_ADDR_FL (Employee Self Service > Personal Details > Addresses) and configure the Kibana dashboards as related information.

Navigation: PeopleTools > Search Framework > Administration > Kibana Visualizations > Component Level (Tab)


Configure Kibana Visualizations as Related Content of a Classic Component

As we saw in the previous section, the 'Component Level' - related information option is only available for Fluid components. Does this mean we cannot use Kibana visualizations/dashboards as related content for Classic? It is true that we cannot use the delivered 'Kibana Visualizations' configuration page for Classic components. But we can simply configure a related content service that points to the 'Kibana Visualizer' component and pass appropriate parameters to display the desired dashboards!

Create Related Content Service


URL and Parameters

The URL and parameters required for the Related Content Service could be determined by inspecting the 'Full View' of any Kibana dashboard displayed via the 'Kibana Visualizer' as shown below.


URL

The below URL is an example of a dashboard (Full View) displayed via the 'Kibana Visualizer' in 'Full View' mode.

http://pi034.hcm92.com:8000/psc/ps_newwin/EMPLOYEE/HRMS/c/PTSF_SEARCH_ADMIN.PTSF_KIBANA_COMP.GBL?DBOARD=URLGEN&DASHBOARD=IB Dashboard&SUMMARY=IB Tile Dashboard&ICDoModeless=1

Required Parameters for Related Content Service

Parameters Notes
DBOARD URLGEN will ensure that 'Kibana Visualizer' (Full View) is used
DASHBOARD Name of the Kibana Dashboard for Full View
ICDoModeless This will ensure that the Branding header is not displayed

Note: The SUMMARY parameter is not required for the related content service because we will only be using the 'Full View' and don't require the 'Tile View'.

Manage Related Content Service

As a proof of concept, we will add the Related Content Service to PeopleTools > Integration Broker > Service Operations Monitor > Monitoring > Asynchronous Services.



Demo


Conclusion

This proof of concept is in response to a question that was posed on the following blog post.

PeopleTools 8.58 - Application Data and Kibana Dashboards

Can we setup Kibana dashboards as related content of Classic pages? The delivered framework does not provide an option for this setup but we can configure this directly using related content.

10 comments:

  1. It's pretty interesting, will try in a demo environment first. Your blogs are very helpful. Thanks for sharing 👍

    ReplyDelete
  2. Many thanks for this post, Sasank!

    Off-topic question : is there any way to change how a table is created? For example, certain tables have "pt_dragResize" class associated with them for the header row. Can we change how this class is set and applied?

    ReplyDelete
  3. Hi Sasank, We are on People tools
    8.58 PUM 37, the kibana dashboards do not open
    directly .It asks for authentication.SSO is enabled in PS.Is anything we need to setup.Thanks Priya

    ReplyDelete
    Replies
    1. I am not sure what is missing here.

      Did you install the PeopleSoft version of ELK stalk? Also, is this a PUM image or a custom environment?

      Delete
    2. This is strange. I have not run into this problem. I will let you know if I have any other ideas.

      Delete
    3. Hi sasank, kibana is not SSL configured.oracle says its a bug.thanks.

      Delete
    4. Oh. If that is the case, you can trace/debug and update the Peoplecode to bypass that logic.

      Enable a PeopleCode trace and see what you find. I don't know the exact events but it could be possible to get it to work (if this is demo PUM image).

      Delete
  4. Hi sasank, is it required to have SSL configured , for the issue to work?

    When we logged issue with oracle , the engineer says the direct login to kibana doesnt work for many users.SO it a bug and may be released in next patch.

    The PTSF_KIBANA_COMP.activate peopelcode generates the url and doesn't insists on SSL.

    This is UAT instance of PUM37 and we are waiting to solve this issue so that we can migrate the dashboards to PROD>

    Thanks
    Priya

    ReplyDelete
    Replies
    1. If you have SSL enabled in your UAT (PIA) environment, then you will also need to have SSL enabled on Kibana.

      Otherwise, you will run into issues.

      Delete
  5. Hi sasank, thanks for the respose

    Oracle states that without SSL too we can connect to kibana without authentication. We may have misinterpreted . But our admin too have confirmed this.

    Please find the below error log :

    [INFO ][o.e.c.r.a.All ReferenceError: isUserAlreadyLoggedIn is not defined status changed from [RED] to [YELLOW] (reason: [shards started [[.kibana_1][0]] ...]). at handler (/u01/app/oracle/esearch/pt/Kibana7.0.0/plugins/orcl-auth-kibana/server/routes/authroutes.js:87:4) 3715789,1-8 Botat module.exports.internals.Manager.execute (/u01/app/oracle/esearch/pt/Kibana7.0.0/node_modules/hapi/lib/toolkit.js:35:106)at Object.internals.handler (/u01/app/oracle/esearch/pt/Kibana7.0.0/node_modules/hapi/lib/handler.js:50:48)at exports.execute (/u01/app/oracle/esearch/pt/Kibana7.0.0/node_modules/hapi/lib/handler.js:35:36)at Request._lifecycle (/u01/app/oracle/esearch/pt/Kibana7.0.0/node_modules/hapi/lib/request.js:263:62)at process._tickCallback (internal/process/next_tick.js:68:7)Debug: internal, implementation, errorReferenceError: isUserAlreadyLoggedIn is not defined

    Thanks
    Priya

    ReplyDelete