Showing posts with label OBIEE 11g. Show all posts
Showing posts with label OBIEE 11g. Show all posts

Wednesday, July 2, 2014

OBIEE 11g : How to set log level?


OBIEE 11g : How to set log level?


In previous post we have seen query logging introduction.


In this post we will see how we can set log level.
We can enable logging level for individual users, system user, and individual request.

1.  For Individual analysis(Temporary log):

While diagnosing query performance or data issue we may need to set temporary log level for a query.
For this we need to set Log_level system variable in advanced tab of analysis.
Add below code in prefix and click Apply Sql.

SET VARIABLE LOG_LEVEL=2;



 This will fetch log only for desired analysis.


2.  For Individual User:

We can set log level for individual user in two ways.

1.       a.  Initializing Loglevel Session Variable:

We can set log level for each user by setting the loglevel system session variable via an initialization block.


b.  Using User Dialog:
a.    In the Administration Tool, select Manage > Identity (11g). The Security Manager dialog box appears.
b.    Double-click the user's user ID. The User dialog box appears.
c.    Set the logging level by clicking the Up or Down arrows next to the Logging Level field.






3.  System Log Level:

You can find a default logging level in the options>Repository tab of the repository.
This will set a system level default log level that will fetch logs for all users as well as all analysis.




Tuesday, July 1, 2014

OBIEE 11g : Query Logging

OBIEE 11g : Query Logging


OBIEE 11g allows controlling the information that is being logged.
We can fetch the logical as well as physical query by enabling log level.
You can enable logging level for individual users, system user, and individual request.

OBIEE provides different levels of logging as from 0(no logging) to 5(all the information).


Query Logging Levels Description:

Logging Level
Information That Is Logged
Level 0
No logging.
Level 1
Logs the SQL statement issued from the client application. Also logs the following:
·         Physical Query Response Time — The time for a query to be processed in the back-end database.
·         Number of physical queries — The number of queries that are processed by the back-end database.
·         Cumulative time — The sum of time for all physical queries for a request (that is, the sum of all back-end database processing times and DB-connect times).
·         DB-Connect time — The time taken to connect to the back-end database.
·         Query cache processing — The time taken to process the logical query from the cache.
·         Elapsed time — The time that has elapsed from when the logical query is presented to the BI Server until the result is returned to the user. Elapsed time can never be less than response time, because elapsed time takes into account the small extra time between the logical query being presented to the BI Server to the start of preparation of the query. In cases where this delta time is negligible, the elapsed time equals the response time.
·         Response time — The time taken for the logical query to prepare, execute, and fetch the last record. This matches the TOTAL_TIME_SEC that is logged in usage tracking.
·         Compilation time — The time taken to compile the logical query.
·         For each query, logs the query status (success, failure, termination, or timeout), and the user ID, session ID, and request ID.
Level 2
Logs everything logged in Level 1.
Additionally, for each query, logs the repository name, business model name, subject area name, SQL statement issued against the physical database, queries issued against the cache, number of rows returned from each query against a physical database and from queries issued against the cache, and the number of rows returned to the client application.
Level 3
Logs everything logged in Level 2.
Additionally, adds a log entry for the logical query plan, when a query that was supposed to seed the cache was not inserted into the cache, when existing cache entries are purged to make room for the current query, and when the attempt to update the exact match hit detector fails.
Do not select this level without the assistance of Oracle Support Services.
Level 4
Logs everything logged in Level 3.
Additionally, logs the query execution plan. Do not select this level without the assistance of Oracle Support Services.
Level 5
Logs everything logged in Level 4.
Additionally, logs intermediate row counts at various points in the execution plan. Do not select this level without the assistance of Oracle Support Services.
Level 6 and 7
Not used.



Viewing logs:

Logs get stored in NQSQUERY.log file.
It is located at,

<instance_home>/diagnostics/logs/OracleBIServerComponent/coreapplication_obis1/

Also logs can be viewed from dashboard administration.
We can fetch logs from Administration>Manage Sessions

Here we can see all the logs generated for different users.


Please check my next post on how to set query log level,

OBIEE 11g : How to set log level?



Friday, June 20, 2014

OBIEE 11g : Using Popup Boxes/Alerts with prompts

We can make use of JavaScript Popup boxes in OBIEE 11g UI customization.

We can associate these alert messages with dashboard prompts.

We can achieve data validation using these alerts.

For this we create a prompt as Number1 and Number2. Also we define presentation variable as num1 and num2 respectively.


 


Now we add text view and add following code to it.

                <head>
                <script type="text/javascript">

                var num1='@{num1}';
                var num2='@{num2}';

                alert('Number 1 is '+num1+'and number 2 is '+num2);

                </script>
                </head>

