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

Add Vsphere module with metrics. WIP #4028

Merged
merged 33 commits into from
May 4, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
876da87
Add Vsphere module with Datastore_usage metric.
Apr 17, 2017
af3c620
Use of govendor and new metric host_usage.
Apr 18, 2017
d1f9ed4
Merge remote-tracking branch 'upstream/master'
Apr 18, 2017
09ae905
NOTICE changed.
Apr 18, 2017
19ca35d
Merge branch 'master' into master
Apr 19, 2017
4e87f9d
Metric virtualmachine_usage.
Apr 19, 2017
874a6f2
Merge master
Apr 19, 2017
1497091
Merge branch 'master' of https://github.com/amandahla/beats
Apr 19, 2017
a5c285d
Meitrcbeat updated.
Apr 19, 2017
880c877
Fields removed.
Apr 20, 2017
7319a55
Merge remote-tracking branch 'upstream/master'
Apr 20, 2017
757fc0f
Definition of MetricSet updated.
Apr 20, 2017
dd0dcaf
Names changed. Better description. Logs showing that its experimental…
Apr 24, 2017
fe720c8
Merged with master.
Apr 24, 2017
296a30d
Add how to test with Govcsim and entry in CHANGELOG.
Apr 24, 2017
801feeb
Merge remote-tracking branch 'upstream/master'
Apr 24, 2017
5367ee2
Notice updated.
Apr 24, 2017
e5d570e
Test for metric host.
Apr 26, 2017
e320a7b
Merge remote-tracking branch 'upstream/master'
Apr 26, 2017
85f1f1e
NOTICE updated.
Apr 26, 2017
fbaca06
Unity tests for datastore and host. Unity tests from Ceph corrected.
Apr 26, 2017
a0039ec
Merge remote-tracking branch 'upstream/master'
Apr 27, 2017
6d14c33
Datastore_test
Apr 27, 2017
51be9aa
Updated tests.
Apr 27, 2017
4c6f125
Merge remote-tracking branch 'upstream/master'
Apr 27, 2017
38a0002
Lib simultator/esx removed.
Apr 27, 2017
b51fe25
Esx added.
Apr 27, 2017
313b9ce
Test changed for random values.
Apr 27, 2017
70e0c81
Merge remote-tracking branch 'upstream/master'
Apr 28, 2017
1c83ddc
Data race fixed.
Apr 28, 2017
5c0f1d8
Files updated.
Apr 28, 2017
b2431ec
Merge remote-tracking branch 'upstream/master'
May 2, 2017
6a67ecf
Heartbeat fields.asciidoc updated.
May 2, 2017
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
1 change: 1 addition & 0 deletions CHANGELOG.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ https://github.com/elastic/beats/compare/v5.1.1...master[Check the HEAD diff]
`cgroups` to `process.cgroups.enabled`. {pull}3519[3519]
- Change fieldnames couchbase.node.couch.*.actual_disk_size.* to couchbase.node.couch.*.disk_size.* {pull}3545[3545]
- Fixing prometheus collector to aggregate metrics based on metric family. {pull}4075[4075]
- Add experimental Vsphere module. {pull}4028[4028]

