Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix read fan_fault=1 and send log when fan insert sometimes #4106

Open
wants to merge 24 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
e0870a7
Add support as9716 platform
jostar-yang Jun 12, 2019
b580e8a
Merge branch 'master' of https://github.com/jostar-yang/sonic-buildimage
jostar-yang Jun 12, 2019
7973485
remove as9716
jostar-yang Jun 12, 2019
78f4fc3
remove as9716 needed mk
jostar-yang Jun 12, 2019
8a6c679
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Jun 17, 2019
f7826e3
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Jun 20, 2019
94006a5
Add to support as9716 platform
jostar-yang Jul 17, 2019
a893a68
Add support build as9716 platform to mk file
jostar-yang Jul 17, 2019
4c21d0a
Add support AS5835_54T platform
jostar-yang Jul 17, 2019
f3220df
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Jul 19, 2019
2e2b8ac
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Aug 5, 2019
c517556
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Sep 5, 2019
5ded80f
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Sep 11, 2019
e9aba06
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Sep 25, 2019
c148f54
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Oct 25, 2019
fa793e0
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Jan 6, 2020
48a537c
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Jan 7, 2020
531f583
Merge branch 'master' of https://github.com/Azure/sonic-buildimage
jostar-yang Mar 5, 2020
9002b0f
Merge remote-tracking branch 'upstream/master'
Apr 8, 2021
9da12fb
Fix control file fail issue
Apr 9, 2021
8fe11e3
Fix file conflict
Apr 9, 2021
dd1644b
Remove extra 'import'
Apr 9, 2021
e6686d0
Fix read fan_fault=1 and send log when fan insert sometimes
Feb 4, 2020
8aab841
Merge branch 'master' into 20200204_fan_fault
jostar-yang Dec 8, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
# HISTORY:
# mm/dd/yyyy (A.D.)
# 5/15/2019: Jostar create for as4630-54pe
# 9/25/2019: Jostar fix that get fan_fault=1 when fan_insert and read cpld
# ------------------------------------------------------------------

try:
Expand Down Expand Up @@ -101,13 +102,9 @@ def __init__(self, log_file, log_level):
logging.getLogger('').addHandler(console)

sys_handler = logging.handlers.SysLogHandler(address = '/dev/log')
#sys_handler.setLevel(logging.WARNING)
sys_handler.setLevel(logging.INFO)
logging.getLogger('').addHandler(sys_handler)


#logging.debug('SET. logfile:%s / loglevel:%d', log_file, log_level)

def manage_fan(self):

FAN_STATE_REMOVE = 0
Expand Down Expand Up @@ -137,6 +134,7 @@ def manage_fan(self):
if fan_state[idx]!=0:
fan_state[idx]=FAN_STATE_REMOVE
logging.warning("Alarm for FAN-%d absent is detected", idx+1)
fan_status_state[idx]=FAN_STATUS_NORMAL

for idx in range (0, self.fan_num):
node = self.fan_path + self.fault[idx]
Expand All @@ -147,13 +145,15 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_status_state[idx]!=FAN_STATUS_FAULT:
if fan_state[idx] == FAN_STATE_INSERT:
logging.warning("Alarm for FAN-%d failed is detected", idx+1);
fan_status_state[idx]=FAN_STATUS_FAULT
else:
if fan_status_state[idx]==FAN_STATUS_FAULT and fan_state[idx] == FAN_STATE_INSERT:
logging.info("FAN-%d becomes operational", idx+1)

fan_status_state[idx]=FAN_STATUS_NORMAL

return True
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
# HISTORY:
# mm/dd/yyyy (A.D.)
# 5/27/2019: Brandon_Chuang create
# 9/25/2019: Jostar fix that get fan_fault=1 when fan_insert and read cpld
# ------------------------------------------------------------------

try:
Expand Down Expand Up @@ -66,9 +67,6 @@ def match(self, *args):
# Make a class we can use to capture stdout and sterr in the log
class device_monitor(object):

#/sys/bus/i2c/devices/3-0063
#fan1_present, fan5_present

def __init__(self, log_file, log_level):

self.fan_num = 5
Expand Down Expand Up @@ -109,13 +107,9 @@ def __init__(self, log_file, log_level):
logging.getLogger('').addHandler(console)

sys_handler = logging.handlers.SysLogHandler(address = '/dev/log')
#sys_handler.setLevel(logging.WARNING)
sys_handler.setLevel(logging.INFO)
logging.getLogger('').addHandler(sys_handler)


#logging.debug('SET. logfile:%s / loglevel:%d', log_file, log_level)

def manage_fan(self):

