Skip to content

VMware vSphere

VMware vSphere is a virtualization and cloud computing platform that allows organizations to create, run, and manage virtual machines (VMs) and cloud-based services. It is a suite of software products that provide a complete virtualization infrastructure, including virtualized computing, networking, storage, and security resources.

vSphere allows multiple operating systems and applications to run on a single physical server or cluster of servers, which enables organizations to consolidate their IT infrastructure and reduce hardware costs. It also provides features like High Availability (HA), Distributed Resource Scheduler (DRS), and Fault Tolerance (FT) to increase the reliability and availability of virtualized applications.

App Function

This app comes with rules, dashboards, and triggers, all customized to work specifically for vSphere, prepared for a multitude of uses.

The app rules are to parse user tags from the incoming log messages. There are 123 possible user tags that can be gleaned from vSphere log messages. All are enabled by default, but it is strongly recommended that the particular user tags of interest are specifically enabled and the remainder disabled. This is because each possible user tag has a performance cost, and checking for user tags that are not of interest is wasteful.

To select the user tags of interest, after the app is installed the /etc/logzilla/apps/vmware/config/vmware-config.yaml file should be edited. The top of the YAML file has a section titled DESIRED_USER_TAGS. On each successive line below that should be listed the user tags that are to be looked for in the incoming log messages. For each user tag, there is an entry in the USER_TAG_DEFINITIONS section below that indicates what log messages that user tag corresponds with. So the default vmware-config.yaml lists all 123 user tags, and it is strongly recommended that in that section each individual line containing a user tag that is not of interest should be deleted.

Vendor Documentation

Incoming Log Format

The incoming log messages are received through syslog as standard syslog messages. There are two log formats, both in use simultaneously.

In the first format, the message text itself consists first of a date-timestamp followed by a word indicating the severity or criticality of the message, then a process name and id, followed by some key-value pairs, followed by the message text.

In the second format, the message text consists of a date-timestamp, followed by a thread id, followed by key-value pairs, followed by an event id, and lastly the message text.

Although the formats differ, the app rules are able to parse both formats to retrieve the user tag information.

Parsed Metadata Fields

These are the fields / user tags that are parsed from the log messages:

vSphere User Tag Name
vmw_config_type
vmw_device_changed
vmw_esx_shell_command
vmw_esx_shell_user
vmw_esxi_audit
vmw_esxi_auth_failed_source
vmw_esxi_auth_failed_user
vmw_esxi_auth_source
vmw_esxi_auth_type
vmw_esxi_auth_user
vmw_esxi_cli_command
vmw_esxi_connect_source
vmw_esxi_connectivity_component
vmw_esxi_drs_from
vmw_esxi_drs_to
vmw_esxi_drs_vm
vmw_esxi_esxupdate_command
vmw_esxi_firewall_operation
vmw_esxi_firewall_ruleset
vmw_esxi_hostd_auth_user
vmw_esxi_iscsi_server
vmw_esxi_nfs_datastore
vmw_esxi_nfs_server
vmw_esxi_nfs_status
vmw_esxi_nsx_severity
vmw_esxi_permission_event
vmw_esxi_portgroup
vmw_esxi_problem
vmw_esxi_problem_datastores
vmw_esxi_scsi_additional_sense_code
vmw_esxi_scsi_additional_sense_code_qualifier
vmw_esxi_scsi_device_status
vmw_esxi_scsi_host_status
vmw_esxi_scsi_latency
vmw_esxi_scsi_plugin_status
vmw_esxi_scsi_sense_code
vmw_esxi_scsi_sense_data
vmw_esxi_severity
vmw_esxi_snapshot_operation
vmw_esxi_snmp_trap_name
vmw_esxi_snmp_trap_oid
vmw_esxi_sub
vmw_esxi_uptime
vmw_esxi_vim_datastore
vmw_esxi_vmdowntime
vmw_esxi_vmfs_heartbeat_datastore
vmw_esxi_vmfs_volume_guid
vmw_esxi_vmk_component
vmw_esxi_vmk_world
vmw_esxi_vmkernel_net_vm_name
vmw_esxi_vmotion_bandwidth
vmw_esxi_vmotion_opid
vmw_esxi_vmotion_type
vmw_esxi_vmotiondst_opid
vmw_esxi_vmprecopybandwidth
vmw_esxi_vmprecopystuntime
vmw_esxi_vms
vmw_fdm_state
vmw_ha_component
vmw_ha_component_operation
vmw_ha_guesthb
vmw_ha_slave
vmw_hatask
vmw_hostd_vmotion_id
vmw_opid
vmw_recordop
vmw_recordop_action
vmw_rsv_source
vmw_rsv_time
vmw_scsi_path_state
vmw_scsideviceio_pid
vmw_task_status
vmw_user
vmw_vc_alarm_source
vmw_vc_alarm_status
vmw_vc_alarm_type
vmw_vc_api_invocations
vmw_vc_auth_failed_source
vmw_vc_auth_failed_user
vmw_vc_auth_source
vmw_vc_auth_type
vmw_vc_auth_user
vmw_vc_custom_field_name
vmw_vc_custom_field_on_vm
vmw_vc_drs_migrate_cluster
vmw_vc_drs_migrate_datastore
vmw_vc_duplicate_ip_vm1
vmw_vc_duplicate_ip_vm2
vmw_vc_fdm_state
vmw_vc_file_action
vmw_vc_mks_host
vmw_vc_msg_info
vmw_vc_msg_vm
vmw_vc_power_host
vmw_vc_power_status
vmw_vc_power_vm_name
vmw_vc_reconfig_on
vmw_vc_rhttpproxy_error
vmw_vc_task_method
vmw_vc_task_object
vmw_vc_task_operation
vmw_vc_task_status
vmw_vc_task_type
vmw_vc_vmodl_fault
vmw_vc_vmotion_from
vmw_vc_vmotion_precopystuntime
vmw_vc_vmotion_to
vmw_vc_vpxd_clientip
vmw_vc_vpxd_hearbeat_host
vmw_vc_vpxd_username
vmw_vim_fault_type
vmw_vm_heartbeat_source
vmw_vm_heartbeat_status
vmw_vm_state_transition_post
vmw_vm_state_transition_pre
vmw_vm_vmx_name
vmw_vmfs_heartbeat_status
vmw_vmkernel_vmotion_id
vmw_vmotion_status
vmw_vob_component
vmw_vob_event_type
vmw_volume_name
vmw_vsphere_op_time

Log Examples

Log Format 1

- - 2022-10-07T01:31:23.561Z info vpxd[06166] [Originator@6876 sub=Default opID=sps-Main-670825-661-106283-91] [VpxLRO] -- ERROR session[52209c62-c72c-38b9-47de-a9cde9fc032f]521ac939-f711-0fa9-41fc-62fad40b3af9 -- CatalogSyncManager -- vim.vslm.vcenter.CatalogSyncManager.queryCatalogChange: vmodl.fault.NotSupported:\n--> Result:\n--> (vmodl.fault.NotSupported) {\n-->    faultCause = (vmodl.MethodFault) null, \n-->    faultMessage = <unset>\n-->    msg = ""\n--> }\n--> Args:\n--> \n--> Arg catalogChangeSpec:\n--> (vim.vslm.CatalogChangeSpec) {\n-->    datastore = 'vim.Datastore:datastore-4421', \n-->    startVClockTime = (vim.vslm.VClockInfo) {\n-->       vClockTime = 0\n-->    }, \n-->    fullSync = false\n--> }

Log Format 2

- - 2022-10-07T01:31:23.868Z [pool-24-thread-1] INFO  opId=sps-Main-670825-661 com.vmware.vim.storage.common.util.OperationIdUtil - OperationID present in invoker thread, adding suffix and re-using it sps-Main-670825-661-106283