Hurriyet

30 Ocak 2015 Cuma

Oracle Fusion Middleware: OBIEE PDF - Excel Extracting Printing Error - PDF veya Excel'e Çıkartma Hatası

We have encountered a similar error which a lot of people has also encountered.

This error can happen when the Report that needs to be generated includes a lot of data, it gets stuck to the cache size.


For that we need to change the following config file to modify the following information.

The config file is in $INSTANCE_HOME\config\OracleBIJavaHostComponent\coreapplication_obijh1|

In that folder we change the config.xml. We add

< PDF>
< InputStreamLimitInKB>0</ InputStreamLimitInKB>
 < /PDF>

In addition to the previous configuration, we add:


< XMLP>
< InputStreamLimitInKB>0
< ReadRequestBeforeProcessing>true</ ReadRequestBeforeProcessing>
</ XMLP>

We then restart the BI Server and we can see the changes.


References:
1- http://obiee-sharat.blogspot.com.tr/2013/04/input-stream-with-read-over-limit.html

27 Ocak 2015 Salı

Oracle E-Business Suite: Collecting Online Patching Log Files - Log Dosyalarının Toplanması

This article is all about collecting logs that will help you in analysis of the Patches, finding errors in the process or assist you in your Service Request.(Ref-1) (This article is all about the Support Articles in the References). The goal is to collect everyone of these articles in case there might be a problem. In the end, we will also form a script that will report us a lot of things about patches.

All the patch sessions include a patch session id, in which all the related log files concerning that patch, is inserted.  The following SQL will help us the current details about the patch sessions:

select ADOP_SESSION_ID,PREPARE_STATUS,APPLY_STATUS,FINALIZE_STATUS,CUTOVER_STATUS,CLEANUP_STATUS,ABORT_STATUS,STATUS,ABANDON_FLAG,NODE_NAME from AD_ADOP_SESSIONS order by ADOP_SESSION_ID desc; 


Note:
       Y denotes that the phase is done
       N denotes that the phase has not been completed
       X denotes that the phase is not applicable
       R denotes that the phase is running (in progress)
       F denotes that the phase has failed
       P (is applicable only to APPLY phase) denotes at least one patch is already applied for the session id
       C denotes that the status of this ADOP session has completed

Note: Numerical statuses are only relevant for the cutover phase.

These status values are updated when a step has completed, and are as follows:

N denotes that the phase has not been completed
0 denotes that cutover/force_shutdown has started
1 denotes the "force_shutdown" step has successfully executed
3 denotes the "db_cutover" step has successfully executed
4 denotes the "fs_cutover" step has successfully executed
6 denotes the "force_startup" step has successfully executed
Y denotes that the phase is done

Where are the Log Files:
Patch log files are given in the $ADOP_LOG_HOME path. If we look deeper, we will see directories for log groups such as ("Prepare","Apply","Finalize","Cutover","Cleanup").
In these files we will have directories

Adop Scanlog:


This utility analyzes adop log directories for errors and warnings, and displays messages to help the user quickly identify any problems that may have occurred during an adop run. 

To scan all log directories of the latest adop session for errors:
    $ adopscanlog
To scan log directories relating to the latest run of adop in the latest session:
    $ adopscanlog -latest=yes
To scan log directories relating to the latest run of the specified phase, in the latest session:
    $ adopscanlog -latest=yes -phase=
To scan all log directories of a given session (represented by a session_id) for errors:
    $ adopscanlog -session_id=
To see a complete list of supported parameters:
    $ adopscanlog -help

Adop Status:

Adop status gives us the information for the current patching session. However "adop -status " command lets us learn about any given patch session.

Source the run filesystem environment file and run command
adop -status
usage
adop -status  generates a summary report
adop -status generates a summary report for that session ID
adop -status -detail generates a detailed report



Check AD and TXK C Patch levels

The following command gives us details about the patch levels of very important modules. The reason we are emphasizing these patch level information is that after the upgrade from previous 12.2 releases, the missing upgrade of these modules will cause problems. Therefore these are checked by the Oracle Support.

SELECT codelevel FROM AD_TRACKABLE_ENTITIES WHERE abbreviation in ('txk','ad');


Check middle tier technology patch levels

perl $FND_TOP/patch/115/bin/TXKScript.pl -script=$FND_TOP/patch/115/bin/txkInventory.pl -txktop=$APPLTMP -contextfile=$CONTEXT_FILE -appspass=apps -outfile=/tmp/Inventory_Report.html


References:
1-12.2 E-Business Suite - Collecting Online Patching and fs_clone Log Files (Doc ID 1542162.1)

23 Ocak 2015 Cuma

Oracle E-Business Suite: Adop Workers Issue While Applying A Patch in 12.2.4 - Worker Kısıtı 12.2.*

When we were trying to apply patch we saw something peculiar in the application process. The application was working well until that moment. Even though we didnt need to state "workers" parameter during the process, we were failing because we didn't enter it.
-------------------------------------------
]$ adop phase=prepare

Enter the APPS password:
Enter the SYSTEM password:
Enter the WLSADMIN password:

 Please wait. Validating credentials...


RUN file system context file: /u01/install/APPS/fs1/inst/apps/$SID_$HOSTNAME/appl/admin/$SID_$HOSTNAME.xml

