Skip to content

[vSphere][datastore] Add support for additional metrics - #10911

Merged
lucian-ioan merged 30 commits into
elastic:mainfrom
lucian-ioan:update_vsphere_datastore_integration
Sep 19, 2024
Merged

[vSphere][datastore] Add support for additional metrics#10911
lucian-ioan merged 30 commits into
elastic:mainfrom
lucian-ioan:update_vsphere_datastore_integration

Conversation

@lucian-ioan

@lucian-ioan lucian-ioan commented Aug 28, 2024

Copy link
Copy Markdown
Contributor

Proposed commit message

Following beats code changes in elastic/beats#40441, the following metrics need integration update:

Metrics Type Metrics Field Mappings
Datastore performance  
datastore.read.average (KBps) datastore.read.bytes
datastore.write.average (KBps) datastore.write.bytes
disk.capacity.bytes (KBps) disk.capacity.bytes
disk.capacity.usage.average (KB) disk.capacity.usage.bytes
disk.provisioned.bytes (KBps) disk.provisioned.bytes
Datastore Summary  
Datastore.OverallStatus datastore.status
Datastore.Host datastore.host.count
Datastore.Host datastore.host.names
Datastore.Vm datastore.vm.count
Datastore.Vm datastore.vm.names
Alerts  
triggerd_alarms.name Name of the alarm.
triggerd_alarms.id Unique key that identifies the alarm.
triggerd_alarms.status Overall status of the alarm object.
triggerd_alarms.triggered_time Time the alarm triggered.
triggerd_alarms.description Description of the alarm.
triggerd_alarms.entity_name alarm happened in respective entity

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs.
  • I have added an entry to my package's changelog.yml file.
  • I have verified that Kibana version constraints are current according to guidelines.

Author's Checklist

  • Create Snapshot of Metricbeat changes.
  • Use Snapshot to make the changes in the vSphere Integration Host datastream.
  • Update the system and pipeline changes.
  • Add versioning to changelog.
  • Test the Integration for metric collection.
  • Test Integration from TSDB Perspective.
  • Code review.

How to test this PR locally

Related issues

@lucian-ioan lucian-ioan self-assigned this Aug 28, 2024
@lucian-ioan lucian-ioan added the Integration:vsphere VMware vSphere label Aug 28, 2024
@lucian-ioan
lucian-ioan marked this pull request as ready for review August 28, 2024 09:08
@lucian-ioan
lucian-ioan requested a review from a team as a code owner August 28, 2024 09:08
@andrewkroh andrewkroh added enhancement New feature or request Team:Obs-InfraObs Observability Infrastructure Monitoring team [elastic/obs-infraobs-integrations] labels Aug 28, 2024
@elasticmachine

Copy link
Copy Markdown

🚀 Benchmarks report

To see the full report comment with /test benchmark fullreport

Comment thread packages/vsphere/changelog.yml Outdated
@lalit-satapathy

lalit-satapathy commented Aug 30, 2024

Copy link
Copy Markdown
Contributor

What about stack version dependancy?

Also release version we need to use next.

@ishleenk17

Copy link
Copy Markdown
Member

I have shared the details of how we can handle versioning here.
Please follow that for all the Integration PR's

@ishleenk17

Copy link
Copy Markdown
Member

@agithomas : Keeping TSDB in mind, can you check and suggest if any of these need to be added for TSDB?

Comment thread packages/vsphere/data_stream/datastore/fields/fields.yml Outdated
Comment thread packages/vsphere/data_stream/datastore/fields/fields.yml Outdated
Comment thread packages/vsphere/data_stream/datastore/fields/fields.yml Outdated
Comment thread packages/vsphere/data_stream/datastore/fields/fields.yml Outdated
Comment thread packages/vsphere/manifest.yml
@lucian-ioan

lucian-ioan commented Sep 2, 2024

Copy link
Copy Markdown
Contributor Author

@agithomas @ishleenk17 I think host.names and vm.names could be used for TSDB.

Do you think using the fingerprint processor is unnecessary here?