FAN_STATE_REMOVE = 0
Expand All @@ -136,7 +130,6 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_state[idx]!=1:
fan_state[idx]=FAN_STATE_INSERT
Expand All @@ -145,6 +138,7 @@ def manage_fan(self):
if fan_state[idx]!=0:
fan_state[idx]=FAN_STATE_REMOVE
logging.warning("Alarm for FAN-%d absent is detected", idx+1)
fan_status_state[idx]=FAN_STATUS_NORMAL

for idx in range (0, self.fan_num):
node = self.fan_path + self.fault[idx]
Expand All @@ -155,13 +149,15 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_status_state[idx]!=FAN_STATUS_FAULT:
if fan_state[idx] == FAN_STATE_INSERT:
logging.warning("Alarm for FAN-%d failed is detected", idx+1);
fan_status_state[idx]=FAN_STATUS_FAULT
else:
if fan_status_state[idx]==FAN_STATUS_FAULT and fan_state[idx] == FAN_STATE_INSERT:
logging.info("FAN-%d becomes operational", idx+1)

fan_status_state[idx]=FAN_STATUS_NORMAL

return True
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
# HISTORY:
# mm/dd/yyyy (A.D.)
# 5/27/2019: Brandon_Chuang create
# 9/25/2019: Jostar fix that get fan_fault=1 when fan_insert and read cpld
# ------------------------------------------------------------------

try:
Expand Down Expand Up @@ -66,9 +67,6 @@ def match(self, *args):
# Make a class we can use to capture stdout and sterr in the log
class device_monitor(object):

#/sys/bus/i2c/devices/3-0063
#fan1_present, fan5_present

def __init__(self, log_file, log_level):

self.fan_num = 5
Expand Down Expand Up @@ -109,13 +107,9 @@ def __init__(self, log_file, log_level):
logging.getLogger('').addHandler(console)

sys_handler = logging.handlers.SysLogHandler(address = '/dev/log')
#sys_handler.setLevel(logging.WARNING)
sys_handler.setLevel(logging.INFO)
logging.getLogger('').addHandler(sys_handler)


#logging.debug('SET. logfile:%s / loglevel:%d', log_file, log_level)

def manage_fan(self):

FAN_STATE_REMOVE = 0
Expand All @@ -136,7 +130,6 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_state[idx]!=1:
fan_state[idx]=FAN_STATE_INSERT
Expand All @@ -145,6 +138,7 @@ def manage_fan(self):
if fan_state[idx]!=0:
fan_state[idx]=FAN_STATE_REMOVE
logging.warning("Alarm for FAN-%d absent is detected", idx+1)
fan_status_state[idx]=FAN_STATUS_NORMAL

for idx in range (0, self.fan_num):
node = self.fan_path + self.fault[idx]
Expand All @@ -155,13 +149,15 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_status_state[idx]!=FAN_STATUS_FAULT:
if fan_state[idx] == FAN_STATE_INSERT:
logging.warning("Alarm for FAN-%d failed is detected", idx+1);
fan_status_state[idx]=FAN_STATUS_FAULT
else:
if fan_status_state[idx]==FAN_STATUS_FAULT and fan_state[idx] == FAN_STATE_INSERT:
logging.info("FAN-%d becomes operational", idx+1)

fan_status_state[idx]=FAN_STATUS_NORMAL

return True
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
# HISTORY:
# mm/dd/yyyy (A.D.)
# 7/2/2018: Jostar create for as7326-56x
# 9/25/2019: Jostar fix that get fan_fault=1 when fan_insert and read cpld
# ------------------------------------------------------------------

try:
Expand Down Expand Up @@ -65,9 +66,6 @@ def match(self, *args):
# Make a class we can use to capture stdout and sterr in the log
class device_monitor(object):

#/sys/bus/i2c/devices/11-0066
#fan1_present, fan6_present

def __init__(self, log_file, log_level):

self.fan_num = 6
Expand Down Expand Up @@ -110,13 +108,9 @@ def __init__(self, log_file, log_level):
logging.getLogger('').addHandler(console)

sys_handler = logging.handlers.SysLogHandler(address = '/dev/log')
#sys_handler.setLevel(logging.WARNING)
sys_handler.setLevel(logging.INFO)
logging.getLogger('').addHandler(sys_handler)


#logging.debug('SET. logfile:%s / loglevel:%d', log_file, log_level)

def manage_fan(self):

FAN_STATE_REMOVE = 0
Expand All @@ -137,7 +131,6 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_state[idx]!=1:
fan_state[idx]=FAN_STATE_INSERT
Expand All @@ -146,6 +139,7 @@ def manage_fan(self):
if fan_state[idx]!=0:
fan_state[idx]=FAN_STATE_REMOVE
logging.warning("Alarm for FAN-%d absent is detected", idx+1)
fan_status_state[idx]=FAN_STATUS_NORMAL