PATCH file system context file: /u01/install/APPS/fs2/inst/apps/$SID_$HOSTNAME/appl/admin/$SID_$HOSTNAME.xml
Execute SYSTEM command : df /u01/install/APPS/fs2

Worker count determination...

[UNEXPECTED]Invalid Worker Count: 0
[UNEXPECTED]Only a maximum of 1 workers can be invoked
[UNEXPECTED]Error while validating worker count
Log file: /u01/install/APPS/fs_ne/EBSapps/log/adop/adop_20150121_040942.log


[STATEMENT] Please run adopscanlog utility, using the command

"adopscanlog -latest=yes"

to get the list of the log files along with snippet of the error message corresponding to each log file.


adop exiting with status = 2 (Fail)
-------------------------------------------

Solution:
Actually this problem faded once we were able to patch things with the following method below but we didnt understand what has caused this issue. Maybe they will find it later on.

This problem can only be handled by giving an additional property which is "workers"
adop phase=prepare workers=2

References:
1- Adworker Problem - https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=362105903059544&id=1575085.1&displayIndex=1&_afrWindowMode=0&_adf.ctrl-state=dceackd46_774#SYMPTOM

Oracle Fusion Middleware: Coreapplication_OBICCS1 Stop Error - OBICCS Hatası

Yesterday we managed to solve a problem which was very interesting. We werent able to login to OBIEE even though we were seeing the login page. We also havent changed out passwords during the time. Even though everything seemed to be correct, we couldnt log in to the system.

We ran opmnctl status and saw that OBICCS was kept from running. Something was preventing us from accessing to the bi_server






Solution: 
We executed " tasklist | findstr "pid" " to find which process was stopping us. We saw that a process called vmtoolsd.exe was running the same pid that our coreapplication_obiccs1 tried to use.

We killed the process by " taskkill /pid "pid_no" /F   " /F means force. We forcefully killed the process and then stopped and started the opmn. In the end we were able login to the system.
The original solution can be seen at Reference-2




References:

1- Task Kill - https://technet.microsoft.com/en-us/library/bb491009.aspx
2- OBICCS ERROR - http://www.cnblogs.com/jerryxing/archive/2012/09/29/2708214.html
3- Starting Individual Components - http://www.oraclenerd.com/2011/09/obiee-startstop-individual-components.html


Oracle Fusion Middleware: OBIEE Unable To Create a User System User Connection BI Server Error - OBIEE'ye bağlanılamaması


We have faced an interesting problem which we were able to solve by updating a parameter



In the picture above there is an error called " Unable to create a user system connection to BI Server"
This tells us that the system user cannot access to the server which is generally corruption of the  system user.

Solution:

We go to the link below  to change the credentials. We click on obiee_domain>security>credentials and then re-enter the password for the system user that we have been using before.  As a result we were able to solve the problem.





Oracle Fusion Middleware: OBIEE BootIdentity Error - Boot.properties - Boot Identity Hatası

BootIdentity error was something that we have encountered before but we havent document it before.
We can encounter with this problem in either bi_server.log or admin server logs. (e.g. E:\oracle\obia\user_projects\domains\obia_domain\servers\AdminServer\logs or E:\oracle\obia\user_projects\domains\obia_domain\servers\bi_server\logs)

Basically the error could look like the text below


