Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Metricbeat] Add performance metricset to Oracle module #12547

Merged
merged 16 commits into from
Aug 23, 2019
1 change: 1 addition & 0 deletions CHANGELOG.next.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -313,6 +313,7 @@ https://github.com/elastic/beats/compare/v7.0.0-alpha2...master[Check the HEAD d
- Add AWS elb metricset. {pull}12952[12952] {issue}11701[11701]
- Add AWS ebs metricset. {pull}13167[13167] {issue}11699[11699]
- Add rate metrics for ec2 metricset. {pull}13203[13203]
- Add Performance metricset to Oracle module {pull}12547[12547]

*Packetbeat*

Expand Down
188 changes: 188 additions & 0 deletions metricbeat/docs/fields.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -22715,6 +22715,194 @@ Oracle database module
Oracle module


[float]
=== performance

Performance related metrics on a single database instance


*`oracle.performance.machine`*::
+
--
Operating system machine name

type: keyword

--

*`oracle.performance.buffer_pool`*::
+
--
Name of the buffer pool in the instance

type: keyword

--

*`oracle.performance.username`*::
+
--
Oracle username

type: keyword

--

*`oracle.performance.io_reloads`*::
+
--
Reloads / Pins ratio. A Reload is any PIN of an object that is not the first PIN performed since the object handle was created, and which requires loading the object from disk. Pins are tumber of times a PIN was requested for objects of this namespace

type: double

--

*`oracle.performance.lock_requests`*::
+
--
Average of the ratio between 'gethits' and 'gets' being 'Gethits' the number of times an object's handle was found in memory and 'gets' the number of times a lock was requested for objects of this namespace.

type: long

--

*`oracle.performance.pin_requests`*::
+
--
Average of all pinhits/pins ratios being 'PinHits' the number of times all of the metadata pieces of the library object were found in memory and 'pins' the number of times a PIN was requested for objects of this namespace

type: double

--

[float]
=== cache

Statistics about all buffer pools available for the instance


*`oracle.performance.cache.buffer.hit.pct`*::
+
--
The cache hit ratio of the specified buffer pool.

type: keyword

--

*`oracle.performance.cache.physical_reads`*::
+
--
Physical reads

type: long

--

[float]
=== get

Buffer pool 'get' statistics


*`oracle.performance.cache.get.consistent`*::
+
--
Consistent gets statistic

type: long

--

*`oracle.performance.cache.get.db_blocks`*::
+
--
Database blocks gotten

type: long

--

[float]
=== cursors

Cursors information


*`oracle.performance.cursors.avg`*::
+
--
Average cursors opened by username and machine

type: double

--

*`oracle.performance.cursors.max`*::
+
--
Max cursors opened by username and machine

type: double

--

*`oracle.performance.cursors.total`*::
+
--
Total opened cursors by username and machine

type: double

--

[float]
=== opened

Opened cursors statistic


*`oracle.performance.cursors.opened.current`*::
+
--
Total number of current open cursors

type: long

--

*`oracle.performance.cursors.opened.total`*::
+
--
Total number of cursors opened since the instance started

type: long

--

[float]
=== parse

Parses statistic information that occured in the current session

*`oracle.performance.cursors.session.cache_hits`*::
+
--
Number of hits in the session cursor cache. A hit means that the SQL statement did not have to be reparsed.

type: long

--

*`oracle.performance.cursors.total.cache_hit.pct`*::
+
--
Ratio of session cursor cache hits from total number of cursors

type: double

--

[float]
=== tablespace

Expand Down
4 changes: 4 additions & 0 deletions metricbeat/docs/modules/oracle.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,11 @@ metricbeat.modules:

The following metricsets are available:

* <<metricbeat-metricset-oracle-performance,performance>>

* <<metricbeat-metricset-oracle-tablespace,tablespace>>

include::oracle/performance.asciidoc[]

include::oracle/tablespace.asciidoc[]

23 changes: 23 additions & 0 deletions metricbeat/docs/modules/oracle/performance.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
////
This file is generated! See scripts/mage/docs_collector.go
////

[[metricbeat-metricset-oracle-performance]]
=== Oracle performance metricset

beta[]

include::../../../../x-pack/metricbeat/module/oracle/performance/_meta/docs.asciidoc[]


==== Fields

For a description of each field in the metricset, see the
<<exported-fields-oracle,exported fields>> section.

Here is an example document generated by this metricset:

[source,json]
----
include::../../../../x-pack/metricbeat/module/oracle/performance/_meta/data.json[]
----
3 changes: 2 additions & 1 deletion metricbeat/docs/modules_list.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,8 @@ This file is generated! See scripts/mage/docs_collector.go
|<<metricbeat-module-nginx,Nginx>> |image:./images/icon-yes.png[Prebuilt dashboards are available] |
.1+| .1+| |<<metricbeat-metricset-nginx-stubstatus,stubstatus>>
|<<metricbeat-module-oracle,Oracle>> beta[] |image:./images/icon-yes.png[Prebuilt dashboards are available] |
.1+| .1+| |<<metricbeat-metricset-oracle-tablespace,tablespace>> beta[]
.2+| .2+| |<<metricbeat-metricset-oracle-performance,performance>> beta[]
|<<metricbeat-metricset-oracle-tablespace,tablespace>> beta[]
|<<metricbeat-module-php_fpm,PHP_FPM>> |image:./images/icon-no.png[No prebuilt dashboards] |
.2+| .2+| |<<metricbeat-metricset-php_fpm-pool,pool>>
|<<metricbeat-metricset-php_fpm-process,process>>
Expand Down
1 change: 1 addition & 0 deletions x-pack/metricbeat/include/list.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion x-pack/metricbeat/module/oracle/fields.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

40 changes: 40 additions & 0 deletions x-pack/metricbeat/module/oracle/performance/_meta/data.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
{
"@timestamp": "2017-10-12T08:05:34.853Z",
"event": {
"dataset": "oracle.performance",
"duration": 115000,
"module": "oracle"
},
"metricset": {
"name": "performance"
},
"oracle": {
"performance": {
"cursors": {
"opened": {
"current": 7,
"total": 6225
},
"parse": {
"real": 1336,
"total": 3684
},
"session": {
"cache_hits": 5020
},
"total": {
"cache_hit": {
"pct": 0.8064257028112449
}
}
},
"io_reloads": 0.0013963503027202182,
"lock_requests": 0.5725039956419224,
"pin_requests": 0.7780581056654354
}
},
"service": {
"address": "oracle://sys:Oradoc_db1@localhost/ORCLPDB1.localdomain?connectionClass=\u0026poolIncrement=0\u0026poolMaxSessions=0\u0026poolMinSessions=0\u0026sysdba=1\u0026sysoper=0\u0026sysasm=0\u0026standaloneConnection=0\u0026enableEvents=0\u0026heterogeneousPool=0\u0026prelim=0",
"type": "oracle"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
`performance` Metricset
82 changes: 82 additions & 0 deletions x-pack/metricbeat/module/oracle/performance/_meta/fields.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
- name: performance
type: group
description: Performance related metrics on a single database instance
release: beta
fields:
- name: machine
type: keyword
description: Operating system machine name
- name: buffer_pool
type: keyword
description: Name of the buffer pool in the instance
- name: username
type: keyword
description: Oracle username
- name: io_reloads
type: double
description: Reloads / Pins ratio. A Reload is any PIN of an object that is not the first PIN performed since the object handle was created, and which requires loading the object from disk. Pins are tumber of times a PIN was requested for objects of this namespace
- name: lock_requests
type: long
description: Average of the ratio between 'gethits' and 'gets' being 'Gethits' the number of times an object's handle was found in memory and 'gets' the number of times a lock was requested for objects of this namespace.
- name: pin_requests
type: double
description: Average of all pinhits/pins ratios being 'PinHits' the number of times all of the metadata pieces of the library object were found in memory and 'pins' the number of times a PIN was requested for objects of this namespace
- name: cache
type: group
description: Statistics about all buffer pools available for the instance
fields:
- name: buffer.hit.pct
type: keyword
kaiyan-sheng marked this conversation as resolved.
Show resolved Hide resolved
description: The cache hit ratio of the specified buffer pool.
- name: physical_reads
type: long
description: Physical reads
- name: get
type: group
description: Buffer pool 'get' statistics
fields:
- name: consistent
type: long
description: Consistent gets statistic
- name: db_blocks
type: long
description: Database blocks gotten
- name: cursors
type: group
description: Cursors information
fields:
- name: avg
type: double
description: Average cursors opened by username and machine
- name: max
type: double
description: Max cursors opened by username and machine
- name: total
type: double
description: Total opened cursors by username and machine
- name: opened
type: group
description: Opened cursors statistic
fields:
- name: current
type: long
description: Total number of current open cursors
- name: total
type: long
description: Total number of cursors opened since the instance started
- name: parse
type: group
description: Parses statistic information that occured in the current session
field:
- name: real
type: long
description: "Real number of parses that occurred: session cursor cache hits - parse count (total)"
- name: total
type: long
description: Total number of parse calls (hard and soft). A soft parse is a check on an object already in the shared pool, to verify that the permissions on the underlying object have not changed.
- name: session.cache_hits
type: long
description: Number of hits in the session cursor cache. A hit means that the SQL statement did not have to be reparsed.
- name: total.cache_hit.pct
type: double
description: Ratio of session cursor cache hits from total number of cursors
Loading