Wednesday, December 28, 2016

OBIEE 12c : Single script to export the service instance

As we are all aware, in OBIEE 12c all the code movements are recommended to be performed using the service instance export files called BAR ( BI Application Archive) files.

In General we will have to open the Weblogic command in offline mode and use the export service instance command with parameters as described in my previous post Export and Import Service Instances. But we can also make all this steps into a single script and the just run that so everything happens on it own. This helps you save time as each time you have to navigate to different locations and remember directories and write export script which might have typo errors etc.

Lets see what we can do, if we have the Work and Export Directories fixed then we can decide on  the export instance command, which generally will not change. Mine is as below.

exportServiceInstance('/oracle/systems/apps/Middleware/Oracle_Home/user_projects/domains/bi','ssi','/userhome/oraclebi/Desktop/BARWorkDir','/userhome/oraclebi/Desktop/BARExpDir','','','',true,'Admin123')

now save this command in a file with extension .py and make sure to give full permissions to user who runs the script. My case the file name is  SIExport.py located in below location


/home/oracle/scripts/SIExport.py 

Now all you need is to run this against the WLST  opened in offline mode. to do this we can actually use the below syntax.


java weblogic.WLST /home/oracle/scripts/SIExport.py 


But if you run this directly you will not be able to initialize the weblogic scripting tool, we need to set the environment before this using the below command.

source setWLSEnv.sh


Now we know the order and what needs to be done, include all the commands in a .sh file in required sequence. my file is ServiceInstanceExport.sh which is as below.


#!/bin/bash
# Purpose : Export the Service Instance
# Author : Rampradeep Pakalapati


ORACLE_HOME=/oracle/systems/apps/Middleware/Oracle_Home
WL_PATH=$ORACLE_HOME/wlserver/server/bin
source $WL_PATH/setWLSEnv.sh
sleep 5
java weblogic.WLST /home/oracle/scripts/SIExport.py


#End of File

Now if you just run the file as ./ ServiceInstanceExport.sh , your service instance will be exported to the mentioned export directoty.

OBIEE 11g : All services are running but unable to Login to analytics

During a recent installation of OBIEE 11.1.1.7.0 on one of my personal machines i have noticed something strange which has not happened to be before. The installation went on to complete successfully and the analytics page popped up as usual, but surprisingly i was not able to login to analytics. Admin Console and Enterprise Manager allowed the weblogic login with out any issues.


Verified all the deployments and was able to see no issues, restarted to see if that fixed the issue. Even the status of all opmn components is Alive.SO then i decided to go on to have a look at the Server log files. As this is something related to Analytics login only usually my first preference is to look at bi_server1.log, bi_server1-diagnostic.log, NQserver.log and sawlog.log files.


I found these below errors in bi_server1-diagnostic.log and NQserver.log

bi_server1-diagnostic.log

 WSM-02557 oracle.wsm.policymanager.accessor.BeanAccessor The documents required to configure the Oracle Web Services Manager runtime have not been retrieved from the Policy Manager application (wsm-pm), possibly because the application is not running or has not been deployed in the environment. The query "/policies/oracle/wss_username_token_service_policy" is queued for later retrieval.

[WSM-02353] [oracle.wsm.resources.policymanager] [tid: [ACTIVE].ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: ] [ecid: f2c8df7ec64d12f7:1c25f84e:14402c30fe1:-8000-0000000000001049,0] [APP: wsm-pm] Unable to get the Action Executor.

NQServer.log:

[WSM-02557] oracle.wsm.policymanager.accessor.BeanAccessor The documents required to configure the Oracle Web Services Manager runtime have not been retrieved from the Policy Manager application (wsm-pm), possibly because the application is not running or has not been deployed in the environment. The query "/policies/oracle/no_authentication_service_policy" is queued for later retrieval

 [nQSError: 43126] Authentication failed: invalid user/password.


When i saw thw Authntication failed message, I directly went into Administration Console to see if have the BISystemUser available as this is quite a famous issue. To my surprise its there however OracleSystemUser is missing from the list. I contacted a friend of mine in Oracle and found that this can be created directly as below.

  • Create a User with the name OracleSystemUser
  • Assign OracleSystemGroup to the user created, if group is missing then create one.
  • Make sure the OracleSystemRole under "Roles and Policies" --> "Global Roles" has the OracleSystemGroup added to it.
  • If OracleSystemRole role is missing create one with "Manage Global Roles" link in "How do I" section on the left.
  • Add the OracleSystemGroup manually to Role using "Add Conditions" option.
  • Restart the OBIEE services.
