vCenter services not starting and failing with below errors:

ERROR service-control Service-control failed. Error Failed to start vmon services.vmon-cli RC=2, stderr=Failed to start cm services. Error: Service crashed while starting

When you verify logs:

vmon.log:

 ========================== 
2019-07-01T91:07:88.667+05:30| vthread-5| E110: Invalid Json formatted file C:\ProgramData\VMware\vCenterServer\data\vmware-vmon.svcStats\stats_vpxd-svcs.json
2019-07-01T91:07:88.667+05:30| vthread-5| E110: Parse Error: Text only contains white space(s). Offset: 0
2019-07-01T91:07:88.667+05:30| vthread-5| W115: Failed to add service vpxd-svcs.json.
2019-07-01T91:07:88.667+05:30| vthread-5| E110: Invalid Json formatted file C:\ProgramData\VMware\vCenterServer\data\vmware-vmon.svcStats\stats_vpxd.json
2019-07-01T91:07:88.667+05:30| vthread-5| E110: Parse Error: Text only contains white space(s). Offset: 0
2019-07-01T91:07:88.667+05:30| vthread-5| W115: Failed to add service vpxd.json.
2019-07-01T91:07:88.667+05:30| vthread-5| E110: Invalid Json formatted file C:\ProgramData\VMware\vCenterServer\data\vmware-vmon.svcStats\stats_vsan-health.json
2019-07-01T91:07:88.667+05:30| vthread-5| E110: Parse Error: Text only contains white space(s). Offset: 0
2019-07-01T91:07:88.667+05:30| vthread-5| W115: Failed to add service vsan-health.json.
2019-07-01T91:07:88.667+05:30| vthread-5| E110: Invalid Json formatted file C:\ProgramData\VMware\vCenterServer\data\vmware-vmon.svcStats\stats_vsm.json
==========================

This issue occurs when json files (data files) are corrupted which are required to start the service.

To fix this issue :

-- Take backup/snapshot of your vCenter VM and vCenter database

-- Stop all vCenter services

-- Copy and replace files from the working vCenter(same version and build number) location C:\ProgramData\VMware\vCenterServer\data\vmware-vmon.svcStats to non working vCenter.

-- Start vCenter services and all your services should get started