Friday, May 18, 2018

OEM 13C Useful EMCTL Agent Commands


Here’s a list of some useful emctl commands to manage your OEM 13c agent.

Get the status of the agent:

$ emctl status agent
Oracle Enterprise Manager Cloud Control 13c Release 2
Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.
---------------------------------------------------------------
Agent Version          : 13.2.0.0.0
OMS Version            : 13.2.0.0.0
Protocol Version       : 12.1.0.1.0
...
Last Reload            : (none)
Last successful upload                       : 2018-05-15 09:04:32
Last attempted upload                        : 2018-05-18 13:12:29
Total Megabytes of XML files uploaded so far : 13.6
Number of XML files pending upload           : 1,956
Size of XML files pending upload(MB)         : 3.64
Available disk space on upload filesystem    : 81.90%
Collection Status                            : Collections enabled
Heartbeat Status                             : OMS is unreachable [not running]
Last attempted heartbeat to OMS              : 2018-05-18 13:12:02
Last successful heartbeat to OMS             : 2018-05-15 09:10:00
Next scheduled heartbeat to OMS              : 2018-05-18 13:12:44

---------------------------------------------------------------
Agent is Running and Ready


Get the list of targets currently monitored by the agent:

$ emctl config agent listtargets
Oracle Enterprise Manager Cloud Control 13c Release 2
Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.
[localhost.localdomain.com, host]
[localhost.localdomain.com:3872, oracle_emd]
[Management Services and Repository, oracle_emrep]
...
[/EMGC_GCDomain/GCDomain/EMGC_OMS1, weblogic_j2eeserver]
[NodeManager_localhost.localdomain.com_1, weblogic_nodemanager]
[oms13c1_1_localhost.localdomain.com_4754, oracle_home]


Get the status of a particular target:

$ emctl status agent target /EMGC_GCDomain/GCDomain/EMGC_OMS1,weblogic_j2eeserver
Oracle Enterprise Manager Cloud Control 13c Release 2
Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.
---------------------------------------------------------------
Target Name : /EMGC_GCDomain/GCDomain/EMGC_OMS1
Target Type : weblogic_j2eeserver
Current severity state
----------------------
Metric        Column name             Key             State           Timestamp
--------------------------------------------------------------------------------
Response      Status                  n/a             CRITICAL        Fri May 18 13:13:25 EDT 2018
alertLogAdrIncident adr_problemKey          Fri Jun 23 16:07:21 2017/254 CRITICAL        Fri Jun 23 16:07:58 EDT 2017
alertLogAdrIncident adr_problemKey          Fri Jun 23 16:08:10 2017/263 CRITICAL        Fri Jun 23 16:12:58 EDT 2017
alertLogAdrIncident adr_problemKey          Mon Jul 10 06:06:34 2017/290 CRITICAL        Mon Jul 10 06:08:52 EDT 2017
alertLogAdrIncident adr_problemKey          Mon Jun 26 13:04:51 2017/272 CRITICAL        Mon Jun 26 13:08:48 EDT 2017
alertLogAdrIncident adr_problemKey          Tue Jun 27 17:50:54 2017/281 CRITICAL        Tue Jun 27 17:53:48 EDT 2017
jvm           heapUsedPercentage.value n/a             CLEAR           Tue May 15 09:07:27 EDT 2018
jvm_threads   deadlockedThreadCount.value n/a             CLEAR           Tue May 15 09:06:15 EDT 2018

---------------------------------------------------------------
Agent is Running and Ready


Clear the current status of a target’s metrics:

$ emctl clearstate agent /EMGC_GCDomain/GCDomain/EMGC_OMS1,weblogic_j2eeserver
Oracle Enterprise Manager Cloud Control 13c Release 2
Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.
Clear target severity state

Now they show as undefined until the next collection happens:

$ emctl status agent target /EMGC_GCDomain/GCDomain/EMGC_OMS1,weblogic_j2eeserver
Oracle Enterprise Manager Cloud Control 13c Release 2
Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.
---------------------------------------------------------------
Target Name : /EMGC_GCDomain/GCDomain/EMGC_OMS1
Target Type : weblogic_j2eeserver
Current severity state
----------------------
Metric        Column name             Key             State           Timestamp
--------------------------------------------------------------------------------
Response      Status                  n/a             UNDEFINED       Fri May 18 13:14:25 EDT 2018
alertLogAdrIncident adr_problemKey          Fri Jun 23 16:07:21 2017/254 UNDEFINED       Fri Jun 23 16:07:58 EDT 2017
alertLogAdrIncident adr_problemKey          Fri Jun 23 16:08:10 2017/263 UNDEFINED       Fri Jun 23 16:12:58 EDT 2017
alertLogAdrIncident adr_problemKey          Mon Jul 10 06:06:34 2017/290 UNDEFINED       Mon Jul 10 06:08:52 EDT 2017
alertLogAdrIncident adr_problemKey          Mon Jun 26 13:04:51 2017/272 UNDEFINED       Mon Jun 26 13:08:48 EDT 2017
alertLogAdrIncident adr_problemKey          Tue Jun 27 17:50:54 2017/281 UNDEFINED       Tue Jun 27 17:53:48 EDT 2017
jvm           heapUsedPercentage.value n/a             UNDEFINED       Tue May 15 09:07:27 EDT 2018
jvm_threads   deadlockedThreadCount.value n/a             UNDEFINED       Tue May 15 09:06:15 EDT 2018

---------------------------------------------------------------
Agent is Running and Ready



Force the agent to collect dynamic properties:

$ emctl reload agent dynamicproperties /EMGC_GCDomain/GCDomain/EMGC_OMS1:weblogic_j2eeserver
Oracle Enterprise Manager Cloud Control 13c Release 2
Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.
---------------------------------------------------------------
EMD recompute dynprops completed successfully


Thanks,
Alfredo

Wednesday, May 16, 2018

Oracle EBS 12.2 EBS Technology Codelevel Checker ETCC


Looks like this is my first post about Oracle EBS. Yeah, looks like now I’m more on the dark side of the force.

This is the time for ETCC. ETCC is a set of 2 scripts. One is going to check the recommended patches for the DB stack and the other one is going to check for the recommended patches for the Middleware stack.

It does not connect to the internet to verify the latest patches. So you must verify and download the latest version of this (patch 17537119).


The scripts are:
- checkDBpatch.sh
- checkMTpatch.sh


You just execute these scripts and provide the information that is being asked. They are going to spool a report like list with the recommended patches for your stack.

Keep in mind that they make use of utilities like OPatch, so is recommended you have the latest version in your DB Oracle Home.

Identifying database release.
  Database release set to 12.1.0.2.

  Connecting to database.
  Database connection successful.

  Checking for DB-ETCC results table.
  Table to store DB-ETCC results already exists in the database.

  Checking if InMemory option is enabled.
  Obtained list of bugfixes to be applied and the list to be rolled back.
  Now checking Database ORACLE_HOME.

  The opatch utility is at the required version.

  Found patch records in the inventory.

    Missing Bugfix: 11111111  ->  Patch 12345678
    Missing Bugfix: 22222222  ->  Patch 45678912
    Missing Bugfix: 33333333  ->  Patch 98765432
    Missing Bugfix: 44444444  ->  Patch 98765432

  Generating Patch Recommendation Summary.

  ================================================================================
  PATCH RECOMMENDATION SUMMARY
  ================================================================================
  The default patch recommendations to install these missing bugfixes are:
  --------------------------------------------------------------------------------
  Oracle Database Release 12.1.0.2  (No PSU applied)
  --------------------------------------------------------------------------------
    Patch 12345678
      - Filename: p12345678_121020_Linux-x86-64.zip

    Patch 45678912
      - Filename: p45678912_121020_Generic.zip

    Patch 98765432
      - Filename: p98765432_121020_Linux-x86-64.zip

  Apply the required patches and rerun this script.


As a side note, I noticed that with TXK Delta 10 if you try to start an ADOP cycle it is going to check if ETCC was recently executed and all the recommended patches are in place.
Looks like is some way to enforce that all the tech stack patches are current.


Thanks,
Alfredo

Tuesday, May 15, 2018

Enable NFS mount point monitoring in OEM 13c


OEM doesn’t monitor NFS mount points by default. In case you need to monitor NFS mount points you have 2 options.
Either create a metric extension using an OS script or to enable a property called EM_MONITOR_ALL_DISKS in the agent’s configuration file.

