Actionable Insights

You can receive implementable Actionable Insights based on News Reports in a JSON format. These insights can be used to further automate tasks on monitored resources, for example: increase CPU, Memory based on capacity insights, and add queries based on SQL insights information to optimize database query.

Create an Actionable Insight

To create Actionable insights, from the Ops Insights menu navigate to Administration and click on Actionable insights. This will load the Actionable Insights administration page. Actionable Insights Administration Page
  1. Click on the Create actionable insights button, to open the Create actionable insights slide-out.Create an actionable insight
  2. Enter a name, description, compartment, select if you need to include child compartments, frequency (hourly, daily, or weekly). For weekly Actionable Insights select the day of the week that the actionable insights will be generated and sent on.
  3. Select the insights you wish to receive:
    • Daily and weekly Actionable Insights
      Insight Category Description
      New highs Capacity planning Resources that reached a new recorded high utilization level last week.
      Big changes Capacity planning Resources with usage increase and decrease exceeding +/- 25% over the prior week.
      Degrading SQL by database SQL insights Database list with degradation based on different insights
      Degrading SQL details by database SQL insights SQL list that had the biggest degradation by average latency change.
      Degraded plan changes by SQL Id SQL insights Plan changes (by estimated database time) that resulted in degradation in average latency across the database instances over last week.
      Databases with invalidation storms SQL insights Top databases with the invalidation storms by invalidation rate
      Databases with cursor sharing issues SQL insights Top databases with cursor sharing issues by excess hard parse CPU time
      SQL with cursor sharing issues SQL insights Top 50 SQL with cursor sharing issues by excess hard parse CPU time
    • Hourly Actionable Insights
      Insight Category Description
      Sudden 1-Hour Performance Degradation SQL insights Identifies SQL statements that have experienced a significant, sudden drop in performance within the last hour.
      Sudden 1-Hour Degradation with Plan Changes SQL insights Identifies performance degradation caused by a change in the SQL execution plan.
      24-Hour Degradation Trend SQL insights Tracks SQL statements that are showing a gradual or consistent degradation in average latency over 24 hours.
      High I/O Wait Time SQL insights SQL statements that are spending a significant amount of time waiting for I/O operations (disk reads).
      High Non-I/O Wait Time SQL insights SQL statements experiencing high wait times that are not related to disk I/O. These can include waits for locks, latches, or other concurrency and application-related waits.
      Smart Scan I/O Savings SQL insights Measures the efficiency of Smart Scan technology on Exadata.

      Calculation: smartscanIOSavingsPct = (1 - (io_interconnect_bytes / physical_read_bytes)) * 100

      Smart Scan I/O Actual MB Per Execution SQL insights Calculates the actual amount of data (in megabytes) transferred from the storage cells to the database server per execution of the SQL statement.

      A lower value indicates higher efficiency.

      Prioritization Logic SQL insights SQLs are ranked by dbTimeSecs (total database time consumed).

      Higher values indicate greater system-wide impact.

  4. Select the appropriate notifications service topic. Alternatively you can create a new topic, by clicking on Create new topic. This will take you to the Create new topic section of Ops Insights.
  5. Once all information has been entered and verified click on Create Actionable insight. The Actionable insight will now be visible in the Actionable insights administration page.

Additional Actions with Actionable Insights

Maintenance is an important activity for all Actionable Insights, the following is a list of maintenance actions that can be done:
Enable/disable an Actionable Insight
  1. From the Administration page, select the Actionable insight you wish to enable or disable.
  2. Click on the Actions menu button and select either Disable or Re-enable.
  3. Click on the Disable or Re-enable button in the confirmation pop-up.
Move a Resource
  1. From the Administration page, select the Actionable insight you wish to move to a different compartment.
    Note

    Changing an Actionable insight to a different compartment will NOT modify the resources that are in scope of the report. It will only change the report to a new compartment.
  2. Click on the Actions menu button and select the Move resource button.
  3. In the Move resource pop-up, select the new compartment for the Actionable insight resource and click the Move resource button.