This fixed my issue, for some only role is missing and for others user is missing, so this process will fit for both the cases. Hope this helped your case.

Monday, December 12, 2016

OBIEE 12c: Uploadrpd and Downloadrpd Commands

Its more than a year 12c is into market and people are Testing it, Trying it out and also some using it. However, there are still questions around RPD deployments and offline access to RPD.

As per Oracle documentation Uploadrpd and Downloadrpd are meant for offline repository diagnostic and development purposes such as testing, only. And in all other cases of repository development and maintenance situations, you should use BAR to utilize BAR's repository upgrade and patching capabilities and benefits.

Now we will look at how we can use the uploadrpd and downloadrpd commands. For us, to either upload or download rpd, we will have to look at the launcher script datamodel.sh (Linux) or datamodel.cmd(Window) from version 12.2.1.1.
This same functionality is available as data-model-cmd.sh in OBIEE 12.2.1 Version, we find many online posts with this command.

Downloadrpd command

Syntax

downloadrpd -O RPDname [-W RPDpwd] -SI service_instance -U cred_username [-P cred_password] [-S hostname] [-N port_number] [-SSL] [-H]

O - Repository Name you want to Download.
W - Password for RPD download mandatory, if not specified in command will ask when we run it.
SI - Service Instance Name
U - OBIEE username
P  - Password for the OBIEE Username
All the above are Mandatory, where as the below are needed if you are using the command from a client installation
S - OBIEE server name
N - Port number
SSL - If SSL is enabled use this
H - displays the usage information and exits the command.

Example:- 

./datamodel.sh downloadrpd -O liverpd.rpd -W Admin123 -SI ssi -U weblogic -P Admin123 




Uploadrpd command

Syntax

uploadrpd -I <RPDname> [-W <RPDpwd>] -SI <service_instance> -U <cred_username> [-P <cred_password>] [-S <hostname>] [-N <port_number>] [-SSL] [-H]

I - RPD name you are uploading
W - Password for RPD download mandatory, if not specified in command will ask when we run it.
SI - Service Instance Name
U - OBIEE username
P  - Password for the OBIEE Username
All the above are Mandatory, where as the below are needed if you are using the command from a client installation
S - OBIEE server name
N - Port number
SSL - If SSL is enabled use this
H - displays the usage information and exits the command.

Example:- 

./datamodel.sh uploadrpd -I liverpd.rpd -W Admin123 -SI ssi -U weblogic -P Admin123




Thursday, December 1, 2016

OBIEE 12c : Export and Import Service Instance (BAR) files

This is once of the best features in OBIEE 12c, FYI my system is on 12.2.1.1. The way you can export your RPD, catalog, security model all at once without you having to worry about going to places and backing up files is just AWESOME.

I will keep it as simple as possible, BI Application Archive Files (BAR) are just like zip files but in BI application readable format. The basic idea behind this concept is to enable us to migrate the RPD, Catalog and Security Model all at once, to keep it simple. Its a command line utility and there is no other way around it.

First thing is to understand that it is a WebLogic Scripting Tool (WLST) utility, and can be executed only against it. To open a WLST command line utility open the below location on command prompt.

[ORACLE_HOME]/oracle_common/common/bin/

and run the file wlst.sh using the ./wlst.sh


Now before we start we need to know few details like DOMAIN_HOME, Service Instance Name, Administrator Username/Password which are already available as part of installation. Now we need two directories (for export) one for TempWorkSpace and other for saving the Exported BAR file.

Giving mine for an idea

DOMAIN_HOME/oracle/systems/apps/Middleware/Oracle_Home/user_projects/domains/bi

Service Instance Name = ssi (definitely this one if dont know what it is)

you can find the same using the listBIServiceInstances('[DOMAIN_HOME') command where it will display the key.

Work Dir/userhome/oracle/Desktop/BARWorkDir 

Export Dir/userhome/oracle/Desktop/BARExpDir