Comment thread packages/vsphere/data_stream/datastore/fields/fields.yml
@agithomas

agithomas commented Sep 2, 2024

Copy link
Copy Markdown
Contributor

@agithomas @ishleenk17 I think host.names and vm.names could be used for TSDB.

Do you think using the fingerprint processor is unnecessary here?

Going with the description of host.names, it is List of all the host names associated with the datastore.. So, can there be more than one hosts mapped to one datastore? So, is this an array?

@ishleenk17

Copy link
Copy Markdown
Member

@agithomas @ishleenk17 I think host.names and vm.names could be used for TSDB.
Do you think using the fingerprint processor is unnecessary here?

Going with the description of host.names, it is List of all the host names associated with the datastore.. So, can there be more than one hosts mapped to one datastore? So, is this an array? Does dimension mapping support arrays?

Yes, one datastore can have multiple hosts associated.

@agithomas

Copy link
Copy Markdown
Contributor

@ishleenk17 , if a specific datastore is mapped with more than one hosts, will it create multiple documents or it will be a single document having host.names having multiple values?

This decides - if host.names must be a dimension or not

@ishleenk17

Copy link
Copy Markdown
Member

@ishleenk17 , if a specific datastore is mapped with more than one hosts, will it create multiple documents or it will be a single document having host.names having multiple values?

This decides - if host.names must be a dimension or not

Single document with host.name/vm.name as an array in it. Sample json

@lucian-ioan

lucian-ioan commented Sep 18, 2024

Copy link
Copy Markdown
Contributor Author

Updated the integration with all the recent changes from elastic/beats.

Will rerun system tests, but I don't think any other changes are needed.

@ishleenk17

Copy link
Copy Markdown
Member

Period is not removed from the main manifest file and upgrade the kibana version to 8.15.2

Comment thread packages/vsphere/changelog.yml Outdated
@@ -1,4 +1,9 @@
# newer versions go on top
- version: "1.14.0-next"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update the version to 1.15.0-next

description: >
Rate of writing data to the datastore.
format: bytes
- name: write.latency.total.ms

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this is resolved still ?

title: Period
description: The vSphere performance API allows for collecting host and datastore metrics at various intervals, including real-time (every 20 seconds), 5 minutes, or longer durations. Properly configuring the "period" parameter is crucial to manage usage restrictions and ensure accurate data collection. For more information on optimizing your data collection setup, refer to the [Data Collection Intervals](https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.monitoring.doc/GUID-247646EA-A04B-411A-8DD4-62A3DCFCF49B.html) and [Data Collection Levels](https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.monitoring.doc/GUID-25800DE4-68E5-41CC-82D9-8811E27924BC.html) documentation.
default: 20s
- name: tags

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tags is not added to hbs file.

@ishleenk17

Copy link
Copy Markdown
Member

Can we add pipeline tests as well ?
You may refer to host PR

@ishleenk17

Copy link
Copy Markdown
Member

The fields in the commit description are not updated to the latest ones

@elasticmachine

Copy link
Copy Markdown

💚 Build Succeeded

History

cc @lucian-ioan

@niraj-elastic niraj-elastic left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@kush-elastic kush-elastic left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@ishleenk17 ishleenk17 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

@lucian-ioan
lucian-ioan merged commit 3390921 into elastic:main Sep 19, 2024
@elastic-vault-github-plugin-prod

Copy link
Copy Markdown
Contributor

Package vsphere - 1.15.0 containing this change is available at https://epr.elastic.co/search?package=vsphere

harnish-crest-data pushed a commit to chavdaharnish/integrations that referenced this pull request Feb 4, 2025
harnish-crest-data pushed a commit to chavdaharnish/integrations that referenced this pull request Feb 5, 2025
@lucian-ioan
lucian-ioan deleted the update_vsphere_datastore_integration branch February 6, 2025 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request Integration:vsphere VMware vSphere Team:Obs-InfraObs Observability Infrastructure Monitoring team [elastic/obs-infraobs-integrations]

8 participants