for idx in range (0, self.fan_num):
node = self.fan_path + self.fault[idx]
Expand All @@ -156,13 +150,15 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_status_state[idx]!=FAN_STATUS_FAULT:
if fan_state[idx] == FAN_STATE_INSERT:
logging.warning("Alarm for FAN-%d failed is detected", idx+1);
fan_status_state[idx]=FAN_STATUS_FAULT
else:
if fan_status_state[idx]==FAN_STATUS_FAULT and fan_state[idx] == FAN_STATE_INSERT:
logging.info("FAN-%d becomes operational", idx+1)

fan_status_state[idx]=FAN_STATUS_NORMAL

return True
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@
# ------------------------------------------------------------------
# HISTORY:
# mm/dd/yyyy (A.D.)
# 7/2/2018: Jostar create for as7326-56x
# 7/2/2018: Jostar create for as7726-32x
# 9/25/2019: Jostar fix that get fan_fault=1 when fan_insert and read cpld
# ------------------------------------------------------------------

try:
Expand Down Expand Up @@ -107,13 +108,9 @@ def __init__(self, log_file, log_level):
logging.getLogger('').addHandler(console)

sys_handler = logging.handlers.SysLogHandler(address = '/dev/log')
#sys_handler.setLevel(logging.WARNING)
sys_handler.setLevel(logging.INFO)
logging.getLogger('').addHandler(sys_handler)


#logging.debug('SET. logfile:%s / loglevel:%d', log_file, log_level)

def manage_fan(self):

FAN_STATE_REMOVE = 0
Expand All @@ -134,7 +131,6 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_state[idx]!=1:
fan_state[idx]=FAN_STATE_INSERT
Expand All @@ -143,6 +139,7 @@ def manage_fan(self):
if fan_state[idx]!=0:
fan_state[idx]=FAN_STATE_REMOVE
logging.warning("Alarm for FAN-%d absent is detected", idx+1)
fan_status_state[idx]=FAN_STATUS_NORMAL

for idx in range (0, self.fan_num):
node = self.fan_path + self.fault[idx]
Expand All @@ -153,13 +150,15 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_status_state[idx]!=FAN_STATUS_FAULT:
if fan_state[idx] == FAN_STATE_INSERT:
logging.warning("Alarm for FAN-%d failed is detected", idx+1);
fan_status_state[idx]=FAN_STATUS_FAULT
else:
if fan_status_state[idx]==FAN_STATUS_FAULT and fan_state[idx] == FAN_STATE_INSERT:
logging.info("FAN-%d becomes operational", idx+1)

fan_status_state[idx]=FAN_STATUS_NORMAL

return True
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
# HISTORY:
# mm/dd/yyyy (A.D.)
# 12/13/2018: Jostar create for as9716-32d
# 9/25/2019: Jostar fix that get fan_fault=1 when fan_insert and read cpld
# ------------------------------------------------------------------

try:
Expand Down Expand Up @@ -107,13 +108,9 @@ def __init__(self, log_file, log_level):
logging.getLogger('').addHandler(console)

sys_handler = logging.handlers.SysLogHandler(address = '/dev/log')
#sys_handler.setLevel(logging.WARNING)
sys_handler.setLevel(logging.INFO)
logging.getLogger('').addHandler(sys_handler)


#logging.debug('SET. logfile:%s / loglevel:%d', log_file, log_level)

def manage_fan(self):

FAN_STATE_REMOVE = 0
Expand All @@ -134,7 +131,6 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_state[idx]!=1:
fan_state[idx]=FAN_STATE_INSERT
Expand All @@ -143,6 +139,7 @@ def manage_fan(self):
if fan_state[idx]!=0:
fan_state[idx]=FAN_STATE_REMOVE
logging.warning("Alarm for FAN-%d absent is detected", idx+1)
fan_status_state[idx]=FAN_STATUS_NORMAL

for idx in range (0, self.fan_num):
node = self.fan_path + self.fault[idx]
Expand All @@ -153,13 +150,15 @@ def manage_fan(self):
return False
content = val_file.readline().rstrip()
val_file.close()
# content is a string, either "0" or "1"
if content == "1":
if fan_status_state[idx]!=FAN_STATUS_FAULT:
if fan_state[idx] == FAN_STATE_INSERT:
logging.warning("Alarm for FAN-%d failed is detected", idx+1);
fan_status_state[idx]=FAN_STATUS_FAULT
else:
if fan_status_state[idx]==FAN_STATUS_FAULT and fan_state[idx] == FAN_STATE_INSERT:
logging.info("FAN-%d becomes operational", idx+1)

fan_status_state[idx]=FAN_STATUS_NORMAL

return True
Expand Down