We have prepared enough and now its time for action, Invoke the wlst.sh file and it will start in offline mode, dont worry about offline lets take it for another day. Today only concentrate on import and export Service instances.

The magical commands at last exportServiceInstance()    and  importServiceInstance() , definitely not expected them to be so simple when they are doing so much.

All the wlst commands are case sensitive so you must remember them as is. Let s see how to use.


exportServiceInstance()

Obviously this will export the service instance with RPD, Webcatalog and security info without any question, but we will need to specify some parameters to it, there are 9 of them, 4 mandatory.

1st -- DOMAIN _HOME
2nd -- Service Insatnce Name
3rd -- Work Dir
4th -- Export Dir
5th -- No Use as of now, Future Use
6th -- no Use as of now, Future Use
7th -- no Use as of now, Future Use
8th -- true or false ( will decide on exporting user specific info like personal folders etc)
9th -- Password for exporting DB credentials, if not given then DB details are not exported

Now we can either go for 1-4 and leave rest as below

exportServiceInstance('/oracle/systems/apps/Middleware/Oracle_Home/user_projects/domains/bi','ssi','/userhome/oraclebi/Desktop/BARWorkDir','/userhome/oraclebi/Desktop/BARExpDir')

or leave the 6,7 and 8 as blanks and give 8th and 9th as below

exportServiceInstance('/oracle/systems/apps/Middleware/Oracle_Home/user_projects/domains/bi','ssi','/userhome/oraclebi/Desktop/BARWorkDir','/userhome/oraclebi/Desktop/BARExpDir','','','',true,'Admin123')

Both the cases a Folder is created in Export Dir, with data and time as folder name with a file generally as ssi.bar , You are done by the way.

importServiceInstance()

So no more explaining on what it does, we look at how to get it done directly. Even import command needs some parameters 7 on the whole and 3 mandatory

1st -- DOMAIN_HOME
2nd -- Service Instance Name
3rd -- BAR file location with name
4th - Boolean to import RPD
5th -- Boolean to import Catalog
6th -- Boolean for User info
7th -- Password for DB credentials import

Now lets just use 3 , to get the RPD and catalog imported as below

importServiceInstance('/oracle/systems/apps/Middleware/Oracle_Home/user_projects/domains/bi','ssi','/userhome/oracle/Desktop/BARExpDir/20161130_151519/ssi.bar')

To get everything imported from BAR file use below

importServiceInstance('/oracle/systems/apps/Middleware/Oracle_Home/user_projects/domains/bi','ssi','/userhome/oraclebi/Desktop/BARExpDir/20161130_151519/ssi.bar','true','true','true','Admin123')

You can change the 4,5 & 6 Boolean parameters as per your need. Oracle doesn't say anything about restarts after the Import but i did notice some inconsistencies it can be anything may not be even related at all, but i did a restart of services. You can too if had a chance.

OBIEE 11g - Find where the RCU schemas are hosted

Many of the times i hear people asking for details of the database where the RCU schemas are hosted. Its hard when the system is there for sometime and people who have installed BI would have left and responsibilities have shifted to others and so on you tend to forget the details.

But we always have the details within OBIEE, the only problem is many of us are not aware where to look. I my self suffered for sometime to find this out.

Login to Enterprise Manager, using the URL   http://hostname:portno/em

Now as soon as you Login you will see two icons Farm and Topology right Below the Oracle logo. Adding image to save your time.

Clicking on Topology will lead you to an architectural diagram where you will see a database with the JDBC connection details as below


Now from the URL, jdbc:oracle:thin:@Pied-PC:1521/ORCL we can get the below details.

Hostname of Database : Pied-PC
Port of Database : 1521
Service Name : ORCL

Now all it takes is login details , which ofcourse you cannot find in OBIEE. We can find only the user name of BIPLATFORM schema from the below location

Business Intelligence --> Corepplication --> Deployment --> Scheduler 


I'm sure it comes in handy especially if you are new to Administration.

OBIEE 12c - Display Images to Show the Trend

OBIEE 12c has not only changed in terms of  architecture,but also in the way we do reporting. Everything has become so simple and easy to understand (of course if you have know earlier versions well). The display of images next to data  to instantly understand the trend is one of the ways. Earlier version the same can be done but we have to do a bit of ground work for that, 12c gets it done a lot easier.