There are two ways to accomplish the second option. You can go and modify the emd.properties file or you can use the OEM console to modify it.

The OEM console can submit a job called “Agents Configuration Operation”. This job is going to prompt you for a name and the agents you want to modify the property. The Parameters tab has all the available parameters to modify. Just set the EM_MONITOR_ALL_DISKS to true and submit the job.






If you want to modify this manually. Just follow the instruction in the MOS note 1513537.1.

Thanks,
Alfredo

Monday, May 14, 2018

Exclusion not working in OEM 13c Rule Sets


While setting up Rules and RuleSets you may want to exclude either target types or alert categories from your notifications. Well, there’s an issue if you try to do this in OEM 13c.

If you configure a Rule that has the exclusion and contains more than one category, then you will keep receiving alerts from it. So the exclusion won’t work.

In order to fix it you need to apply a patch or the January 2018 BP for OEM.

MOS note (Doc ID 2347238.1) shall be used as a reference.

Thanks,
Alfredo

Sunday, May 13, 2018

Install OMC Data Collector To Harvest Oracle Enterprise Manager Target’s Metric Data


In order to make use of the data you already have in your Oracle Enterprise Manager (OEM) in Oracle’s Management Cloud (OMC) you need to install and configure the OMC’s Data Collector agent.

Here’s how you do it.

Login to OMC and navigate to Administration -> Agents -> Download

In the Agent Type box, select Data Collector.



Select the desired Operating System version. In my case is Linux 64 bit.






Once the agent is downloaded, take a note in the same OMC’s web page of the TENANT_ID and the UPLOAD_ROOT values.

Next login to the server hosting your OEM Repository database.
Create a directory in a place where you have enough space (3GB).



$ cd /u01/agent
$ mkdir omc
$ cd omc

Transfer the downloaded file to this new directory and unzip it.

$ ls
datacollector_linux.x64_1.23.0.zip
$ unzip datacollector_linux.x64_1.23.0.zip
Archive:  datacollector_linux.x64_1.23.0.zip
  inflating: unzip
  inflating: AgentDeployment.sh
  inflating: agentimage.properties
  inflating: agent.rsp
  inflating: agent_software_build.xml
 extracting: agentcoreimage.zip
  inflating: AgentInstall.sh


Modify the response file adding the required values. This step depends in whether you’re using a Gateway or a Proxy to connect to the OMC.

$ vi agent.rsp


All required values can be found here.



Now execute the installation.

$ ./AgentInstall.sh
Unzipping agent software, this may take some time...
Installing Data Collector...
Data Collector parameter validation started...
Skipping Data Collector pre-requisite checks as IGNORE_VALIDATIONS is set to true...
Data Collector base directory creation started...
Security artifacts download started...
Data Collector setup started...
Registering Data Collector...
Starting Data Collector...
Data Collector started.
Data Collector installation completed.
The following configuration scripts need to be executed as the root user:
/bin/sh /u01/agent/omc/datacollector/core/1.23.0/root.sh

You now need to execute the configuration script as root.
Once this is executed, go and verify the Data Collector agent is up and running.

$ cd /u01/agent/omc/datacollector/agent_inst/bin
./omcli status agent
Oracle Management Cloud Data Collector
Copyright (c) 1996, 2017 Oracle Corporation.  All rights reserved.
---------------------------------------------------------------
Version                : 1.23.0
Started at             : 2017-04-07 11:45:04
Started by user        : oracle
Operating System       : Linux version 4.1.17-12.3.5.el6uek.x86_64 (amd64)
Data Collector enabled : true
Sender Status          : FUNCTIONAL
Gateway Upload Status  : FUNCTIONAL
Last successful upload : 2017-04-07 11:46:28
Last attempted upload  : 2017-04-07 11:46:27
Pending Files (MB)     : 2.26
Pending Files          : 80
Backoff Expiration     : (none)

---------------------------------------------------------------
Agent is Running and Ready


Verify the OMC’s Data Collector in the OMC console.

Navigate to Agents -> Administration -> Data Collectors

In this page you should see your newly installed Data Collector Agent.




Thanks,
Alfredo