This code simply checks numbers entered in text boxes and generates alert.




As you can see an alert is being shown when we apply prompts. According to our script it simply shows numbers entered in text boxes.

Here we use ‘alert()’ function of JavaScript to generate alert.
Also we can use presentation variables i.e. num1 and num2 to initiate variables.

Now consider following code.
We can also check other operations as following code.


                <head>

                <script type="text/javascript">

                var num1='@{num1}';
                var num2='@{num2}';

                if(num1>num2)
                alert('Number1 is greater than number2' );

                else if(num1<num2)
                alert('Number2 is greater than number1' );

                else
                alert('Number1 and number2 are same' );

                </script>

                </head>


This script compares numbers entered in 2 text boxes and generates alert as follows.









Tuesday, June 17, 2014

OBIEE 11g : Changing Oracle Logo from Login/Home Page


In OBIEE 11g we can change the oracle logo from login page as well as home page.
For custom skin changes we have already deployed ‘TestSkin’.
Plese refer ,

OBIEE 11g: Deploying & Developing a Custom Skin Part 1

OBIEE 11g: Deploying & Developing a Custom Skin Part 2


1. Changing Oracle Logo from Login Page-

Oracle logo appearing on login page is located at below location,

<instances>/instance1/bifoundation/OracleBIPresentationServicesComponent/coreapplication_obips1/analyticsRes/sk_TestSkin/login/

The logo image located at this location is oracle_logo.png”.
So we simply need to replace this image with the logo that we need to put.
Rename new logo as “oracle_logo”
Logo should have same size as of Oracle logo i.e. 119x25

2. Changing Oracle Logo from Home Page-

Oracle logo appearing on home page is located at below location,

<instances>/instance1/bifoundation/OracleBIPresentationServicesComponent/coreapplication_obips1/analyticsRes/sk_TestSkin/B_mozila_4/

We need to follow same steps as we followed to change logo from login page.
The logo image located at this location is oracle_logo.png”.
So we simply need to replace this image with the logo that we need to put.
Rename new logo as “oracle_logo”
Logo should have same size as of Oracle logo i.e. 119x25

Once done restart presentation services and you will see the changed logos on login as well as home page.




Friday, June 13, 2014

OBIEE 11g : Display Image / Using Image as a Link on Dashboard Page

Display  Image:

We can add an image or image link on dashboard page by making use of HTML <img> tag.

Syntax for image tag is,

<img src="URL" alt="Some_Text" width="x" height="y">

Src is the location of image.
In case of OBIEE we will be storing image on server folder.
To fetch this image we need to give path of image location.

In this example I will be storing image on Custom skin folder created for Custom Skin.
To understand Custom Skin Folder creation please refer,

Deploying & Developing a Custom Skin Part 1


I have copied my image i.e. ‘welcome.jpg’ at following location in ‘analyticsRes’ custom skin folder,

<instance>/bifoundation/OracleBIPresentationServicesComponent/coreapplication_obips1/analyticsRes/s_TestSkin/b_mozilla_4

Now to fetch this image in we need to add text view to dashboard page and select ‘Contains HTML markup’.
Then use following code,

<img  src=”/analyticsRes/s_TestSkin/b_mozilla_4/welcome.jpg"  alt="WelcomeImg"  width="400"  height="200">

We can use this path from ‘analyticsRes’ as we have deployed this custom folder in fusion middleware.
This will display image on your dashboard page.

Using  Image as a Link on Dashboard Page:

Similarly to use  image as a link we can use following code,

<a href="http://slc02oky.oracle.com:7780/analytics/saw.dll?PortalGo&Action=prompt&path=%2Fshared%2FPrashant%2FTest%2FDashboard""><img  src=”/analyticsRes/s_TestSkin/b_mozilla_4/welcome.jpg"  alt="WelcomeImg"  width="400"  height="200">

Thus every time user clicks on this image he will get directed to Test Dashboard.

Similarly we can also navigate to other dashboard objects/pages/analysis/webpages just by changing path as per requirement.


Relevant Posts:

Thursday, June 12, 2014

OBIEE 11g : Using HTML Hyperlinks (Links) with OBIEE 11g

Using HTML Hyperlinks (Links) with OBIEE 11g

 

We can make use of HTML Hyperlinks to put links on dashboard.

Links allow users to click their way from page to page.

The HTML <a> tag defines a hyperlink.
A hyperlink (or link) is a word, group of words, or image that you can click on to jump to another document.

When you move the cursor over a link in a Web page, the arrow will turn into a little hand.
The most important attribute of the <a> element is the href attribute, which indicates the link's destination.

Syntax for HTML hyperlink is,