Let me consider a small report as shown in image below, where we display the Year, Office , Revenue and Target Revenue. Which is quite simple.

Now we have a lot more ways to highlight the data to show if the Revenue as met the Target.


Write a conditional format where you check if Revenue is higher than Target Revenue then Display in Green and if not in Red as shown below.



This looks good where as not presentable, you cant show red and green in presentations, it will be far better if we can use some arrows with Green and directed upwards for green and Red with looking down.  This can be achieved using the Image option given in Column Format.

I will write a small conditional Format on the column Revenue to fullfill this. 



Similarly for downward trend select a Red arrow going down. The report will look like below.



There are three options on the position of image, Left, Right and Image Only.

Left  -  to display the image on the Left on Data Value
Right - to display the Image on the Right of Data Value , which is also the system default

Image Only - to display the image alone and suppress the Data Value from the Report, Like Below.





Hope this helped !





Thursday, October 27, 2016

IOT : RFID - Radio Frequency Identification

RFID is next line of Identification technique to that of existing serial numbers and Barcodes. RFID means Radio Frequency Identification, which suggests that it uses Radio Frequencies. This is one of the most important technology in the Internet of Things, as scanning an object/Item using barcode is not an effective way to manage the IOT Applications.

Why RFID and Why Not Barcodes?

The Existing Barcode system will only help identifying an object or something else when the barcode is scanned or at least in line of sight, which holds good for most of the cases today. In a fast paced world we are still waiting in lines for billing your Shopping Cart. This consumes lot of time especially during weekends where the crowd is more.

RFID will enable us to identify the objects without actually scanning and there is no need to be in line of sight at all. A simple scan will enable the reader to identify the items with in a refined search area.

Example: - Finding a specific Item in a group of similar Items is hell of a job when you have to scan all the objects using Barcodes, whereas using RFID you will just scan the stack and BINGO you will be able to differentiate.

How exactly will RFID work?

Similar to Barcodes , RFID will also have serial code for each item but the way its reads is different. An RFID system consists of three components an antenna and transceiver (generally combined into one reader) and a transponder (the tag). The antenna uses radio frequency waves to transmit a signal that activates the transponder. When activated, the tag transmits data back to the antenna.

This data is generally used to notify a programmable logic of something like getting details of the Item, Opening access Gate or for a transaction at a Toll Gate etc.


More Info on RFID

Since we are talking about radio frequency we will also have to talk about range of this frequency and Power used for transmitting the frequency

Range of Frequencies : There are two types Low-frequency RFID systems (30 KHz to 500 KHz) which have small transmission ranges (generally less than six feet) and High-frequency RFID systems (850 MHz to 950 MHz and 2.4 GHz to 2.5 GHz) offer longer transmission ranges (more than 90 feet). It’s easy for us to guess that, the higher the frequency, the more expensive the system.


Power/Energy: we have two types of RFID tags, Passive and Battery powered. Passive RFID tag uses the radio energy from the Reader/Interrogator or the device which is requesting information to relay back the details. The Battery powered RFID tag use the energy from a small embedded battery to relay the information.


Thursday, October 13, 2016

OracleApps Table Naming Conventions for _B, _TL and _VL

The most seen format of tables in Oracle are the general tables, views, synonyms etc . But we alos have others like _B,__TL and _VL which have their own specific operation and usage. Let’s see what they actually define within them and how they are different from general tables,views etc.


_B these are the BASE tables.
  • They are very important and the data is stored in the table with all validations.
  • It is supposed that these tables will always contain the perfect format data.
  • If anything happens to the BASE table data, then it is a data corruption issue.

_TL are tables corresponding to another table with the same name minus the _TL. These tables provide multiple language support. For each item in the table without _TL there can be many rows in the _TL table, but all with different values in the LANGUAGE column.

_VL are views for multi language tables which combines the row of the base table with the corresponding row of the _TL table where the LANGUAGE = USERENV('LANG').


What does this mean, let get into details with an example.

Let’s say we have a record in BASE table with some name as TABLENAME_B. This can have multiple records in TABLENAME_TL table with LANGUAGE column different for each record.


Now how does TABLENAME_VL come into usage is when a user runs a select on this table only one record is displayed based on his language setting if at all that language exists in the TABLENAME_TL table.

If you want to see the records, you have to change the NLS_LANGUAGE parameter as per the language availability in _TL tables.


Monday, September 26, 2016

RHEL : Working with ODBC and ODBCINI

 Most of us are aware that ODBC drivers are the most used connectivity option on Linux when you want to connect to non-Oracle databases. As the Oracle databases are mostly connected by using the Oracle client installation or Default configuration available as part of the installation of the application, in any case, tnsnames.ORA will hold the database details as required.

Similarly, for ODBC we have two files odbcinst.ini and odbc.ini, each having its own purpose. For now I'm considering that we are on Red Hat Linux and the ODBC manager used is unixODBC 2.3.1

Find OS Version on RHEL using the below command

cat /etc/redhat-release



Find the default ODBC Manager version and where it is setup use below command

odbcinst –j



odbcinst.ini


This initialization file will have the details of the drivers that are available on the server, for example, the default ones are as below.

[PostgreSQL]

[MySQL]

You can get the drivers available in the file by using the below command.

odbcinst –q –d

Let’s say you want to configure Amazon RedShift drivers on the server, first step is to install the driver on the server after the installation add the below to the odbcinst.ini file

[RedShiftDB]

Description=Amazon Redshift ODBC Driver (64-bit)

Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so



Once we add this and run the odbcinst –q –d command we will now see below drivers

[PostgreSQL]

[MySQL]

[RedShiftDB]


ODBC.ini

This is the file where we actually configure the DSN with server details of the database’s we intend to connect or access from the Linux server.

In our Amazon RedShift case add the below with your respective details.

[RedShiftDB]

Description=Amazon Redshift ODBC

Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so

ServerName=abcdefgh.redshift.amazonaws.com

Port=5439

Database=redshiftdatabase1

locale=enUS

QueryTimeout=2000

ProxyHost=

ProxyPort=


We can verify the sources from the odbc.ini file using the below command

odbcinst –q –s

we can see the below output

[RedShiftDB]

Now it’s time we set these files as the system variables in bash_profile so that they work as expected,

OBDCINI – location of odbc.ini

AMAZONREDSHIFTODBC – location of file amazon.redshiftodbc.ini

LD_LIBRARY_PATH – library paths where your ODBC manager has installed, ex. /usr/lib64/



See the below examples

export ODBCSYSINI=/shared/odbc

export ODBCINI=/shared/odbc/odbc.ini

export AMAZONREDSHIFTODBCINI=/shared/odbc/amazon.redshiftodbc.ini

export LD_LIBRARY_PATH=/usr/lib64/:$LD_LIBRARY_PATH



Now lets test this using the isql command. This will help us to connect to anyof the DSN we added in odbc.ini, the command can be used as below


Isql –v RedShiftDB username password

Wednesday, September 21, 2016

OBIEE 12c : Changing the system component port numbers

One should be aware of the default ports used in OBIEE 12c, as soon as you install it.9514 for BI Server Component and 9507 for presentation server. This is because of the port range specified during the installation most of us will not have any problem with this. But sometimes when you have other instances with different versions of OBIEE or other applications installed in the same server as OBIEE 12c, there is a chance that we might have the port conflict.

My case, my other versions were all using 9031and 9033 for BI Server and Presentation Server respectively. So to get uniformity we were asked to change the OBIEE 12c ports as per the other OBIEE instances.

After a bit of digging on the Internet, I was able to find the process, which turns out to be pretty simple. Below are the steps

  • Stop the component for which you want to change the port.

Stop.sh -I obis1

  • Locate the file bienv-components.xml from below location 

Backup [DOMAIN_HOME]/config/fmwconfig/bienv/core/

  • Change the port which you intended to my case it’s the BI Server component (obis1)
<component instanceId="obis1">
  <endpoint>
    <componentType>OBIS</componentType>
    <port>9031</port>
    <initialMachine>server.domain</initialMachine>
    <sslMode>shared</sslMode>
  </endpoint>
  <endpoint>
    <componentType>OBIS_MONITOR</componentType>
    <port>9591</port>
    <initialMachine>server.doimain/initialMachine>
    <sslMode>shared</sslMode>
   </endpoint>