*Packetbeat*
- Remove deprecated geoip. {pull}3766[3766]
Expand Down
43 changes: 43 additions & 0 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -2219,6 +2219,49 @@ Copyright 2015 The Prometheus Authors
This product includes software developed at
SoundCloud Ltd. (http://soundcloud.com/).

--------------------------------------------------------------------
github.com/google/uuid
--------------------------------------------------------------------
Copyright (c) 2009,2014 Google Inc. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

--------------------------------------------------------------------
github.com/vmware/govmomi
--------------------------------------------------------------------
Apache License


--------------------------------------------------------------------
github.com/vmware/vic
--------------------------------------------------------------------
Apache License


--------------------------------------------------------------------
github.com/davecgh/go-spew
--------------------------------------------------------------------
Expand Down
233 changes: 233 additions & 0 deletions metricbeat/docs/fields.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ grouped in the following categories:
* <<exported-fields-prometheus>>
* <<exported-fields-redis>>
* <<exported-fields-system>>
* <<exported-fields-vsphere>>
* <<exported-fields-windows>>
* <<exported-fields-zookeeper>>

Expand Down Expand Up @@ -8782,6 +8783,238 @@ type: keyword
Name of the user running the process.


[[exported-fields-vsphere]]
== vsphere Fields

vsphere Module



[float]
== vsphere Fields




[float]
== datastore Fields

datastore



[float]
=== vsphere.datastore.datacenter

type: keyword

Datacenter name


[float]
=== vsphere.datastore.name

type: keyword

Datastore name


[float]
=== vsphere.datastore.fstype

type: keyword

Filesystem type


[float]
=== vsphere.datastore.capacity.total.bytes

type: long

format: bytes

Total bytes of the datastore


[float]
=== vsphere.datastore.capacity.free.bytes

type: long

format: bytes

Free bytes of the datastore


[float]
=== vsphere.datastore.capacity.used.bytes

type: long

format: bytes

Used bytes of the datastore


[float]
=== vsphere.datastore.capacity.used.pct

type: long

format: percent

Used percent of the datastore


[float]
== host Fields

host



[float]
=== vsphere.host.datacenter

type: keyword

Datacenter name


[float]
=== vsphere.host.name

type: keyword

Host name


[float]
=== vsphere.host.cpu.used.mhz

type: long

Used CPU in Mhz


[float]
=== vsphere.host.cpu.total.mhz

type: long

Total CPU in Mhz


[float]
=== vsphere.host.cpu.free.mhz

type: long

Free CPU in Mhz


[float]
=== vsphere.host.memory.used.bytes

type: long

format: bytes

Used Memory in bytes


[float]
=== vsphere.host.memory.total.bytes

type: long

format: bytes

Total Memory in bytes


[float]
=== vsphere.host.memory.free.bytes

type: long

format: bytes

Free Memory in bytes


[float]
== virtualmachine Fields

virtualmachine



[float]
=== vsphere.virtualmachine.datacenter

type: keyword

Datacenter name


[float]
=== vsphere.virtualmachine.name

type: keyword

Virtual Machine name


[float]
=== vsphere.virtualmachine.cpu.used.mhz

type: long

Used CPU in Mhz


[float]
=== vsphere.virtualmachine.memory.used.guest.bytes

type: long

format: bytes

Used Memory of Guest in bytes


[float]
=== vsphere.virtualmachine.memory.used.host.bytes

type: long

format: bytes

Used Memory of Host in bytes


[float]
=== vsphere.virtualmachine.memory.total.guest.bytes

type: long

format: bytes

Total Memory of Guest in bytes


[float]
=== vsphere.virtualmachine.memory.free.guest.bytes

type: long

format: bytes

Free Memory of Guest in bytes


[[exported-fields-windows]]
== Windows Fields

Expand Down
49 changes: 49 additions & 0 deletions metricbeat/docs/modules/vsphere.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
////
This file is generated! See scripts/docs_collector.py
////

[[metricbeat-module-vsphere]]
== vsphere Module

This is the vsphere Module that uses the library Govmomi (https://github.com/vmware/govmomi) to collect metrics from any Vmware SDK URL (ESXi/VCenter). This library is built for and tested against ESXi and vCenter 5.5, 6.0 and 6.5.



[float]
=== Example Configuration

The vsphere module supports the standard configuration options that are described
in <<configuration-metricbeat>>. Here is an example configuration:

[source,yaml]
----
metricbeat.modules:
- module: vsphere
metricsets: ["datastore, host, virtualmachine"]
enabled: false
period: 10s
hosts: ["https://localhost/sdk"]

username: "user"
password: "password"
# If insecure is true, don't verify the server's certificate chain
insecure: false
----

[float]
=== Metricsets

The following metricsets are available:

* <<metricbeat-metricset-vsphere-datastore,datastore>>

* <<metricbeat-metricset-vsphere-host,host>>

* <<metricbeat-metricset-vsphere-virtualmachine,virtualmachine>>

include::vsphere/datastore.asciidoc[]

include::vsphere/host.asciidoc[]

include::vsphere/virtualmachine.asciidoc[]

19 changes: 19 additions & 0 deletions metricbeat/docs/modules/vsphere/datastore.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
////
This file is generated! See scripts/docs_collector.py
////

[[metricbeat-metricset-vsphere-datastore]]
include::../../../module/vsphere/datastore/_meta/docs.asciidoc[]


==== Fields

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

Here is an example document generated by this metricset:

[source,json]
----
include::../../../module/vsphere/datastore/_meta/data.json[]
----
19 changes: 19 additions & 0 deletions metricbeat/docs/modules/vsphere/host.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
////
This file is generated! See scripts/docs_collector.py
////

[[metricbeat-metricset-vsphere-host]]
include::../../../module/vsphere/host/_meta/docs.asciidoc[]


==== Fields

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

Here is an example document generated by this metricset:

[source,json]
----
include::../../../module/vsphere/host/_meta/data.json[]
----
Loading