-----------------------------------
[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'Authentication denied: Boot identity not valid; The user name and/or password from the boot identity file (boot.properties) is not valid. The boot identity may have been changed since the boot identity file was created. Please edit and update the boot identity file with the proper values of username and password. The first time the updated boot identity file is used to start the server, these new values are encrypted.
Server subsystem failed. Reason: weblogic.security.SecurityInitializationException: Authentication denied: Boot identity not valid; The user name and/or password from the boot identity file (boot.properties) is not valid. The boot identity may have been changed since the boot identity file was created. Please edit and update the boot identity file with the proper values of username and password. The first time the updated boot identity file is used to start the server, these new values are encrypted.
weblogic.security.SecurityInitializationException: Authentication denied: Boot identity not valid; The user name and/or password from the boot identity file (boot.properties) is not valid. The boot identity may have been changed since the boot identity file was created. Please edit and update the boot identity file with the proper values of username and password. The first time the updated boot identity file is used to start the server, these new values are encrypted.
---------------------------------

This can be commonly seen in the Fusion Middleware environments as boot.properties file gets corrupted.

Solution:
To solve this problem we backup the old boot.properties file for each server which is found in their corresponding security folders.
(e.g E:\oracle\obia\user_projects\domains\obia_domain\servers\bi_server1\security)
After the  backup, we delete boot.properties file and start the weblogic or bi_server1(or any managed weblogic server). When we start that server we will be asked to enter username and password and that is how we fix and update the corrupted username and password. In the end we will be able to start the server.


20 Ocak 2015 Salı

Oracle Fusion Middleware: Specifying Log File Rotation - Adjusting The Logs - Oracle BI Loglama Seviyesini Ayarlamak

Specifying log file rotation is really important. Therefore I really wanted to write an entry for this.
The importance of this is that it can also be applied to other Fusion Middleware Products such as Oracle Discoverer, Oracle EBS  and other products which also use weblogic.

To  go to the logging page, click on the Server node from Environments. Then select the related server, and then go to logging page.  There you could specify the necessary details.

If you want to keep a number of log files then click "Limit the number of Retained Files" and then specify the number of files to be kept.

The other cases are also told in the Reference-1 which is limiting the number of files regarding the time or size.






After we do these changes, we could say that the logging performance would be better, since storage will be kept more wisely.

Log Contents:

Log contents are handled from the same page under the "Advanced Tab". In there you see, which kinds of things should be written or kept from writing. By setting these options, performance of the application can be increased because of the decreased level of logging.





References:
1-https://docs.oracle.com/cd/E13222_01/wls/docs70/ConsoleHelp/servers.html#log_rotation

Linux / Unix : /dev/null Error Redirection and Other /dev files


What is the usage of " command  > /dev/null 2>&1"?

/dev/null  is  a file which takes the input and doesn't print anything in return. /dev/null is kind of a garbage which doesn't have a limit. Therefore we could send anykind of error message in it and not be bothered.

"2" is the STDERR which is standard errors.
"1" is the STDOUT which is standard output.

We have 3 kind of output showed in the screenshot below.

find . -name scripts 2>&1: This command has the purpose of searching a file or folder named scripts. it also tells that all the errors to be showed in the screen


find . -name scripts 2>/dev/null: In here we are sending all the errors to our garbage. With this command we are preventing any kind of errors to be showed in the screen.

find . -name scripts > /dev/null 2>&1: This command all together stops printing the messages on the screen.



What else are there besides /dev/null ?

There are a whole lot of files besides it. Our Reference-1 tells all about it. But we can say that /dev/null is the most used one.




References:
1- /dev files - http://www.linux.org/threads/what-are-those-dev-files.4713/

2-  Standard output - http://www.codecoffee.com/tipsforlinux/articles2/042.html

Oracle Hyperion: Middleware Home - EPM Oracle Home - EPM Oracle Instance

Middleware Home: Oracle WebLogic Server home and EPM Oracle Home can found under it.
Example:E:\Oracle\Middleware

EPM Oracle Home: Product files and its required tools is created within th EPM Oracle Home. The default Middleware_Home is EPMSystem11R1. For example if our middleware home is E:\Oracle\Middleware then EPM Oracle Home is E:\Oracle\Middleware\EPMSystem11R1

EPM Oracle Instance: In EPM Oracle Instance, there can be Oracle HTTP Server, Essbase Server, SOA server, Web Server and etc... The default location would be in this case is E:\Oracle\Middleware\user_projects\domains\EPMSystem . In a distributed environment, we should name all the Middleware Homes as the same.




Note. This directory hierarchy is similiar to Oracle BI architecture. It has also a middleware home and in it, there is weblogic server,instance home and Oracle BI Home.

16 Ocak 2015 Cuma

Oracle Support: How to Use Certifications Tab - Learning Which Application Certified With Which Component - Ürünlerin Birbirleriyle Destekli Olup Olmadığının Öğrenilmesi

Today we will try to show what can be done with the certifications tab found in the Oracle Support, what is its use and how can we use it.

First ol all with Certifications option in the metalink we could analyze what are the components needed for our application. This is a crucial knowledge because usually we install individual products on our environments and we need to be aware of the versions of the other products  if we want to have a succesful installation.


Although there is a video on how we can utilize this tool, we could very well fill the inputs and go on.

We could see the certified versions of our specific product with just one search


Moreover we could compare the certification of any Oracle application with each other.


Below is the result of the comparison.  What we have highligted  is the text that we have to understand to prevent any misunderstandings. According to the selection made in the left side, that sentence changes. Depending on our purpose, we  could make a decision on which versions of the products that we should use.


In the examples below we searched the certified product against the latest Oracle Discoverer 11.1.1.7


References:

1- My Oracle Support Certification Tool for Oracle Fusion Middleware Products 1368736.1

14 Ocak 2015 Çarşamba

Oracle E-Business Suite: Workflow Mailer Setup, Startup And Configuration To Send Mail in EBS 12.2.* - EBS R12.2'de Workflow Mailer Başlatmak ve Mail Atmak İçin Konfigürasyonlarını Yapmak

After a fresh installation of our Oracle EBS 12.2.4 environment, we wanted to do a workflow configuration. To do that, we had to start the Service Component for the Workflow Mailer. It is opened from System Administrator>Workflow>Notification Mailers and then start  "Workflow Notification Mailer.



However when we tried to do that, we were denied with the following error.'Service Component Container is not running'

Since the service is not started, the agent is not running either. Therefore we have to have that Workflow Agent Listener Service started and the start Worklfow Mailer Service.

1-We click on Site Map>Generic Services> Generic Service Component Container


We start both Workflow Agent Listener Service and Workflow Mailer Service.

2- After that we return to the first screen and then start it up again.



Configuration:

For configuration; We need to go the Workflow Notification Mailer Status by clicking System Administrator>Dashboard>Workflow Manager and edit Workflow Notification Mailer and fill out the following inputs in the picture.

Outbound EMail Account(SMTP)
Server Name: The hostname of the mail server.
Username: Account name defined in the mail server.
Password: Can be kept empty or if there is a passowrd for the username, then the password should also be entered.

Inbound EMail Account(IMAP)
Server Name: The hostname of the mail server.
Username: Account name defined in the mail server.
Password: Can be kept empty or if there is a passowrd for the username, then the password should also be entered.
Reply-To Address: The email address that is going to be written in the mail. If the mail is going to be replied then when the reply button is clicked the input given in this part of the configuration is displayed.



If we are only going to send mails and wont be receiving any mails then Outbound Emial Account(SMTP) is the only thing that is required to be filled.

References:
1-  'Service Component Container is not Running' when Trying to Start Workflow Components (Doc ID 733335.1) 
Starting Workflow

2- Workflow Configuration Issues 
http://www.citagus.com/citagus/blog/r12-ebs-workflow-notifications-mailer-config-issues/

3- Workflow Documentation 
https://docs.oracle.com/cd/E18727_01/doc.121/e12894/T202991T207026.htm
https://docs.oracle.com/cd/E18727_01/doc.121/e12903/T319398T403947.htm

4- Community Discussion:
https://community.oracle.com/thread/2314327

13 Ocak 2015 Salı

Oracle E-Business Suite: Error During Adop Phase=Abort - Adop'ta Patch Abort Edilirken Hata Alınması

We have encountered adop failure while we were aborting a patching process. We wanted to cancel the patch  but there was an error such as the error below:

Exception : Error executng BEGIN fnd_gsm_util.upload_context_file(:1,:2,:3,:4,:5); END;: 1; Serial number in context file contains lower value than that of database copy.  

After a brief search on Oracle Support we found that there is a bug which causes the context file session id's to be not synchronized between RUN and Patch file systems.

Therefore according to the support document (Doc ID 1916658.1), we changed the context file session id of the Patch file system to the same value with the context file of the Run file system.

The variable to be changed is "s_contextserial". 

First of all we read the s_contextserial value of the context file of the RUN File System.


 . /u01/install/APPS/EBSapps.env RUN  
 more $CONTEXT_FILE | grep s_contextserial  

Then the value which is read can be put into the context file of PATCH File System:

   
 . /u01/install/APPS/EBSapps.env PATCH  
 vi $CONTEXT_FILE



Full Text of the Error:

 [applmgr@T1VSTEBSAPP01 admin]$ adop phase=abort  
 Enter the APPS password:   
 Enter the SYSTEM password:   
 Enter the WLSADMIN password:   
   
  Please wait. Validating credentials...  
   
   
 RUN file system context file: /u01/install/APPS/fs1/inst/apps/IKYSDEV_T1VSTEBSAPP01/appl/admin/IKYSDEV_T1VSTEBSAPP01.xml  
   
 PATCH file system context file: /u01/install/APPS/fs2/inst/apps/IKYSDEV_T1VSTEBSAPP01/appl/admin/IKYSDEV_T1VSTEBSAPP01.xml  
 Execute SYSTEM command : df /u01/install/APPS/fs2   
   
 Worker count determination...  
   
 Validation successful. All expected nodes are listed in ADOP_VALID_NODES table.  
 [EVENT]   [START 2015/01/09 04:19:14] Performing database sanity checks  
 [EVENT]   [END  2015/01/09 04:19:16] Finished performing database sanity checks  
  There is already a session which is incomplete. Details are:  
     Session Id      :  29  
     Prepare phase status :  COMPLETED  
     Apply phase status  :  ATLEAST ONE PATCH IS ALREADY APPLIED  
     Cutover phase status :  NOT COMPLETED  
     Abort phase status  :  RUNNING  
     Session status    :  FAILED  
 The above session would be aborted/rolled back. Do you want to continue [Y/N]? Y  
  [START 2015/01/09 04:19:37] adzdoptl.pl run  
   ADOP Session ID: 29  
   Phase: abort  
   Log file: /u01/install/APPS/fs_ne/EBSapps/log/adop/29/adop_20150109_041858.log  
   Abort status: R  
   [START 2015/01/09 04:19:38] abort phase   
 ERROR: InDbCtxFile.uploadCtx() : Exception : Error executng BEGIN fnd_gsm_util.upload_context_file(:1,:2,:3,:4,:5); END;: 1; Serial number in context file contains lower value than that of database copy.  
   
 Cause: Context file editing through Oracle Applications Manager did not complete file system syncronization. Please correct the errors that caused during editing and then run this program again. (FILE=/u01/install/APPS/fs2/inst/apps/IKYSDEV_T1VSTEBSAPP01/appl/admin/IKYSDEV_T1VSTEBSAPP01.xml)  
 oracle.apps.ad.autoconfig.oam.InDbCtxFileException: Error executng BEGIN fnd_gsm_util.upload_context_file(:1,:2,:3,:4,:5); END;: 1; Serial number in context file contains lower value than that of database copy.  
   
 Cause: Context file editing through Oracle Applications Manager did not complete file system syncronization. Please correct the errors that caused during editing and then run this program again. (FILE=/u01/install/APPS/fs2/inst/apps/IKYSDEV_T1VSTEBSAPP01/appl/admin/IKYSDEV_T1VSTEBSAPP01.xml)  
     at oracle.apps.ad.autoconfig.oam.InDbCtxFile.uploadCtx(InDbCtxFile.java:281)  
     at oracle.apps.ad.autoconfig.oam.CtxSynchronizer.uploadToDb(CtxSynchronizer.java:332)  
     at oracle.apps.ad.autoconfig.oam.CtxSynchronizer.main(CtxSynchronizer.java:845)  
 Exception : Error executng BEGIN fnd_gsm_util.upload_context_file(:1,:2,:3,:4,:5); END;: 1; Serial number in context file contains lower value than that of database copy.  
   
 Cause: Context file editing through Oracle Applications Manager did not complete file system syncronization. Please correct the errors that caused during editing and then run this program again. (FILE=/u01/install/APPS/fs2/inst/apps/IKYSDEV_T1VSTEBSAPP01/appl/admin/IKYSDEV_T1VSTEBSAPP01.xml)  
 oracle.apps.ad.autoconfig.oam.InDbCtxFileException: Exception : Error executng BEGIN fnd_gsm_util.upload_context_file(:1,:2,:3,:4,:5); END;: 1; Serial number in context file contains lower value than that of database copy.  
   
 Cause: Context file editing through Oracle Applications Manager did not complete file system syncronization. Please correct the errors that caused during editing and then run this program again. (FILE=/u01/install/APPS/fs2/inst/apps/IKYSDEV_T1VSTEBSAPP01/appl/admin/IKYSDEV_T1VSTEBSAPP01.xml)  
     at oracle.apps.ad.autoconfig.oam.InDbCtxFile.uploadCtx(InDbCtxFile.java:297)  
     at oracle.apps.ad.autoconfig.oam.CtxSynchronizer.uploadToDb(CtxSynchronizer.java:332)  
     at oracle.apps.ad.autoconfig.oam.CtxSynchronizer.main(CtxSynchronizer.java:845)  
 *******FATAL ERROR*******  
 PROGRAM : (/u01/install/APPS/fs1/EBSapps/appl/ad/12.0.0/bin/adzdoptl.pl)  
 TIME  : Fri Jan 9 04:19:44 2015  
 FUNCTION: ADOP::CommonBusinessRoutines::uploadCtxFile [ Level 1 ]   
 ERRORMSG: Upload of context file failed  
   
   
 [STATEMENT] Please run adopscanlog utility, using the command  
   
 "adopscanlog -latest=yes"  
   
 to get the list of the log files along with snippet of the error message corresponding to each log file.  
   
   
 adop exiting with status = 2 (Fail)  
 [applmgr@T1VSTEBSAPP01 admin]$ 

References:

1- adop phase=abort causes "Serial number in context file contains lower value than that of database copy." (Doc ID 1916658.1)

Oracle E-Business Suite: Forms Launch Problem of EBS 12.2 in Internet Explorer - Internet Explorer'da EBS Form'larının Açılmama Problemi

I have recently come up with a problem with which I tried to solve it for a long time. In the beginning , after we have installed EBS 12.2.4, we tried to open a form screen with internet explorer 8 . However the link wasnt seem to be working at that moment.

Then we had a look at the EBS Browser Support Certification Matrix and we understood that all the problem was java related.(Recommended Browsers for Oracle E-Business Suite Release 12 (Doc ID 389422.1)

 We had to install Java 7 Update 67 (64 bit) to see the results. But this was still not enough for the people who were using Internet Explorer 32 bit. They also had to install Java 7 Update 67 (32 bit) for their 32 bit Internet Explorers.

In the end, we have managed to run EBS forms from both Internet Explorer 32 bit and  64 bit.

References:

1- Old Java Installations -  
http://www.oracle.com/technetwork/java/archive-139210.html

2-  Browser Support Document:

Oracle E-Business Suite: Where are the EBS Log Files - Adop - Adadmin - Service - File Structure in EBS 12.2.* - EBS R12.2'de Log Dosyaları Nerededir? - EBS 12.2.* Dizin Yapısı

What I have noticed since now is that the we have to have a list to find the proper destination of the log files. Because the log files are all over the place, highly distributed, we may not remember all of the log destinations. With the new EBS 12.2.* versions it seems that services seem to write to logs even more than before.

We are going to list the locations and their corresponding paths for our installation in case we ever need them. The corresponding paths may differ according to your installation because the naming conventions of the companies however variable at the beginning of the list is the same for every EBS 12.2.* installation.


1- $ADOP_LOG_HOME=/u01/install/APPS/fs_ne/EBSapps/log/adop

Log files of the adop sessions. Each adop session creates a folder and writes its logs underneath it.


2- $LOG_HOME=/u01/install/APPS/fs1/inst/apps/IKYSDEV_T1VSTEBSAPP01/logs


A change in Release 12.2 is that HTTP, Oracle WebLogic Server, and concurrent processing log files are not stored under $LOG_HOME as they were in previous releases:


HTTP log files are located under the native instance home.


Oracle WebLogic Server log files are located under the domain home.(7)


Concurrent processing log files are located on the none-editioned file system (fs_ne)

3- $LOG_HOME/appl/admin/log = /u01/install/APPS/fs1/inst/apps/IKYSDEV_T1VSTEBSAPP01/logs/appl/admin/log

Under the log directory specified above  we could find the logs which specific services write during their startup and shutdown processes.

These services are:

1-Adadminsrvctl
2-Adapcctl
3-Adforms-c4wsctl
4-Adnodemgrctl
5-Adoafmctl
6-Adstpall
7-Adstrtal
8-Adalnctl
9-Adcmctl
10-Adformsctl
11-Adoacorectl
12-Adopmnctl
13-Jtfmctl


4-  $FORMS_TRACE_DIR=/u01/install/APPS/fs1/inst/apps/IKYSDEV_T1VSTEBSAPP01/logs/ora/10.1.2/forms

5- $APPLRGF=/u01/install/APPS/fs1/inst/apps/IKYSDEV_T1VSTEBSAPP01/logs/appl/rgf


6- $APPLCSF=/u01/install/APPS/fs_ne/inst/IKYSDEV_T1VSTEBSAPP01/logs/appl/conc

7- $RUN_BASE/FMW_HOME/logs: /u01/install/APPS/fs1/FMW_Home/logs/

This is the location where Weblogic logs are kept.

8- $INST_TOP/logs/appl/admin/log: /u01/install/APPS/fs1/inst/apps/IKYSDEV_T1VSTEBSAPP01/logs/ora/10.1.2

Where Oracle Related log files are kept.

Log File Paths:

The picture below is take from the Oracle Doc which is given in the references.(Ref-2)
It shows us the location of log fi



References:

1- Finding the Log File Destinations:
http://docs.oracle.com/cd/E26401_01/doc.122/e22949/T120505T120509.htm
Log Files
Patching Log Files

$LOG_HOME

2-Oracle Applications E-Business Suite 12.2 Fusion Middleware Log Files: Locate,View, and Control (Doc ID 1366187.1)

8 Ocak 2015 Perşembe

Linux / Unix : Port Checking - Port Control - Closing Ports - Açık Portları Görme

To find out which process is listening which port, we can use netstat.

There are various commands but netstat is enough:

Netstat - a command-line tool that displays network connections, routing tables, and a number of network interface statistics.

Fuser - a command line tool to identify processes using files or sockets.

lsof - a command line tool to list open files under Linux / UNIX to report a list of all open files and the processes that opened them.


[applmgr@T1VSTEBSAPP01 bea]$ netstat -tulpn   
 (Not all processes could be identified, non-owned process info  
  will not be shown, you would have to be root to see it all.)  
 Active Internet connections (only servers)  
 Proto Recv-Q Send-Q Local Address        Foreign Address       State    PID/Program name    
 tcp    0   0 127.0.0.1:25        0.0.0.0:*          LISTEN   -            
 tcp    0   0 0.0.0.0:1626        0.0.0.0:*          LISTEN   1545/tnslsnr      
 tcp    0   0 0.0.0.0:5902        0.0.0.0:*          LISTEN   -            
 tcp    0   0 0.0.0.0:5903        0.0.0.0:*          LISTEN   -            
 tcp    0   0 0.0.0.0:5904        0.0.0.0:*          LISTEN   1202/Xvnc        
 tcp    0   0 0.0.0.0:6002        0.0.0.0:*          LISTEN   -            
 tcp    0   0 0.0.0.0:6003        0.0.0.0:*          LISTEN   -            
 tcp    0   0 127.0.0.1:6100       0.0.0.0:*          LISTEN   1121/opmn        
 tcp    0   0 0.0.0.0:6004        0.0.0.0:*          LISTEN   1202/Xvnc        
 tcp    0   0 0.0.0.0:22         0.0.0.0:*          LISTEN   -            
 tcp    0   0 :::6200           :::*            LISTEN   1121/opmn        
 tcp    0   0 ::ffff:10.222.8.56:7801   :::*            LISTEN   3132/java        
 tcp    0   0 ::ffff:10.222.8.56:12345  :::*            LISTEN   2994/java        
 tcp    0   0 ::ffff:10.222.8.56:7001   :::*            LISTEN   566/java        
 tcp    0   0 :::4443           :::*            LISTEN   1195/httpd.worker    
 tcp    0   0 :::8000           :::*            LISTEN   1195/httpd.worker    
 tcp    0   0 ::ffff:10.222.8.56:7201   :::*            LISTEN   3174/java        
 tcp    0   0 ::ffff:10.222.8.56:7401   :::*            LISTEN   3152/java        
 tcp    0   0 :::9999           :::*            LISTEN   1195/httpd.worker    
 tcp    0   0 ::ffff:10.222.8.56:7601   :::*            LISTEN   3147/java        
 tcp    0   0 :::6002           :::*            LISTEN   -            
 tcp    0   0 :::6003           :::*            LISTEN   -            
 tcp    0   0 ::1:6100          :::*            LISTEN   1121/opmn        
 tcp    0   0 ::ffff:10.222.8.56:5556   :::*            LISTEN   550/java        
 tcp    0   0 :::6004           :::*            LISTEN   1202/Xvnc        
 tcp    0   0 :::22            :::*            LISTEN   -           

To directly find out the information, the command below will be helpful:

$ netstat -tulpn | grep :80

One other helpful information is that by finding out he process number from the command above, we could verify which program is using this connection. For example port 1626 is used by the PID:1545 and program "tnslsnr". The command above can let us check it even further, although it is written in the output of the netstat command.

 ls -l /proc/1138/exe

How to kill the process listening the open port?

Actually it is quite easy after you find the process id which is listening the port. For example according to the following output, we take the process id next to the service.

 tcp    0   0 ::1:6100          :::*            LISTEN   1121/opmn   

We then kill the process with kill command:

kill -9 1121

After we issue the netstat -a | grep 6100 command again, we wouldn't be  seeing any service that is listening to that port.

References:

1- Finding out which process is listening upon a port: http://www.cyberciti.biz/faq/what-process-has-open-linux-port/

5 Ocak 2015 Pazartesi

Oracle Database: SqlPlus Backspace Fix - Deleting Characters in SqlPlus- Sqlplus'taki Silme Problemi

Deleting problem is a pain for most of the SQL users. The ability to delete becomes a bliss in sqlplus
In default settings, when you mistype a key in sqlplus and you try to delete them, you encounter "^H" problem. That is something like below

 SQL*Plus: Release 11.2.0.4.0 Production on Mon Jan 5 11:47:04 2015  
   
 Copyright (c) 1982, 2013, Oracle. All rights reserved.  
   
   
 Connected to:  
 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production  
 With the Partitioning, OLAP, Data Mining and Real Application Testing options  
   
 SQL> select * instasada^H^H^H^H  

It means that when you mistype instance and try to correct it by deleting the wrong characters, you end up with "^H" strings all over.

 The reason why was explained by Erman Arslan in his following post.

Erman Arslan's Oracle Blog: Linux -- SQLPLUS backspace (^H) problem & fix - vt100,vt220

Before, we were solving it with ctrl+backspace key combination.  However if you dont want to deal with you just apply the solution below.

I just wanted to share it because I know that many people experience this problem.

The solution is to add this to " stty erase ^H " the .bash_profile which is found in the user directory (e.g. /home/applmgr/.)


 # .bash_profile  
   
 # Get the aliases and functions  
 if [ -f ~/.bashrc ]; then  
     . ~/.bashrc  
 fi  
   
 # User specific environment and startup programs  
   
 PATH=$PATH:$HOME/bin  
   
 export PATH  
   
 export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH  
   
   
 stty erase ^H 


Like the example above , we added the stty string to bash profile and then we were able to delete the wrong characters with ease.

References:
1- Erman Arslan's Blog :
http://ermanarslan.blogspot.com.tr/2015/01/linux-sqlplus-backspace-h-problem-fix.html?utm_source=feedburner&utm_medium=email&utm_campaign=Feed:+ErmanArslansOracleBlog+(Erman+Arslan%27s+Oracle+Blog)

Oracle E-Business Suite: Restarting HTTP Server - Apache in 12.2.* - Apache Bounce Script - Bounce Apache Server - 12.2.4'de Apache Başlatılması

Unlike our last article on how to start Apache server in R12.1.3 "http://berkeoz1.blogspot.com.tr/2013/07/oracle-e-business-suite-apache.html" we need to be changing the scripts that we have used before since we now have different scripts to use.

Therefore to restart the Apache server; we need to:

1- Stop HTTP server with adapcctl command.
2- Stop the oacore server
3- Start oacore server back again.
4- In the end restart HTTP server with adapcctl command.

General procedure is given below:


[applmgr@T1VSTEBSAPP01 scripts]$ cd $ADMIN_SCRIPTS_HOME  
 [applmgr@T1VSTEBSAPP01 scripts]$ adapcctl.sh stop  
 [applmgr@T1VSTEBSAPP01 scripts]$ admanagedsrvctl.sh stop oacore_server1   
 [applmgr@T1VSTEBSAPP01 scripts]$ admanagedsrvctl.sh start oacore_server1   
 [applmgr@T1VSTEBSAPP01 scripts]$ adapcctl.sh start  

Oracle E-Business Suite: Deployments in EBS 12.2.* - Deploying Forms,Workflows,

With the newcoming changes to filesystem, to deploy a newly customized form we need to be sourcing the patch environment and then deploy forms.


Steps would be like:
1-Source the patch environment

 [applmgr@T1VSTEBSAPP01 ~]$ cd /u01/install/APPS/  
 [applmgr@T1VSTEBSAPP01 APPS]$ ls  
 EBSapps.env fs1 fs2 fs_ne scripts  
 [applmgr@T1VSTEBSAPP01 APPS]$ . EBSapps.env PATCH  

2- Stage the fmb under $AU_TOP/forms/US. Verify the $FORMS_PATH environment variable. FORMS_PATH must contain $AU_TOP/resource and $AU_TOP/forms/ (if for US this would be $AU_TOP/forms/US). If these directories are not set under $FORMS_PATH, set FORMS_PATH accordingly.

How do we check $FORMS_PATH variable?
[applmgr@T1VSTEBSAPP01 APPS]$ env | grep FORMS_PATH  
 FORMS_PATH=/u01/install/APPS/fs1/EBSapps/appl/au/12.0.0/resource:/u01/install/APPS/fs1/EBSapps/appl/au/12.0.0/resource/stub

3- Then we apply the customization by first going to the $AU_TOP then use the following command.

[applmgr@T1VSTEBSAPP01 US]$ pwd  
 /u01/install/APPS/fs1/EBSapps/appl/au/12.0.0/forms/US  
 [applmgr@T1VSTEBSAPP01 US]$ frmcmp_batch JGZZTAJA.fmb apps/ output_file=/u01/install/APPS/fs1/EBSapps/appl/jg/12.0.0/forms/US/JGZZTAJA.fmx compile_all=special

References:
1- Developing and Deploying Customizations in Oracle E-Business Suite Release 12.2 - Form Deployment (Doc ID 1577661.1)
2-How to Generate a Specific Form Through AD utility adadmin (Doc ID 178722.1)

2 Ocak 2015 Cuma

Oracle E-Business Suite: How to apply patches in EBS R12.2 using Adop -- Abort or Rollback a Patch 12.2.4 Versiyonunda Adop Nasıl Kullanılır? Nasıl Patch Geçilir? - Nasıl Patch İptal Edilir?

In EBS Release 12.2 a new patching tool was introduced.  All the patching is now done with adop. The context of this patching system has also changed. It means that the patches are now applied to the online patching cycle. The patching cycle has a number of phases. These phases are:

  1. Prepare - creates the patch edition.
  2. Apply - apply ARU or manual patches to the patch edition.
  3. Finalize - perform any actions required to prepare for cutover.
  4. Cutover - Promote Patch Edition to be the new Run Edition.
  5. Cleanup - remove obsolete code and data from old editions.
We will now introduce the syntax and the usage of each phase:

Prepare:
The online patching cycle starts with prepare command.  That's why we connect to application node and  source the ebs RUN environment. Then we execute the following command which is
" adop phase=prepare"

 [applmgr@T1VSTEBSAPP01 APPS]$ cd /u01/install/APPS  
 [applmgr@T1VSTEBSAPP01 APPS]$ . EBSapps.env RUN  
 [applmgr@T1VSTEBSAPP01 APPS]$ adop phase=prepare  

When this command is executed a new patch edition is created.

File system synchronization can be done by applying the delta from the recent patching cycle, or by forming the entire patch edition file system as a copy of the run edition (called "fs_clone").

If prepare fails then we should abort the prepare phase.

 [applmgr@T1VSTEBSAPP01 APPS]$ adop phase=abort

Apply:

When the preparation phase is over, changes to the patch edition is isolated from the run edition. Therefore run edition can be used as usual.

We first change our directory to the patch's path.. Then we read the readme.txt of the patch. Unless there is not anything required to do before the patch, we execute apply patch command. 

 [applmgr@T1VSTEBSAPP01 Localization Patch]$ cd 20279504_TR/  
 [applmgr@T1VSTEBSAPP01 20279504_TR]$ adop phase=apply  
 [applmgr@T1VSTEBSAPP01 20279504_TR]$  


Finalize:


The finalize phase is the part where system is prepared to ready the system for a fast cutover.

[applmgr@T1VSTEBSAPP01 20279504_TR]$ adop phase=finalize  

Cutover: 

The cutover is made when the system is ready for downtime. It should be applied after the system can endure a downtime. Moreover the patch edition becomes the new run edition.

The Run/patch designation of the dual file systems are swapped during cutover. We re-source the run edition after the cutover phase.

[applmgr@T1VSTEBSAPP01 20279504_TR]$ adop phase=finalize 

Cleanup:

With cleanup unnecessary code created during the patch phase will be removed.


[applmgr@T1VSTEBSAPP01 20279504_TR]$ adop phase=cutover  
[applmgr@T1VSTEBSAPP01 20279504_TR]$ adop phase=c
There is another option which specifies cleanup mode with which full statistics is taken.

Note: Due to a known issue in Release 12.2.2, full cleanup is is currently available only in Release 12.2.3 and higher

Other Options:

FS Clone
$ adop phase=fs_clone
Abort
$ adop phase=abort
$ adop phase=cleanup 





General Structure:

$ . /EBSapps.env run
$ adop phase=prepare
$ adop phase=apply patches=123456
$ adop phase=finalize
$ adop phase=cutover
$ . /EBSapps.env run
$ adop phase=cleanup


How to abort a Patch Process - Rollback: 

We would want to abort a patch if we are failing during a patching process.If we cant solve the problem, the need to abort the cycle arises. To abort a patch, first we need to be at a status before cleanup phase.

The abort command is only available until successful completion of the cutover phase. After cutover completes, the system is running on the new edition and abort is no longer available for that
patching cycle. Warning: Aborting a patching cycle will drop the patch edition, but you must then run the cleanup and fs_clone phases before starting a new patching cycle. The cleanup must be a full cleanup ($ adop phase=cleanup cleanup_mode=full).

$ adop phase=prepare
$ adop phase=apply patches=123456
[Patch application encounters problems and you want to abort]
$ adop phase=abort
$ adop phase=cleanup cleanup_mode=full
$ adop phase=fs_clone

Patch - Patching Parameters:

In there reference-4, we have added a link which shows us the available patching parameters that can be used with adop.

 adop phase=prepare workers=1  

The command above is an example for that. We could use workers parameter with adop.


Where are the Adop Logs?

Adop logs are placed into the $ADOP_LOG_HOME which is in the non editione application file system." For example: /u01/install/APPS/fs_ne/EBSapps/log/adop"

In that folder, in the session id that we are in, we would see all the phases that we have done like "Prepare,Finalize,Apply,Cutover,Cleanup,Abort". Other than that within everyone of these folders, everything regarding that phase is inserted like subroutines depending on their execution time.

That is how we could find the related log file.

Inside the $ADOP_LOG_HOME:



Inside the directory of the patch session id:




References:
1-Developing and Deploying Customizations in Oracle E-Business Suite Release 12.2 (Doc ID 1577661.1)
2-Patching Utilities - Adop: http://docs.oracle.com/cd/E26401_01/doc.122/e22954/T202991T531062.htm
3-Validations done by adop-

4-Patching Parameters - http://docs.oracle.com/cd/E26401_01/doc.122/e22954/T202991T531062.htm