</component>   
  • Start the component using the below command

Start.sh –I obis1
  • This doesn’t change the values in Enterprise manager yet, as to synchronize we will need a full restart of Admin server. Can perform the same using stop.sh and start.sh

Note: The port that you give in the file should be available for use at OS level else your service will fail.

Tuesday, September 20, 2016

OBIEE 12c : Starting and Stopping the services is too slow


We have recently installed a OBIEE 12c on RHEL 7 server. As part of initial test we have done multiple restarts of the server using the default scripts start.sh and stop.sh. The thing that I observed is its taking very long time in doing the start and stop operations. I did some investigation on this and to my surprise I found an interesting update in OBIEE 12c.

As we are already aware that we no longer have the OPMN to monitor the system components, I was under the impression that they are monitored by Admin server. To my surprise I learnt that Node Manager is the one looking after these BI System Components. From this it’s clear that we have the delay because of the Node Manager and to fix this we need to increase the JVM Heap size.

We will do this using MEM_ARGS parameter which is a variable used to override the standard memory arguments passed to java.

Let’s see how we can do that in 12c

  • Locate the file “commBaseEnv.sh” in below location

[ORACLE_HOME]/oracle_common/common/bin

  • Open the file and Make the change for below line. Below shows the default values. Set some higher values, be sure to check your free memory and do the changes accordingly.

.....


case $JAVA_VENDOR in

Oracle)

if [ "${VM_TYPE}" = "JRockit" ]; then

JAVA_VM=-jrockit

MEM_ARGS="-Xms128m -Xmx256m"

UTILS_MEM_ARGS="-Xms32m -Xmx1024m"

else

JAVA_VM=-server

MEM_ARGS="-Xms32m -Xmx200m" 

UTILS_MEM_ARGS="-Xms32m -Xmx1024m" 

fi

....

...

...

else

case $JAVA_VENDOR in

Oracle)

if [ "${VM_TYPE}" = "JRockit" ]; then

JAVA_VM=-jrockit

MEM_ARGS="-Xms128m -Xmx256m"

UTILS_MEM_ARGS="-Xms32m -Xmx1024m"

else

JAVA_VM=-server

MEM_ARGS="-Xms32m -Xmx200m" 

UTILS_MEM_ARGS="-Xms32m -Xmx1024m" 

fi

VERIFY_NONE="-Xverify:none"


  • Restart the services using the start.sh and stop.sh as usual. This should resolve the slow start and stop issue.

OBIEE 12c : Change the default Locale from US to UK


All the Oracle Software’s comes with default as English-United States locale, this is something that gets some of us confused, because we don’t have any idea what a locale means. Frankly it doesn’t matter as it is mostly end user specific and Developers doesn’t bother about this very often. However end user happiness being the ultimate agenda of all the Software projects we are more inclined to enquire and acquire knowledge on this area.

Locale settings are something that are derived based on the region specific formats followed in the real time and are set to be followed by application, let’s take the OBIEE locales available in the localedefinitions.xml file which defines locale settings of different regions across the globe.

Some Example of Locale Settings
  • Date Format 
                   UK - DD-MM-YYYY
                   US - MM-DD-YYYY

  • Language
                    US - English (en)
                    France - French (fr)

Similar to the above we have date separator, Time Separator, Date Order, First day of week etc which may vary based on a country or region.

In OBIEE 12c, there are two files which hold information on these locale settings, localedefenitions.xml and localemapppings.xml located in below folder

[Oracle_Home]/bi/bifoundation/web/display

you can verify the default by logging on to the analytics and in my account you will find the below details by default.


If you want to change the default Locale to a different one to that of United States, please follow the below steps
  • Open the localemappings.xml file from above Location
  • Locate and change the below lines as shown to change it to English - United Kingdom



  • Restart the complete OBIEE services

Thursday, August 11, 2016

OBIEE 11g : Presentation Server state is NONE

Recently i had an issue starting the Presentation Services in OBIEE 11g. Where the status is NONE. I tried restart of all OPMN components as well was presentation service alone but all my efforts went  in vain. Then i started looking at the sawlog and found something very annoying.

