@@ -2013,12 +2013,13 @@ def update_log_level(self):
20132013
20142014
20152015class DaemonXcvrd (daemon_base .DaemonBase ):
2016- def __init__ (self , log_identifier , skip_cmis_mgr = False , enable_sff_mgr = False ):
2016+ def __init__ (self , log_identifier , skip_cmis_mgr = False , enable_sff_mgr = False , dom_temperature_poll_interval = None ):
20172017 super (DaemonXcvrd , self ).__init__ (log_identifier , enable_runtime_log_config = True )
20182018 self .stop_event = threading .Event ()
20192019 self .sfp_error_event = threading .Event ()
20202020 self .skip_cmis_mgr = skip_cmis_mgr
20212021 self .enable_sff_mgr = enable_sff_mgr
2022+ self .dom_temperature_poll_interval = dom_temperature_poll_interval
20222023 self .namespaces = ['' ]
20232024 self .threads = []
20242025 self .sfp_obj_dict = {}
@@ -2295,9 +2296,12 @@ def run(self):
22952296 self .threads .append (dom_info_update )
22962297
22972298 # Start the dom thermal sensor info update thread
2298- dom_thermal_info_update = DomThermalInfoUpdateTask (self .namespaces , port_mapping_data , self .sfp_obj_dict , self .stop_event )
2299- dom_thermal_info_update .start ()
2300- self .threads .append (dom_thermal_info_update )
2299+ dom_thermal_info_update = None
2300+ if self .dom_temperature_poll_interval is not None :
2301+ dom_thermal_info_update = DomThermalInfoUpdateTask (self .namespaces , port_mapping_data , self .sfp_obj_dict , self .stop_event ,
2302+ self .dom_temperature_poll_interval )
2303+ dom_thermal_info_update .start ()
2304+ self .threads .append (dom_thermal_info_update )
23012305
23022306 # Start the sfp state info update thread
23032307 sfp_state_update = SfpStateUpdateTask (self .namespaces , port_mapping_data , self .sfp_obj_dict , self .stop_event , self .sfp_error_event )
@@ -2342,8 +2346,9 @@ def run(self):
23422346 dom_info_update .join ()
23432347
23442348 # Stop the dom thermal sensor info update thread
2345- if dom_thermal_info_update .is_alive ():
2346- dom_thermal_info_update .join ()
2349+ if dom_thermal_info_update is not None :
2350+ if dom_thermal_info_update .is_alive ():
2351+ dom_thermal_info_update .join ()
23472352
23482353 # Stop the sfp state info update thread
23492354 if sfp_state_update .is_alive ():
@@ -2370,9 +2375,11 @@ def main():
23702375 parser = argparse .ArgumentParser ()
23712376 parser .add_argument ('--skip_cmis_mgr' , action = 'store_true' )
23722377 parser .add_argument ('--enable_sff_mgr' , action = 'store_true' )
2378+ parser .add_argument ('--dom_temperature_poll_interval' , default = None , type = int )
23732379
23742380 args = parser .parse_args ()
2375- xcvrd = DaemonXcvrd (SYSLOG_IDENTIFIER , args .skip_cmis_mgr , args .enable_sff_mgr )
2381+ xcvrd = DaemonXcvrd (SYSLOG_IDENTIFIER , args .skip_cmis_mgr , args .enable_sff_mgr ,
2382+ args .dom_temperature_poll_interval )
23762383 xcvrd .run ()
23772384
23782385
0 commit comments