Some FC-HBA cards are missing the /sys/class/fc_host//statistics/* directory and files, for example, the Huawei Technologies Co., Ltd. Hi1822 Family (2*16G FC) (rev 45) card with ID 3e:00.0. However, there are corresponding port_name, port_state, etc., under /sys/class/fc_host//. It is recommended to add a check in the parseFibreChannelStatistics function in the class_fibrechannel.go file:
if _, err := os.Stat(path); os.IsNotExist(err) { fmt.Printf("Directory %s does not exist, skipping.\n", path) return &counters, nil // return counters and nil }