<a href="url">Link text</a>

For example:

Add text view in OBIEE and put following code in text view. Select ‘Contains HTML markup’

<a href=”http://bisimplified.blogspot.com”>Visit BI Simplified</a>


It will create hyperlink on dashboard as follows,

                          Visit BI Simplified

This link will open target web page within same link.

To open target page in new tab we can use following code,

<a href=”http://bisimplified.blogspot.com” target="_blank">Visit BI Simplified</a>

The link generated will be as follows,

                          Visit BI Simplified


You can allocate this link on dashboard as per your requirement using <div> tag.

Tuesday, June 10, 2014

OBIEE 11g: Object Level Security Implementation

Object Level Security Implementation


Object Level Security in OBIEE deals with access restriction to various OBIEE objects for different application roles and users.
Object level security controls the access to different objects based on user roles.

Object level security is achieved by granting or denying access to application role or user. The properties applied to application role gets  applied to all the users under it.
We have already seen the Application role, Groups and Users management in my previous post here.

We can restrict access to following objects using object level security,
        1.  Presentation Tables
        2.  Presentation table columns
        3.  Subject area
        4.  Reports
        5.  Dashboards
        6.  Dashboard Pages
        7.  Catlog Folders

If a user is a direct member of an application role, they will have access to the reports allowed by that application role. If a user is not a member of an application role, they will not have access to the reports allowed by that application role.

Object level security can be implemented at presentation layer of repository and web catlog.

Repository Level :

We can set object level security at repository on presentation layer.
We can grant/deny access to user/application roles to access subject area, table or column.

Object level security applied on columns is also called as Column Level Security.

In presentation layer go to properties of a subject area,table or column.
Select permissions.
Select ‘Show all users/application roles’
Here you can see all the users and application roles and properties such as read, read/write, no access and default.
You can set these properties as per your requirements and achieve object level security.




  


Web Catlog Level:

We can set object level security at web catlog level on folders, dashboards, dashboard pages and reports. User can only see object for which it possess authorization.
Similar to object level security on repository level, we can set permissions for application role or users.

Select any folder, dashboard, dashboard page or report.  
Go to its Permissions.

  

Here you can see the list of application roles/users and permissions set for them.
Following is the list of permissions we can set,


We can also set the custom permissions.


Following are the Permissions and their description.

Permission
Description
Read
Use this option to give authority to access, but not modify, the object.
Write
Use this option to give authority to edit the object.
Delete
Use this option to give authority to delete the object.
Traverse
Use this option to give authority to access objects in folders within the selected folder when the user does not have permission to the selected folder. For example, if you grant usersTraverse Folder permission to the /Shared Folders/Test folder, they cannot access objects in the/Shared Folders/Test folder but can access objects stored in lower-level folders, such as the /Shared Folders/Test/Guest folder.
Run Publisher Report
Use this option to give authority to read, traverse the folder that contains the object, and regenerate the report so that it includes the most recent data.
Schedule Publisher Report
Use this option to give authority to read, traverse the folder that contains the object, and schedule the report.
View Publisher Report
Use this option to give authority to read, traverse the folder that contains the object, and view, but not regenerate the report.
Execute
Use this option to give authority to run an object, such as an action, agent, or a briefing book.
Change Permissions
Use this option to give authority to change the object's permissions.
Set Ownership
Use this option to give authority to reassign ownership of the object.
Full Control
Use this option to give authority to perform all tasks (modify and delete, for example) on the object.
No Access
Use this option to deny access to the object. Explicitly denying access takes precedence over any other permission.
Modify
Use this option to give authority to read, write, and delete the object.
Open
Use this option to give authority to access, but not modify, the object. If you are working with an Oracle BI Publisher object, this option enables you to traverse the folder that contains the object.
Custom
Use this option to display the Custom Permissions dialog, where you grant read, write, execute, and delete permissions.
Granted
Use this option to give authority to access a section in a dashboard. This permission can be set in the dashboard, only. This permission overrides any catalog permissions set on the section's objects that would prevent the corresponding roles, Catalog groups, and users from accessing them (for example, No Access).
Denied
Use this option to deny access to a section in a dashboard. This permission can be set in the dashboard, only. This permission overrides any catalog permissions set on the section's objects that would allow the corresponding roles, Catalog groups, and users to access them.

Here we can see more options such as,

Apply effective permissions - It applies set permission to role/user.
Replace with parent’s folder permissions – It inherits the permissions of parent folder.



Apply permissions to sub-folders allows permissions to get applied on all sub folders under that folder.
Apply permissions to items within folders  allows permissions to get applied to the objects under that folder.



Also we can add more application roles and users as,




Relevant Links :