Skip to content
Merged
Show file tree
Hide file tree
Changes from 13 commits
Commits
Show all changes
15 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .chloggen/feat_add-oracledb-session-jvm-os-metrics.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Use this changelog template to create an entry for release notes.

# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
change_type: enhancement

# The name of the component, or a single word describing the area of concern, (e.g. receiver/filelog)
component: receiver/oracledb

# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
note: Add session, in-database JVM, and OS resource metrics

# Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists.
issues: [49065]

# (Optional) One or more lines of additional information to render under the primary note.
# These lines will be padded with 2 spaces and then inserted directly into the document.
# Use pipe (|) for multiline entries.
subtext: |
The new metrics are disabled by default and add no new database queries.

# If your change doesn't affect end users or the exported elements of any package,
# you should instead start your pull request title with [chore] or use the "Skip Changelog" label.
# Optional: The change log or logs in which this entry should be included.
# e.g. '[user]' or '[user, api]'
# Include 'user' if the change is relevant to end users.
# Include 'api' if there is a change to a library API.
# Default: '[user]'
change_logs: [user]
68 changes: 68 additions & 0 deletions receiver/oracledbreceiver/documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -455,6 +455,30 @@ Fraction of host CPU time in use, as computed by Oracle V$SYSMETRIC (% Busy/(Idl
| ---- | ----------- | ---------- | --------- |
| % | Gauge | Double | Development |

### oracledb.jvm.memory.committed

Committed (total) size of Oracle's in-database JVM (OJVM) call heap.

| Unit | Metric Type | Value Type | Stability |
| ---- | ----------- | ---------- | --------- |
| By | Gauge | Int | Development |

### oracledb.jvm.memory.live

Size of live objects in Oracle's in-database JVM (OJVM) call heap.

| Unit | Metric Type | Value Type | Stability |
| ---- | ----------- | ---------- | --------- |
| By | Gauge | Int | Development |

### oracledb.jvm.memory.used

Used size of Oracle's in-database JVM (OJVM) call heap.

| Unit | Metric Type | Value Type | Stability |
| ---- | ----------- | ---------- | --------- |
| By | Gauge | Int | Development |

### oracledb.library_cache.utilization

Fraction of library cache pin requests that found the object already cached, as computed by Oracle V$SYSMETRIC (% Hits/Pins).
Expand Down Expand Up @@ -485,6 +509,14 @@ Number of logon operations
| ---- | ----------- | ---------- | ----------------------- | --------- | --------- |
| {operation} | Sum | Int | Cumulative | true | Development |

### oracledb.os.swaps

Number of OS swap operations.

| Unit | Metric Type | Value Type | Aggregation Temporality | Monotonic | Stability |
| ---- | ----------- | ---------- | ----------------------- | --------- | --------- |
| {swap} | Sum | Int | Cumulative | true | Development |

### oracledb.parallel_operations_downgraded_1_to_25_pct

Number of times parallel execution was requested and the degree of parallelism was reduced down to 1-25% because of insufficient parallel execution servers
Expand Down Expand Up @@ -774,6 +806,42 @@ Total number of rows returned by full-table scans.
| ---- | ----------- | ---------- | ----------------------- | --------- | --------- |
| {row} | Sum | Int | Cumulative | true | Development |

### oracledb.session.stored_procedure.memory

Memory currently allocated for stored procedures in the session.

| Unit | Metric Type | Value Type | Stability |
| ---- | ----------- | ---------- | --------- |
| By | Gauge | Int | Development |

### oracledb.session.wait.time

Cumulative time sessions spent in waits.

| Unit | Metric Type | Value Type | Aggregation Temporality | Monotonic | Stability |
| ---- | ----------- | ---------- | ----------------------- | --------- | --------- |
| s | Sum | Double | Cumulative | true | Development |

#### Attributes

| Name | Description | Values | Requirement Level | Semantic Convention |
| ---- | ----------- | ------ | ----------------- | ------------------- |
| oracledb.session.wait.state | Whether the session wait time/count is for idle or non-idle wait events. | Str: ``non_idle`` | Recommended | - |

### oracledb.session.waits

Cumulative number of waits across sessions.

| Unit | Metric Type | Value Type | Aggregation Temporality | Monotonic | Stability |
| ---- | ----------- | ---------- | ----------------------- | --------- | --------- |
| {wait} | Sum | Int | Cumulative | true | Development |

#### Attributes

| Name | Description | Values | Requirement Level | Semantic Convention |
| ---- | ----------- | ------ | ----------------- | ------------------- |
| oracledb.session.wait.state | Whether the session wait time/count is for idle or non-idle wait events. | Str: ``non_idle`` | Recommended | - |

### oracledb.sga.limit

Maximum size of the System Global Area (SGA).
Expand Down
49 changes: 49 additions & 0 deletions receiver/oracledbreceiver/internal/metadata/config.schema.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -278,6 +278,27 @@ $defs:
- "disk.io.direction"
default:
- "disk.io.direction"
oracledb.jvm.memory.committed:
description: "OracledbJvmMemoryCommittedMetricConfig provides config for the oracledb.jvm.memory.committed metric."
type: object
properties:
enabled:
type: boolean
default: false
oracledb.jvm.memory.live:
description: "OracledbJvmMemoryLiveMetricConfig provides config for the oracledb.jvm.memory.live metric."
type: object
properties:
enabled:
type: boolean
default: false
oracledb.jvm.memory.used:
description: "OracledbJvmMemoryUsedMetricConfig provides config for the oracledb.jvm.memory.used metric."
type: object
properties:
enabled:
type: boolean
default: false
oracledb.logical_reads:
description: "OracledbLogicalReadsMetricConfig provides config for the oracledb.logical_reads metric."
type: object
Expand All @@ -292,6 +313,13 @@ $defs:
enabled:
type: boolean
default: false
oracledb.os.swaps:
description: "OracledbOsSwapsMetricConfig provides config for the oracledb.os.swaps metric."
type: object
properties:
enabled:
type: boolean
default: false
oracledb.parallel_operations_downgraded_1_to_25_pct:
description: "OracledbParallelOperationsDowngraded1To25PctMetricConfig provides config for the oracledb.parallel_operations_downgraded_1_to_25_pct metric."
type: object
Expand Down Expand Up @@ -563,6 +591,27 @@ $defs:
enabled:
type: boolean
default: false
oracledb.session.stored_procedure.memory:
description: "OracledbSessionStoredProcedureMemoryMetricConfig provides config for the oracledb.session.stored_procedure.memory metric."
type: object
properties:
enabled:
type: boolean
default: false
oracledb.session.wait.time:
description: "OracledbSessionWaitTimeMetricConfig provides config for the oracledb.session.wait.time metric."
type: object
properties:
enabled:
type: boolean
default: false
oracledb.session.waits:
description: "OracledbSessionWaitsMetricConfig provides config for the oracledb.session.waits metric."
type: object
properties:
enabled:
type: boolean
default: false
oracledb.sessions.limit:
description: "OracledbSessionsLimitMetricConfig provides config for the oracledb.sessions.limit metric."
type: object
Expand Down
Loading
Loading