@@ -1619,7 +1619,7 @@ protected void runInContext() {
1619
1619
}
1620
1620
1621
1621
private SetMonitorServiceCommand createMonitorServiceCommand (DomainRouterVO router , List <MonitorServiceTO > services ,
1622
- boolean reconfigure , boolean deleteFromProcessedCache ) {
1622
+ boolean reconfigure , boolean deleteFromProcessedCache , Map < String , String > routerHealthCheckConfig ) {
1623
1623
final SetMonitorServiceCommand command = new SetMonitorServiceCommand (services );
1624
1624
command .setAccessDetail (NetworkElementCommand .ROUTER_IP , _routerControlHelper .getRouterControlIp (router .getId ()));
1625
1625
command .setAccessDetail (NetworkElementCommand .ROUTER_NAME , router .getInstanceName ());
@@ -1637,7 +1637,7 @@ private SetMonitorServiceCommand createMonitorServiceCommand(DomainRouterVO rout
1637
1637
}
1638
1638
1639
1639
command .setAccessDetail (SetMonitorServiceCommand .ROUTER_HEALTH_CHECKS_EXCLUDED , excludedTests );
1640
- command .setHealthChecksConfig (getRouterHealthChecksConfig ( router ) );
1640
+ command .setHealthChecksConfig (routerHealthCheckConfig );
1641
1641
command .setReconfigureAfterUpdate (reconfigure );
1642
1642
command .setDeleteFromProcessedCache (deleteFromProcessedCache ); // As part of updating
1643
1643
return command ;
@@ -1662,7 +1662,7 @@ private boolean updateRouterHealthChecksConfig(DomainRouterVO router) {
1662
1662
s_logger .info ("Updating data for router health checks for router " + router .getUuid ());
1663
1663
Answer origAnswer = null ;
1664
1664
try {
1665
- SetMonitorServiceCommand command = createMonitorServiceCommand (router , null , true , true );
1665
+ SetMonitorServiceCommand command = createMonitorServiceCommand (router , null , true , true , getRouterHealthChecksConfig ( router ) );
1666
1666
origAnswer = _agentMgr .easySend (router .getHostId (), command );
1667
1667
} catch (final Exception e ) {
1668
1668
s_logger .error ("Error while sending update data for health check to router: " + router .getInstanceName (), e );
@@ -1777,7 +1777,7 @@ private void updateWithLbRules(final DomainRouterJoinVO routerJoinVO, final Stri
1777
1777
}
1778
1778
}
1779
1779
1780
- private Map <String , String > getRouterHealthChecksConfig (final DomainRouterVO router ) {
1780
+ protected Map <String , String > getRouterHealthChecksConfig (final DomainRouterVO router ) {
1781
1781
Map <String , String > data = new HashMap <>();
1782
1782
List <DomainRouterJoinVO > routerJoinVOs = domainRouterJoinDao .searchByIds (router .getId ());
1783
1783
StringBuilder vmsData = new StringBuilder ();
@@ -2342,6 +2342,7 @@ public boolean finalizeCommandsOnStart(final Commands cmds, final VirtualMachine
2342
2342
final Provider provider = getVrProvider (router );
2343
2343
2344
2344
final List <Long > routerGuestNtwkIds = _routerDao .getRouterNetworks (router .getId ());
2345
+ Map <String , String > routerHealthChecksConfig = getRouterHealthChecksConfig (router );
2345
2346
for (final Long guestNetworkId : routerGuestNtwkIds ) {
2346
2347
final AggregationControlCommand startCmd = new AggregationControlCommand (Action .Start , router .getInstanceName (), controlNic .getIPv4Address (), _routerControlHelper .getRouterIpInNetwork (
2347
2348
guestNetworkId , router .getId ()));
@@ -2350,7 +2351,7 @@ public boolean finalizeCommandsOnStart(final Commands cmds, final VirtualMachine
2350
2351
if (reprogramGuestNtwks ) {
2351
2352
finalizeIpAssocForNetwork (cmds , router , provider , guestNetworkId , null );
2352
2353
finalizeNetworkRulesForNetwork (cmds , router , provider , guestNetworkId );
2353
- finalizeMonitorService (cmds , profile , router , provider , guestNetworkId , true );
2354
+ finalizeMonitorService (cmds , profile , router , provider , guestNetworkId , true , routerHealthChecksConfig );
2354
2355
}
2355
2356
2356
2357
finalizeUserDataAndDhcpOnStart (cmds , router , provider , guestNetworkId );
@@ -2364,7 +2365,7 @@ public boolean finalizeCommandsOnStart(final Commands cmds, final VirtualMachine
2364
2365
}
2365
2366
2366
2367
protected void finalizeMonitorService (final Commands cmds , final VirtualMachineProfile profile , final DomainRouterVO router , final Provider provider ,
2367
- final long networkId , boolean onStart ) {
2368
+ final long networkId , boolean onStart , Map < String , String > routerHealthCheckConfig ) {
2368
2369
final NetworkOffering offering = _networkOfferingDao .findById (_networkDao .findById (networkId ).getNetworkOfferingId ());
2369
2370
if (offering .isRedundantRouter ()) {
2370
2371
// service monitoring is currently not added in RVR
@@ -2414,7 +2415,7 @@ protected void finalizeMonitorService(final Commands cmds, final VirtualMachineP
2414
2415
}
2415
2416
2416
2417
// As part of aggregate command we don't need to reconfigure if onStart and persist in processed cache. Subsequent updates are not needed.
2417
- SetMonitorServiceCommand command = createMonitorServiceCommand (router , servicesTO , !onStart , false );
2418
+ SetMonitorServiceCommand command = createMonitorServiceCommand (router , servicesTO , !onStart , false , routerHealthCheckConfig );
2418
2419
command .setAccessDetail (NetworkElementCommand .ROUTER_GUEST_IP , _routerControlHelper .getRouterIpInNetwork (networkId , router .getId ()));
2419
2420
if (!isMonitoringServicesEnabled ) {
2420
2421
command .setAccessDetail (SetMonitorServiceCommand .ROUTER_MONITORING_ENABLED , isMonitoringServicesEnabled .toString ());
0 commit comments