[OBIPS] [INCIDENT_ERROR:1] [] [saw.webextensionbase.init] [ecid: ] [tid: ] Invalid item /system/mktgcache/sawguidstate.[[
File:catalogimpl.cpp


the error is now where related to what i do and moreover i haven't made any changes to the configuration or any other thing in OBIEE. Then i started looking close at the error which states that the initialization is not happening. Then i realized the last time the system has been turned off without shutting down the services which has left the saw server in non responsive state. the error says the file sawguidstate id invalid.

So lets delete this file and .atr related to this and start the presentation service.

Below is the location of files

[INSTANCE_HOME]\bifoundation/bifoundation\OracleBIPresentationServicesComponent\coreapplication_obips1\catalog\SampleAppLite\root\system\mktgcache


delete both sawguidstate  and sawguidstate.atr , if you don't want to delete them take a back up under this folder.

[INSTANCE_HOME]\bifoundation/bifoundation\OracleBIPresentationServicesComponent\coreapplication_obips1\catalog\SampleAppLite\root\system\mktgcache\{hostname}


Now start the Presentation server using the below statement

opmnctl startproc ias-component=coreapplication_obips1

Hope this resolves your error anything otherwise contact me.




Have a Good Day !!!!!



Monday, August 8, 2016

OBIEE 12c: Amazon RedShift ODBC configuration on Linux

Starting from OBIEE 12c Oracle has started supporting the Amazon Cloud database Redshift as a data source. This is very good news as there are lot of clients waiting for using the cloud data sources with OBIEE. Below are the high level steps on configuring the ODBC driver on Linux to use in connection pool.

 Below are the high level steps


  • Installing Driver 
  • Configuration of ODBC parameters
  • Configure Connection Pool

Installing the Driver


Download and install Amazon Redshift ODBC driver to access Amazon Redshift data warehouse. Follow the instructions provided in Amazon Redshift documentation.

Note: By default, Amazon Redshift drivers are installed in the following directories
/opt/amazon/redshiftodbc/lib/32 (for a 32-bit driver)
/opt/amazon/redshiftodbc/lib/64 (for a 64-bit driver)


Configure connectivity to Amazon Redshift

The following files has to be edited to configure Oracle BI server connectivity to Amazon Redshift :
1. odbc.ini
2. odbcinst.ini
3. amazon.redshiftodbc.ini
4. Copy dbfeatures.ini

Note: The following edits to files assume that the Amazon Redshift drivers are installed under “/opt/amazon/redshiftodbc/lib/64”.


1. odbc.ini


Add the following to odbc.ini file

[ODBC Data Sources]
.
.
.
RedShift=installed
[RedShift]
Description=Amazon Redshift ODBC
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so(default location, once you upgrade or reinstall the driver, file name may change)
ServerName=
Port=
Database=
locale=en-US
QueryTimeout=2000
ProxyHost=
ProxyPort=

2. odbcinst.ini

Add the following to odbcinst.ini file

[ODBC Drivers]
.
.
.
RedShift=installed
[RedShift]
Description=Amazon Redshift ODBC Driver (64-bit)
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so

3. amazon.redshiftodbc.ini

Edit “/opt/amazon/redshiftodbc/lib/64/amazon.redshiftodbc.ini” and update the following.

[Driver]

.
.
DriverManagerEncoding=UTF-16


4. dbfeatures.ini

Copy the attached dbfeatures.ini file to BI server config directory, /config/fmwconfig/biconfig/OBIS





Setting Up Database Objects and Connection Pools


Install Amazon Redshift ODBC driver for windows. Create a system DSN.



Set the database type to “ODBC Basic” or “ODBC Advanced” in connection pool properties



Set connection pool call interface to “ODBC 3.5”




Wednesday, May 18, 2016

Weblogic Sever : Authentication denied: Boot identity not valid; The user name and/or password from the boot identity file (boot.properties) is not valid.

This morning when i wanted to start my OBIEE services to verify a issue i was facing at my work. I haven't started my services for sometime now and when i started the Admin Server (Weblogic Server ) the same way i usually do,  i suddenly saw a message saying as below.

 
 


I had absolutely no clue what might have gone wrong as generally Admin server we do not see much issues when its OBIEE installation.As usual i went to the log files AdminServer.log, Adminserver-diagnostic.log  from below location

\user_projects\domains\bifoundation_domain\servers\AdminServer\logs

I found the below error at the end of the time around the time i started the Admin Server.

 

It is clear it has issues with boot.properties file so instead of debugging what happened i just went to the file location as below and entered the values of username and password again.


\user_projects\domains\bifoundation_domain\servers\AdminServer\security\

username=weblogic
password=Admin123
And restarted the service which cleared the issue for me.

Wednesday, February 24, 2016

Weblogic Server : Reset Weblogic user password

In case if we have lost the weblogic user password which is very crucial for any weblogic server Administration ,because we will not be able to perform any kind of activity on the application using Administration Console. When it comes to OBIEE the effect is even more as we can't even login to Enterprise manager and also Analytics to perform Admin activities if Weblogic is the only user we have.

Below steps will help you reset you weblogic password 

Step 1:

Go to <Domain_Home>/bin and execute

 ./setDomainEnv.sh

Step 2:

Change Directory "cd" to the /security/ directory:
Run: cd lt;Domain_Home>/security

Reset the password in a new file DefaultAuthenticatorInit.ldift after taking a backup of the file.
Run: java weblogic.security.utils.AdminAccount weblogic hello .

Don’t forget the period “ .” at the end of the above command, it is required.
This example is setting the weblogic user to have the password "hello"

Thursday, January 21, 2016

OBIEE 12c : Oracle Public URL for OBIEE 12c and OBIEE 11.1.1.9


Now its time for all of us to look at the new version of OBIEE and start upgrading. The thing about upgrades is we cannot commit to it until we see what our existing reports will turn out into. Thats the major thing for the users to approve the upgrade projects as they are afraid of something going wrong and also people fear change. But as everyone with brains say CHANGE IS GOOD, lets say the changing to OBIEE 12c is good. Here is the public url for accessing the OBIEE 12c Analytics


OBIEE 12C-


           Credentails : prodney/Admin123

               http://sampleappv607i1221-wikiv60712212publi-cc8ssyta.srv.ravcloud.com:7780/analytics


            Credentails : Prodney/bitech#1


..

Tuesday, January 19, 2016

Informatica : Generating CSM from command line

When ever we raise a case with Informatica , it is a general practice to send the CSM file which will have the details of the environment , Informatica Version, OS etc which will help the case engineer to analyze the issue faster.

Some cases the CSM generated from the tool might not be correct as we might be using a client etc. So we might have to generate the same from command line where the Informatica server is installed.

Below steps will help you in getting the file from command line. In all the cases the user who runs the command should be the one who starts the service.

For UNIX 

Navigate to the below location from the command line

INFA_HOME/server/csm 

cd $INFA_HOME/server/csm

./csmagent

Informatica CSMAGENT, Version [1.0]
Invoked at Mon Jul  1 00:22:13 2013

Logging to file csmagentHOST.xml
AdminUser name:Administrator
AdminPassword for User Administrator:Administrator
Collecting information for :

     OPERATING SYSTEM...Done
     USER ENVIRONMENT...Done
     PMSERVER...Done
     ORACLE...Done
     DB2...Done
     SYBASE...Done
     INFORMIX...Done
     ODBC...Done

 Send the output file to Informatica Technical Support.

 A file named csmagentHOST.xml will be created, that may be attached to the project csm/Informatica service request

For Windows

The csmagent in INFA_HOME\server\csm\ can be run to get the  of Informatica node installation. You must run csmagent.exe. For more details refer the following:


      %INFA_HOME%\server\csm>csmagent
      Informatica csmagent, Version [1.0]
      Invoked at

      Logging to file INFA_HOME\server\csm\csmagentHOST.xml
      Collecting information for :


                OPERATING SYSTEM ...Done
                USER ENVIRONMENT ...Done
                PowerCenter Server Cannot be found on this machine.
                PCCLIENTS...Done
                ORACLE...Done
                DB2...Done
                SYBASE...Done
                INFORMIX...Done

      Please send the output file to Informatica Technical Support.
      Please hit return to exit...

 
A file named csmagentHOST.xml will be created in the same directory where csmagent.exe is run. It will be attached to the project csm/Informatica service request.