Edit an Actionable Insight
  1. To edit an Actionable insight resource, locate the insight to be edited in the administration page, click the vertical ellipses, and the click on Edit Actionable insight.
  2. Perform changes to be made in the slide out menu.
  3. Once all changes have been made click on the Save changes button.
Add Tags
  1. To add tags to an Actionable insight, locate the insight to be edited in the administration page, click the vertical ellipses, and the click on Add tags.
  2. You can Import standard tags by clicking the button, or manually add the standard tags by entering the tag name, key, and value
  3. Once all tags have been added click on the Apply tags button.

Sample Payloads

The following are sample JSON payloads for Actionable insights:
  • New highs for databases sample:
    {
      "newHighsDb": [
        {
          "opsiId": "ocid1.opsidatabaseinsight.oc1..qazxswed7zr6rfvbgt6yhnmjui6asdf4ikmjuy5xdogv5rfvbgtyhnmjuiko",
          "tenantId": "ocid1.tenancy.oc1..tgbnhyujmj4ato2edcvfr7lbh5a3f46wsxcderf7yhnmju7ikmnj6bs2r6gtr",
          "compartmentId": "ocid1.compartment.oc1..dhrftgyh2qwertyuiopas7yhnbgtrfvc2ujmnhytg5qazxswedcvfrtgb",
          "resourceId": "ocid1.autonomousdatabase.oc1.abwsxcderf7d5sncqtlnfak4eynlmedcvfrtgbnsdwwuhjm5iuytrewqasdf",
          "displayName": "db name 01",
          "resourceValue": 101.0,
          "resourceMetric": "STORAGE",
          "projectedUtilization": 102.0
        }
      ]
    }
  • Big changes for databases sample:
    {
      "bigChangesDb": [
        {
          "opsiId": "ocid1.opsidatabaseinsight.oc1..qazxswed7zr6rfvbgt6yhnmjui6asdf4ikmjuy5xdogv5rfvbgtyhnmjuiko",
          "tenantId": "ocid1.tenancy.oc1..tgbnhyujmj4ato2edcvfr7lbh5a3f46wsxcderf7yhnmju7ikmnj6bs2r6gtr",
          "compartmentId": "ocid1.compartment.oc1..dhrftgyh2qwertyuiopas7yhnbgtrfvc2ujmnhytg5qazxswedcvfrtgb",
          "resourceId": "ocid1.autonomousdatabase.oc1.phx.abwsxcderf7d5sncqtlnfak4eynlmedcvfrtgbnsdwwuhjm5iuytrewqasdf",
          "displayName": "db name 01",
          "resourceValue": 101.0,
          "resourceMetric": "STORAGE",
          "projectedUtilization": 102.0
        }
      ]
    }
  • Degrading SQL by database sample:
    {
      "degradingSqlByDb": [
        {
          "opsiId": "ocid1.opsidatabaseinsight.oc1..qazxswed7zr6rfvbgt6yhnmjui6asdf4ikmjuy5xdogv5rfvbgtyhnmjuiko", 
          "tenantId": "ocid1.tenancy.oc1..tgbnhyujmj4ato2edcvfr7lbh5a3f46wsxcderf7yhnmju7ikmnj6bs2r6gtr",
          "compartmentId": "ocid1.compartment.oc1..dhrftgyh2qwertyuiopas7yhnbgtrfvc2ujmnhytg5qazxswedcvfrtgb",
          "resourceId": "ocid1.autonomousdatabase.oc1.phx.abwsxcderf7d5sncqtlnfak4eynlmedcvfrtgbnsdwwuhjm5iuytrewqasdf",
          "displayName": "db name 01",
          "invalidationStormCount": "6",
          "cursorSharingDuplicatesSqlCount": "2",
          "avgDailySqlCount": "104",
          "avgActiveSessions": "8.51",
          "degradingSqlCount": "1",
          "newSqlCount": "23"
        },
         {
          "opsiId": "ocid1.opsidatabaseinsight.oc1..qazxswed7zr6rfvbgt6yhnmjui6asdf4ikmjuy5xdogv5rfvbgtyhnmjuiko2",
          "tenantId": "ocid1.tenancy.oc1..tgbnhyujmj4ato2edcvfr7lbh5a3f46wsxcderf7yhnmju7ikmnj6bs2r6gtr",
          "compartmentId": "ocid1.compartment.oc1..dhrftgyh2qwertyuiopas7yhnbgtrfvc2ujmnhytg5qazxswedcvfrtgb2",
          "resourceId": "ocid1.autonomousdatabase.oc1.phx.abwsxcderf7d5sncqtlnfak4eynlmedcvfrtgbnsdwwuhjm5iuytrewqasdf2",
          "displayName": "db name 02",
          "invalidationStormCount": "7",
          "cursorSharingDuplicatesSqlCount": "2",
          "avgDailySqlCount": "105",
          "avgActiveSessions": "8.52",
          "degradingSqlCount": "2",
          "newSqlCount": "24"
        }
      ]
    }
  • Database with highest invalidation storm sample:
    {
      "databaseWithHighestInvalidationStorms": [
        {
          "opsiId": "ocid1.opsidatabaseinsight.oc1..qazxswed7zr6rfvbgt6yhnmjui6asdf4ikmjuy5xdogv5rfvbgtyhnmjuiko",
          "tenantId": "ocid1.tenancy.oc1..tgbnhyujmj4ato2edcvfr7lbh5a3f46wsxcderf7yhnmju7ikmnj6bs2r6gtr",
          "compartmentId": "ocid1.compartment.oc1..dhrftgyh2qwertyuiopas7yhnbgtrfvc2ujmnhytg5qazxswedcvfrtgb",
          "resourceId": "ocid1.autonomousdatabase.oc1.phx.abwsxcderf7d5sncqtlnfak4eynlmedcvfrtgbnsdwwuhjm5iuytrewqasdf",
          "displayName": "db name 01",
          "avgDailySqlCount": "222.50",
          "invalidationStormCount": "8",
          "invalidationAvgPct": "59.79",
          "invalidationMaxPct": "74.05"
        }
      ]
    }
  • Most impacted database by cursor sharing duplicates sample:
    {
      "mostImpactedDatabaseByCursorSharingDuplicates": [
        {
          "opsiId": "ocid1.opsidatabaseinsight.oc1..qazxswed7zr6rfvbgt6yhnmjui6asdf4ikmjuy5xdogv5rfvbgtyhnmjuiko",
          "tenantId": "ocid1.tenancy.oc1..tgbnhyujmj4ato2edcvfr7lbh5a3f46wsxcderf7yhnmju7ikmnj6bs2r6gtr",
          "compartmentId": "ocid1.compartment.oc1..dhrftgyh2qwertyuiopas7yhnbgtrfvc2ujmnhytg5qazxswedcvfrtgb",
          "resourceId": "ocid1.autonomousdatabase.oc1.phx.abwsxcderf7d5sncqtlnfak4eynlmedcvfrtgbnsdwwuhjm5iuytrewqasdf",
          "displayName": "db name 01",
          "cursorSharingDuplicatesSqlCount": "33",
          "duplicateSqlMaxCount": "9",
          "duplicateSqlCpuParseSecs": "1.634"
        }
      ]
    }
  • Top SQL by cursor sharing issues sample:
    {
      "topSqlByCursorSharingIssues": [
        {
          "opsiId": "ocid1.opsidatabaseinsight.oc1..qazxswed7zr6rfvbgt6yhnmjui6asdf4ikmjuy5xdogv5rfvbgtyhnmjuiko",
          "tenantId": "ocid1.tenancy.oc1..tgbnhyujmj4ato2edcvfr7lbh5a3f46wsxcderf7yhnmju7ikmnj6bs2r6gtr",
          "compartmentId": "ocid1.compartment.oc1..dhrftgyh2qwertyuiopas7yhnbgtrfvc2ujmnhytg5qazxswedcvfrtgb",
          "resourceId": "ocid1.autonomousdatabase.oc1.phx.abwsxcderf7d5sncqtlnfak4eynlmedcvfrtgbnsdwwuhjm5iuytrewqasdf",
          "displayName": "db name 01",
          "sqlId": "0t73f1234u7q9",
          "cpuTimeSecs": "662.731"
        }
      ]
    }