Skip to content

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

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

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

Conversation

@lucian-ioan
Copy link
Copy Markdown
Contributor

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

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

@lalit-satapathy
Copy link
Copy Markdown
Contributor

lalit-satapathy commented Aug 30, 2024

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?

@lucian-ioan
Copy link
Copy Markdown
Contributor Author

lucian-ioan commented Sep 2, 2024

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

Do you think using the fingerprint processor is unnecessary here?

@agithomas
Copy link
Copy Markdown
Contributor

agithomas commented Sep 2, 2024

@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
Copy link
Copy Markdown
Contributor Author

lucian-ioan commented Sep 18, 2024

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

@@ -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

@elastic-sonarqube
Copy link
Copy Markdown

@elasticmachine
Copy link
Copy Markdown

💚 Build Succeeded

History

cc @lucian-ioan

Copy link
Copy Markdown
Contributor

@niraj-elastic niraj-elastic left a comment

Choose a reason for hiding this comment

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

LGTM!

Copy link
Copy Markdown
Contributor

@kush-elastic kush-elastic left a comment

Choose a reason for hiding this comment

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

LGTM!

Copy link
Copy Markdown
Member

@ishleenk17 ishleenk17 left a comment

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

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]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants