vmware_web_service 2.0.3 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/VMwareWebService/MiqHostDatastoreSystem.rb +5 -1
- data/lib/VMwareWebService/MiqVim.rb +80 -56
- data/lib/VMwareWebService/MiqVimClientBase.rb +11 -10
- data/lib/VMwareWebService/MiqVimCluster.rb +6 -2
- data/lib/VMwareWebService/MiqVimDataStore.rb +9 -6
- data/lib/VMwareWebService/MiqVimDump.rb +1 -1
- data/lib/VMwareWebService/MiqVimEventHistoryCollector.rb +5 -1
- data/lib/VMwareWebService/MiqVimEventMonitor.rb +22 -20
- data/lib/VMwareWebService/MiqVimFolder.rb +15 -11
- data/lib/VMwareWebService/MiqVimHost.rb +15 -13
- data/lib/VMwareWebService/MiqVimInventory.rb +78 -79
- data/lib/VMwareWebService/MiqVimPerfHistory.rb +13 -10
- data/lib/VMwareWebService/MiqVimUpdate.rb +50 -50
- data/lib/VMwareWebService/MiqVimVdlMod.rb +7 -7
- data/lib/VMwareWebService/MiqVimVm.rb +102 -101
- data/lib/VMwareWebService/VimService.rb +5 -2
- data/lib/VMwareWebService/VixDiskLib/VixDiskLib.rb +15 -7
- data/lib/VMwareWebService/VixDiskLib/VixDiskLibServer.rb +15 -15
- data/lib/VMwareWebService/VixDiskLib/vdl_wrapper.rb +26 -27
- data/lib/VMwareWebService/exception.rb +0 -2
- data/lib/VMwareWebService/logging.rb +16 -0
- data/lib/VMwareWebService/version.rb +1 -1
- data/lib/vmware_web_service.rb +2 -0
- metadata +15 -48
- data/lib/VMwareWebService/DMiqVim.rb +0 -95
- data/lib/VMwareWebService/DMiqVimSync.rb +0 -45
- data/lib/VMwareWebService/MiqVimBroker.rb +0 -581
- data/lib/VMwareWebService/MiqVimBrokerMods.rb +0 -222
- data/lib/VMwareWebService/MiqVimCoreUpdater.rb +0 -269
- data/lib/VMwareWebService/miq_fault_tolerant_vim.rb +0 -246
@@ -1,5 +1,4 @@
|
|
1
1
|
require 'sync'
|
2
|
-
require 'enumerator'
|
3
2
|
require 'VMwareWebService/MiqVimClientBase'
|
4
3
|
require 'VMwareWebService/MiqVimDump'
|
5
4
|
require 'VMwareWebService/VimPropMaps'
|
@@ -18,31 +17,31 @@ class MiqVimInventory < MiqVimClientBase
|
|
18
17
|
@@selectorHash = {}
|
19
18
|
@@cacheScope = :cache_scope_full
|
20
19
|
|
21
|
-
def initialize(server
|
22
|
-
super(server, username, password)
|
20
|
+
def initialize(server:, username:, password:, port: 443, ssl_options: {}, cache_scope: nil)
|
21
|
+
super(:server => server, :port => port, :ssl_options => ssl_options, :username => username, :password => password)
|
23
22
|
|
24
|
-
|
23
|
+
cache_scope ||= @@cacheScope
|
25
24
|
|
26
|
-
case
|
25
|
+
case cache_scope
|
27
26
|
when :cache_scope_full
|
28
27
|
@propMap = FullPropMap
|
29
|
-
|
28
|
+
logger.info "MiqVimInventory: using property map FullPropMap"
|
30
29
|
when :cache_scope_ems_refresh
|
31
30
|
@propMap = EmsRefreshPropMap
|
32
|
-
|
31
|
+
logger.info "MiqVimInventory: using property map EmsRefreshPropMap"
|
33
32
|
when :cache_scope_core
|
34
33
|
@propMap = CorePropMap
|
35
|
-
|
34
|
+
logger.info "MiqVimInventory: using property map CorePropMap"
|
36
35
|
when :cache_scope_event_monitor
|
37
36
|
@propMap = EventMonitorPropMap
|
38
|
-
|
37
|
+
logger.info "MiqVimInventory: using property map EventMonitorPropMap"
|
39
38
|
else
|
40
39
|
@propMap = FullPropMap
|
41
|
-
|
40
|
+
logger.info "MiqVimInventory: unrecognized cache scope #{cacheScope}, using FullPropMap"
|
42
41
|
end
|
43
42
|
|
44
43
|
# If we are connected to a virtual center then we can access additional properties
|
45
|
-
@propMap.merge!(PropMapVCenter) if isVirtualCenter &&
|
44
|
+
@propMap.merge!(PropMapVCenter) if isVirtualCenter && cache_scope != :cache_scope_event_monitor
|
46
45
|
|
47
46
|
@propCol = @sic.propertyCollector
|
48
47
|
@rootFolder = @sic.rootFolder
|
@@ -88,11 +87,11 @@ class MiqVimInventory < MiqVimClientBase
|
|
88
87
|
|
89
88
|
unless instance_variable_get(hnm).nil?
|
90
89
|
hnmc = instance_variable_get(hnm).keys.length
|
91
|
-
|
90
|
+
logger.info "#{pref}#{hnm}: #{hnmc}"
|
92
91
|
end
|
93
92
|
unless instance_variable_get(hn).nil?
|
94
93
|
hnc = instance_variable_get(hn).keys.length
|
95
|
-
|
94
|
+
logger.info "#{pref}#{hn}: #{hnc}"
|
96
95
|
end
|
97
96
|
end
|
98
97
|
end
|
@@ -108,37 +107,37 @@ class MiqVimInventory < MiqVimClientBase
|
|
108
107
|
hashByKey = pm[:keyPath] ? instance_variable_get(hn) : nil
|
109
108
|
|
110
109
|
if hashByMor.nil?
|
111
|
-
|
110
|
+
logger.info "#{pref}#{hnm}: is nil"
|
112
111
|
next
|
113
112
|
end
|
114
113
|
|
115
114
|
keya = hashByMor.keys
|
116
115
|
obja = hashByMor.values
|
117
|
-
|
118
|
-
|
116
|
+
logger.info "#{pref}#{hnm}: #keys = #{keya.length}"
|
117
|
+
logger.info "#{pref}#{hnm}: #objects = #{obja.length}"
|
119
118
|
obja.compact!
|
120
119
|
obja.uniq!
|
121
|
-
|
120
|
+
logger.info "#{pref}#{hnm}: #unique non-nill objects = #{obja.length}"
|
122
121
|
|
123
122
|
unless hashByKey.nil?
|
124
123
|
keyb = hashByKey.keys
|
125
124
|
objb = hashByKey.values
|
126
|
-
|
127
|
-
|
125
|
+
logger.info "#{pref}#{hn}: #keys = #{keyb.length}"
|
126
|
+
logger.info "#{pref}#{hn}: #objects = #{objb.length}"
|
128
127
|
objb.compact!
|
129
128
|
objb.uniq!
|
130
|
-
|
129
|
+
logger.info "#{pref}#{hn}: #unique non-nill objects = #{objb.length}"
|
131
130
|
obja.concat(objb).uniq!
|
132
131
|
end
|
133
|
-
|
132
|
+
logger.info "#{pref}TOTAL: #unique non-nill objects = #{obja.length}"
|
134
133
|
cacheSz = Marshal.dump(obja).length
|
135
|
-
|
136
|
-
|
134
|
+
logger.info "#{pref}TOTAL: size of objects = #{cacheSz}"
|
135
|
+
logger.info "#{pref}****"
|
137
136
|
totalCacheSz += cacheSz
|
138
137
|
end
|
139
|
-
|
140
|
-
|
141
|
-
|
138
|
+
logger.info "#{pref}****************"
|
139
|
+
logger.info "#{pref}TOTAL: cache size = #{totalCacheSz}"
|
140
|
+
logger.info "#{pref}****************"
|
142
141
|
end
|
143
142
|
totalCacheSz
|
144
143
|
end
|
@@ -219,7 +218,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
219
218
|
end
|
220
219
|
|
221
220
|
def resetCache
|
222
|
-
|
221
|
+
logger.info "MiqVimInventory.resetCache: clearing cache for #{@connId}"
|
223
222
|
@cacheLock.synchronize(:EX) do
|
224
223
|
@inventoryHash = nil
|
225
224
|
|
@@ -228,7 +227,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
228
227
|
instance_variable_set(pm[:baseName], nil)
|
229
228
|
end
|
230
229
|
end
|
231
|
-
|
230
|
+
logger.info "MiqVimInventory.resetCache: cleared cache for #{@connId}"
|
232
231
|
end # def resetCache
|
233
232
|
|
234
233
|
def currentSession
|
@@ -239,11 +238,11 @@ class MiqVimInventory < MiqVimClientBase
|
|
239
238
|
return false unless @alive
|
240
239
|
begin
|
241
240
|
unless currentSession
|
242
|
-
|
241
|
+
logger.info "MiqVimInventory.isAlive?: Current session no longer exists."
|
243
242
|
@alive = false
|
244
243
|
end
|
245
244
|
rescue Exception => err
|
246
|
-
|
245
|
+
logger.info "MiqVimInventory.isAlive?: Could not access connection - #{err}"
|
247
246
|
@alive = false
|
248
247
|
end
|
249
248
|
@alive
|
@@ -278,9 +277,9 @@ class MiqVimInventory < MiqVimClientBase
|
|
278
277
|
if keyPath
|
279
278
|
key = props.fetch_path(keyPath)
|
280
279
|
if !key
|
281
|
-
|
280
|
+
logger.debug "hashObj: key is nil for #{mor}: #{keyPath}"
|
282
281
|
elsif key.empty?
|
283
|
-
|
282
|
+
logger.debug "hashObj: key is empty for #{mor}: #{keyPath}"
|
284
283
|
key = nil
|
285
284
|
props.store_path(keyPath, nil)
|
286
285
|
end
|
@@ -491,7 +490,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
491
490
|
raise "virtualMachines_locked: cache lock not held" unless @cacheLock.sync_locked?
|
492
491
|
return(@virtualMachines) if @virtualMachines
|
493
492
|
|
494
|
-
|
493
|
+
logger.info "MiqVimInventory.virtualMachines_locked: loading VirtualMachine cache for #{@connId}"
|
495
494
|
begin
|
496
495
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
497
496
|
|
@@ -505,7 +504,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
505
504
|
ensure
|
506
505
|
@cacheLock.sync_unlock if unlock
|
507
506
|
end
|
508
|
-
|
507
|
+
logger.info "MiqVimInventory.virtualMachines_locked: loaded VirtualMachine cache for #{@connId}"
|
509
508
|
|
510
509
|
@virtualMachines
|
511
510
|
end # def virtualMachines_locked
|
@@ -617,7 +616,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
617
616
|
raise "computeResources_locked: cache lock not held" unless @cacheLock.sync_locked?
|
618
617
|
return(@computeResources) if @computeResources
|
619
618
|
|
620
|
-
|
619
|
+
logger.info "MiqVimInventory.computeResources_locked: loading ComputeResource cache for #{@connId}"
|
621
620
|
begin
|
622
621
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
623
622
|
|
@@ -631,7 +630,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
631
630
|
ensure
|
632
631
|
@cacheLock.sync_unlock if unlock
|
633
632
|
end
|
634
|
-
|
633
|
+
logger.info "MiqVimInventory.computeResources_locked: loaded ComputeResource cache for #{@connId}"
|
635
634
|
|
636
635
|
@computeResources
|
637
636
|
end # def computeResources_locked
|
@@ -720,7 +719,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
720
719
|
raise "clusterComputeResources_locked: cache lock not held" unless @cacheLock.sync_locked?
|
721
720
|
return(@clusterComputeResources) if @clusterComputeResources
|
722
721
|
|
723
|
-
|
722
|
+
logger.info "MiqVimInventory.clusterComputeResources_locked: loading ClusterComputeResource cache for #{@connId}"
|
724
723
|
begin
|
725
724
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
726
725
|
|
@@ -734,7 +733,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
734
733
|
ensure
|
735
734
|
@cacheLock.sync_unlock if unlock
|
736
735
|
end
|
737
|
-
|
736
|
+
logger.info "MiqVimInventory.clusterComputeResources_locked: loaded ClusterComputeResource cache for #{@connId}"
|
738
737
|
|
739
738
|
@clusterComputeResources
|
740
739
|
end # def clusterComputeResources_locked
|
@@ -823,7 +822,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
823
822
|
raise "resourcePools_locked: cache lock not held" unless @cacheLock.sync_locked?
|
824
823
|
return(@resourcePools) if @resourcePools
|
825
824
|
|
826
|
-
|
825
|
+
logger.info "MiqVimInventory.resourcePools_locked: loading ResourcePool cache for #{@connId}"
|
827
826
|
begin
|
828
827
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
829
828
|
|
@@ -837,7 +836,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
837
836
|
ensure
|
838
837
|
@cacheLock.sync_unlock if unlock
|
839
838
|
end
|
840
|
-
|
839
|
+
logger.info "MiqVimInventory.resourcePools_locked: loaded ResourcePool cache for #{@connId}"
|
841
840
|
|
842
841
|
@resourcePools
|
843
842
|
end # def resourcePools_locked
|
@@ -935,7 +934,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
935
934
|
|
936
935
|
return(@virtualApps) if @virtualApps
|
937
936
|
|
938
|
-
|
937
|
+
logger.info "MiqVimInventory.virtualApps_locked: loading VirtualApp cache for #{@connId}"
|
939
938
|
begin
|
940
939
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
941
940
|
|
@@ -949,7 +948,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
949
948
|
ensure
|
950
949
|
@cacheLock.sync_unlock if unlock
|
951
950
|
end
|
952
|
-
|
951
|
+
logger.info "MiqVimInventory.virtualApps_locked: loaded VirtualApp cache for #{@connId}"
|
953
952
|
|
954
953
|
@virtualApps
|
955
954
|
end # def virtualApps_locked
|
@@ -1038,7 +1037,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1038
1037
|
raise "folders_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1039
1038
|
return(@folders) if @folders
|
1040
1039
|
|
1041
|
-
|
1040
|
+
logger.info "MiqVimInventory.folders_locked: loading Folder cache for #{@connId}"
|
1042
1041
|
begin
|
1043
1042
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1044
1043
|
|
@@ -1052,7 +1051,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1052
1051
|
ensure
|
1053
1052
|
@cacheLock.sync_unlock if unlock
|
1054
1053
|
end
|
1055
|
-
|
1054
|
+
logger.info "MiqVimInventory.folders_locked: loaded Folder cache for #{@connId}"
|
1056
1055
|
|
1057
1056
|
@folders
|
1058
1057
|
end # def folders_locked
|
@@ -1141,7 +1140,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1141
1140
|
raise "datacenters_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1142
1141
|
return(@datacenters) if @datacenters
|
1143
1142
|
|
1144
|
-
|
1143
|
+
logger.info "MiqVimInventory.datacenters_locked: loading Datacenter cache for #{@connId}"
|
1145
1144
|
begin
|
1146
1145
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1147
1146
|
|
@@ -1155,7 +1154,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1155
1154
|
ensure
|
1156
1155
|
@cacheLock.sync_unlock if unlock
|
1157
1156
|
end
|
1158
|
-
|
1157
|
+
logger.info "MiqVimInventory.datacenters_locked: loaded Datacenter cache for #{@connId}"
|
1159
1158
|
|
1160
1159
|
@datacenters
|
1161
1160
|
end # def datacenters_locked
|
@@ -1244,7 +1243,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1244
1243
|
raise "hostSystems_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1245
1244
|
return(@hostSystems) if @hostSystems
|
1246
1245
|
|
1247
|
-
|
1246
|
+
logger.info "MiqVimInventory.hostSystems_locked: loading HostSystem cache for #{@connId}"
|
1248
1247
|
begin
|
1249
1248
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1250
1249
|
|
@@ -1258,7 +1257,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1258
1257
|
ensure
|
1259
1258
|
@cacheLock.sync_unlock if unlock
|
1260
1259
|
end
|
1261
|
-
|
1260
|
+
logger.info "MiqVimInventory.hostSystems_locked: loaded HostSystem cache for #{@connId}"
|
1262
1261
|
|
1263
1262
|
@hostSystems
|
1264
1263
|
end # def hostSystems_locked
|
@@ -1369,7 +1368,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1369
1368
|
raise "dataStores_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1370
1369
|
return(@dataStores) if @dataStores
|
1371
1370
|
|
1372
|
-
|
1371
|
+
logger.info "MiqVimInventory.dataStores_locked: loading Datastore cache for #{@connId}"
|
1373
1372
|
begin
|
1374
1373
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1375
1374
|
|
@@ -1383,7 +1382,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1383
1382
|
ensure
|
1384
1383
|
@cacheLock.sync_unlock if unlock
|
1385
1384
|
end
|
1386
|
-
|
1385
|
+
logger.info "MiqVimInventory.dataStores_locked: loaded Datastore cache for #{@connId}"
|
1387
1386
|
|
1388
1387
|
@dataStores
|
1389
1388
|
end # def dataStores_locked
|
@@ -1488,7 +1487,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1488
1487
|
raise "dvPortgroups_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1489
1488
|
return(@dvPortgroups) if @dvPortgroups
|
1490
1489
|
|
1491
|
-
|
1490
|
+
logger.info "MiqVimInventory.dvPortgroups_locked: loading DV Portgroup cache for #{@connId}"
|
1492
1491
|
begin
|
1493
1492
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1494
1493
|
|
@@ -1502,7 +1501,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1502
1501
|
ensure
|
1503
1502
|
@cacheLock.sync_unlock if unlock
|
1504
1503
|
end
|
1505
|
-
|
1504
|
+
logger.info "MiqVimInventory.dvPortgroups_locked: loaded DV Portgroup cache for #{@connId}"
|
1506
1505
|
|
1507
1506
|
@dvPortgroups
|
1508
1507
|
end # def dvPortgroups_locked
|
@@ -1576,7 +1575,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1576
1575
|
raise "dvSwitches_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1577
1576
|
return(@dvSwithces) if @dvSwitches
|
1578
1577
|
|
1579
|
-
|
1578
|
+
logger.info "MiqVimInventory.dvSwitches_locked: loading DV Switch cache for #{@connId}"
|
1580
1579
|
|
1581
1580
|
base_class = 'DistributedVirtualSwitch'.freeze
|
1582
1581
|
child_classes = VimClass.child_classes(base_class)
|
@@ -1596,7 +1595,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1596
1595
|
ensure
|
1597
1596
|
@cacheLock.sync_unlock if unlock
|
1598
1597
|
end
|
1599
|
-
|
1598
|
+
logger.info "MiqVimInventory.dvSwitches_locked: loaded DV Switch cache for #{@connId}"
|
1600
1599
|
|
1601
1600
|
@dvSwitches
|
1602
1601
|
end # def dvSwitches_locked
|
@@ -1669,7 +1668,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1669
1668
|
raise "storagePods_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1670
1669
|
return(@storagePods) if @storagePods
|
1671
1670
|
|
1672
|
-
|
1671
|
+
logger.info "MiqVimInventory.storagePods_locked: loading Datastore Cluster cache for #{@connId}"
|
1673
1672
|
begin
|
1674
1673
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1675
1674
|
|
@@ -1683,7 +1682,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1683
1682
|
ensure
|
1684
1683
|
@cacheLock.sync_unlock if unlock
|
1685
1684
|
end
|
1686
|
-
|
1685
|
+
logger.info "MiqVimInventory.storagePods_locked: loaded Datastore Cluster cache for #{@connId}"
|
1687
1686
|
|
1688
1687
|
@storagePods
|
1689
1688
|
end # def storagePods_locked
|
@@ -1761,7 +1760,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1761
1760
|
raise "licenseManagers_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1762
1761
|
return(@licenseManagers) if @licenseManagers
|
1763
1762
|
|
1764
|
-
|
1763
|
+
logger.info "MiqVimInventory.licenseManagers_locked: loading LicenseManager cache for #{@connId}"
|
1765
1764
|
begin
|
1766
1765
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1767
1766
|
|
@@ -1775,7 +1774,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1775
1774
|
ensure
|
1776
1775
|
@cacheLock.sync_unlock if unlock
|
1777
1776
|
end
|
1778
|
-
|
1777
|
+
logger.info "MiqVimInventory.licenseManagers_locked: loaded LicenseManager cache for #{@connId}"
|
1779
1778
|
|
1780
1779
|
@licenseManagers
|
1781
1780
|
end # def licenseManagers_locked
|
@@ -1871,7 +1870,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1871
1870
|
raise "extensionManagers_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1872
1871
|
return(@extensionManagers) if @extensionManagers
|
1873
1872
|
|
1874
|
-
|
1873
|
+
logger.info "MiqVimInventory.extensionManagers_locked: loading ExtensionManager cache for #{@connId}"
|
1875
1874
|
begin
|
1876
1875
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1877
1876
|
|
@@ -1885,7 +1884,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
1885
1884
|
ensure
|
1886
1885
|
@cacheLock.sync_unlock if unlock
|
1887
1886
|
end
|
1888
|
-
|
1887
|
+
logger.info "MiqVimInventory.extensionManagers_locked: loaded ExtensionManager cache for #{@connId}"
|
1889
1888
|
|
1890
1889
|
@extensionManagers
|
1891
1890
|
end # def extensionManagers_locked
|
@@ -1977,22 +1976,22 @@ class MiqVimInventory < MiqVimClientBase
|
|
1977
1976
|
raise "inventoryHash_locked: cache lock not held" unless @cacheLock.sync_locked?
|
1978
1977
|
return(@inventoryHash) if @inventoryHash
|
1979
1978
|
|
1980
|
-
|
1979
|
+
logger.info "MiqVimInventory.inventoryHash_locked: loading inventoryHash for #{@connId}"
|
1981
1980
|
begin
|
1982
1981
|
@cacheLock.sync_lock(:EX) if (unlock = @cacheLock.sync_shared?)
|
1983
1982
|
|
1984
|
-
|
1983
|
+
logger.info "MiqVimInventory(#{@server}, #{@username}).inventoryHash_locked: calling retrieveProperties"
|
1985
1984
|
|
1986
1985
|
@inventoryHash = {}
|
1987
1986
|
retrievePropertiesIter(@propCol, @spec) do |oc|
|
1988
1987
|
(@inventoryHash[oc.obj.vimType] ||= []) << oc.obj
|
1989
1988
|
end
|
1990
1989
|
|
1991
|
-
|
1990
|
+
logger.info "MiqVimInventory(#{@server}, #{@username}).inventoryHash_locked: returned from retrieveProperties"
|
1992
1991
|
ensure
|
1993
1992
|
@cacheLock.sync_unlock if unlock
|
1994
1993
|
end
|
1995
|
-
|
1994
|
+
logger.info "MiqVimInventory.inventoryHash_locked: loaded inventoryHash for #{@connId}"
|
1996
1995
|
|
1997
1996
|
@inventoryHash
|
1998
1997
|
end
|
@@ -2009,9 +2008,9 @@ class MiqVimInventory < MiqVimClientBase
|
|
2009
2008
|
# Generate a user event associated with the given managed object.
|
2010
2009
|
#
|
2011
2010
|
def logUserEvent(entity, msg)
|
2012
|
-
|
2011
|
+
logger.info "MiqVimInventory(#{@server}, #{@username}).logUserEvent: calling logUserEvent"
|
2013
2012
|
super(@sic.eventManager, entity, msg)
|
2014
|
-
|
2013
|
+
logger.info "MiqVimInventory(#{@server}, #{@username}).logUserEvent: returned from logUserEvent"
|
2015
2014
|
end
|
2016
2015
|
|
2017
2016
|
##################################
|
@@ -2184,13 +2183,13 @@ class MiqVimInventory < MiqVimClientBase
|
|
2184
2183
|
|
2185
2184
|
def getTaskMor(tmor)
|
2186
2185
|
if tmor.respond_to?(:vimType)
|
2187
|
-
|
2186
|
+
logger.debug "getTaskMor: returning #{tmor}, no search"
|
2188
2187
|
return tmor
|
2189
2188
|
else
|
2190
|
-
|
2189
|
+
logger.debug "getTaskMor: searching for task #{tmor}"
|
2191
2190
|
getTasks.each do |tmo|
|
2192
2191
|
if tmo.to_str == tmor
|
2193
|
-
|
2192
|
+
logger.debug "getTaskMor: returning #{tmo} (#{tmo.vimType})"
|
2194
2193
|
return tmo
|
2195
2194
|
end
|
2196
2195
|
end
|
@@ -2205,7 +2204,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
2205
2204
|
def waitForTask(tmor, className = nil)
|
2206
2205
|
className ||= self.class.to_s
|
2207
2206
|
|
2208
|
-
|
2207
|
+
logger.info "#{className}(#{@server}, #{@username})::waitForTask(#{tmor})"
|
2209
2208
|
args = VimArray.new("ArrayOfPropertyFilterSpec") do |pfsa|
|
2210
2209
|
pfsa << VimHash.new("PropertyFilterSpec") do |pfs|
|
2211
2210
|
pfs.propSet = VimArray.new("ArrayOfPropertySpec") do |psa|
|
@@ -2241,14 +2240,14 @@ class MiqVimInventory < MiqVimClientBase
|
|
2241
2240
|
end
|
2242
2241
|
|
2243
2242
|
raise VimFault.new(error) if state == TaskInfoState::Error
|
2244
|
-
|
2243
|
+
logger.info "#{className}(#{@server}, #{@username})::waitForTask: result = #{result}"
|
2245
2244
|
result
|
2246
2245
|
end # def waitForTask
|
2247
2246
|
|
2248
2247
|
def pollTask(tmor, className = nil)
|
2249
2248
|
className ||= self.class.to_s
|
2250
2249
|
|
2251
|
-
|
2250
|
+
logger.info "#{className}(#{@server}, #{@username})::pollTask(#{tmor})"
|
2252
2251
|
args = VimArray.new("ArrayOfPropertyFilterSpec") do |pfsa|
|
2253
2252
|
pfsa << VimHash.new("PropertyFilterSpec") do |pfs|
|
2254
2253
|
pfs.propSet = VimArray.new("ArrayOfPropertySpec") do |psa|
|
@@ -2324,9 +2323,9 @@ class MiqVimInventory < MiqVimClientBase
|
|
2324
2323
|
end
|
2325
2324
|
end
|
2326
2325
|
|
2327
|
-
|
2326
|
+
logger.info "MiqVimInventory(#{@server}, #{@username}).getMoProp_local: calling retrieveProperties(#{mo.vimType})"
|
2328
2327
|
oca = retrievePropertiesCompat(@propCol, pfSpec)
|
2329
|
-
|
2328
|
+
logger.info "MiqVimInventory(#{@server}, #{@username}).getMoProp_local: return from retrieveProperties(#{mo.vimType})"
|
2330
2329
|
|
2331
2330
|
return nil if !oca || !oca[0] || !oca[0].propSet
|
2332
2331
|
|
@@ -2442,9 +2441,9 @@ class MiqVimInventory < MiqVimClientBase
|
|
2442
2441
|
end
|
2443
2442
|
|
2444
2443
|
def self.setSelector(selSpec)
|
2445
|
-
raise "
|
2444
|
+
raise "MiqVimInventory.setSelector: selSpec must be a hash, received #{selSpec.class}" unless selSpec.kind_of?(Hash)
|
2446
2445
|
selSpec.each_key do |k|
|
2447
|
-
raise "
|
2446
|
+
raise "MiqVimInventory.setSelector: selSpec keys must be symbols, received #{k.class}" unless k.kind_of?(Symbol)
|
2448
2447
|
end
|
2449
2448
|
ov = nil
|
2450
2449
|
selSpec.each_value do |v|
|
@@ -2458,7 +2457,7 @@ class MiqVimInventory < MiqVimClientBase
|
|
2458
2457
|
else
|
2459
2458
|
ov = v unless v.kind_of?(String)
|
2460
2459
|
end
|
2461
|
-
raise "
|
2460
|
+
raise "MiqVimInventory.setSelector: selSpec values must be strings or arrays of strings, received #{ov.class}" unless ov.nil?
|
2462
2461
|
end
|
2463
2462
|
@@selectorHash.merge!(selSpec)
|
2464
2463
|
end
|
@@ -2472,10 +2471,10 @@ class MiqVimInventory < MiqVimClientBase
|
|
2472
2471
|
elsif selName.kind_of?(Array)
|
2473
2472
|
remKeys = selName
|
2474
2473
|
else
|
2475
|
-
raise "
|
2474
|
+
raise "MiqVimInventory.removeSelector: selName must be a symbol, hash or array, received #{selName.class}"
|
2476
2475
|
end
|
2477
2476
|
remKeys.each do |rk|
|
2478
|
-
raise "
|
2477
|
+
raise "MiqVimInventory.removeSelector: keys must be symbols, received #{rk.class}" unless rk.kind_of?(Symbol)
|
2479
2478
|
end
|
2480
2479
|
|
2481
2480
|
remKeys.each do |rk|
|
@@ -1,6 +1,9 @@
|
|
1
1
|
require 'date'
|
2
|
+
require 'VMwareWebService/logging'
|
2
3
|
|
3
4
|
class MiqVimPerfHistory
|
5
|
+
include VMwareWebService::Logging
|
6
|
+
|
4
7
|
attr_reader :invObj
|
5
8
|
|
6
9
|
def initialize(invObj)
|
@@ -95,9 +98,9 @@ class MiqVimPerfHistory
|
|
95
98
|
end
|
96
99
|
|
97
100
|
def queryProviderSummary(mor)
|
98
|
-
|
101
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).queryProviderSummary: calling queryPerfProviderSummary"
|
99
102
|
psum = @invObj.queryPerfProviderSummary(@perfManager, mor)
|
100
|
-
|
103
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).queryProviderSummary: returned from queryPerfProviderSummary"
|
101
104
|
(psum)
|
102
105
|
end
|
103
106
|
|
@@ -108,9 +111,9 @@ class MiqVimPerfHistory
|
|
108
111
|
beginTime = ah[:beginTime] || nil
|
109
112
|
endTime = ah[:endTime] || nil
|
110
113
|
end
|
111
|
-
|
114
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).availMetricsForEntity: calling queryAvailablePerfMetric"
|
112
115
|
pmids = @invObj.queryAvailablePerfMetric(@perfManager, mor, beginTime, endTime, intervalId)
|
113
|
-
|
116
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).availMetricsForEntity: returned from queryAvailablePerfMetric"
|
114
117
|
(pmids)
|
115
118
|
end
|
116
119
|
|
@@ -121,9 +124,9 @@ class MiqVimPerfHistory
|
|
121
124
|
ah[:entity] = entnty
|
122
125
|
pqs = getPerfQuerySpec(ah)
|
123
126
|
|
124
|
-
|
127
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).queryPerf: calling queryPerf"
|
125
128
|
umPem = @invObj.queryPerf(@perfManager, pqs)[0]
|
126
|
-
|
129
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).queryPerf: returned from queryPerf"
|
127
130
|
|
128
131
|
#
|
129
132
|
# Construct an array of (timestamp, value) pairs.
|
@@ -151,9 +154,9 @@ class MiqVimPerfHistory
|
|
151
154
|
aa.each { |ah| pqsa << getPerfQuerySpec(ah) }
|
152
155
|
end
|
153
156
|
|
154
|
-
|
157
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).queryPerfMulti: calling queryPerf"
|
155
158
|
pema = @invObj.queryPerf(@perfManager, querySpec)
|
156
|
-
|
159
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).queryPerfMulti: returned from queryPerf"
|
157
160
|
|
158
161
|
return(nil) unless pema
|
159
162
|
|
@@ -165,9 +168,9 @@ class MiqVimPerfHistory
|
|
165
168
|
ah[:entity] = entnty
|
166
169
|
pqs = getPerfQuerySpec(ah)
|
167
170
|
|
168
|
-
|
171
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).queryPerfComposite: calling queryPerfComposite"
|
169
172
|
umPem = @invObj.queryPerfComposite(@perfManager, pqs)
|
170
|
-
|
173
|
+
logger.info "MiqVimPerfHistory(#{@invObj.server}, #{@invObj.username}).queryPerfComposite: returned from queryPerfComposite"
|
171
174
|
|
172
175
|
umPem['childEntity'] = [umPem['childEntity']] if umPem['childEntity'].kind_of? Hash
|
173
176
|
|