mirror of
				https://github.com/KevinMidboe/mktxp-no-cli.git
				synced 2025-10-29 17:50:23 +00:00 
			
		
		
		
	Merge pull request #16 from mikalstill/add-sfp-temperature
Add monitoring of SFP temperatures.
This commit is contained in:
		| @@ -25,7 +25,7 @@ class MonitorCollector(BaseCollector): | |||||||
|         if not router_entry.config_entry.monitor: |         if not router_entry.config_entry.monitor: | ||||||
|             return |             return | ||||||
|  |  | ||||||
|         monitor_labels = ['status', 'rate', 'full_duplex', 'name'] |         monitor_labels = ['status', 'rate', 'full_duplex', 'name', 'sfp_temperature'] | ||||||
|         monitor_records = InterfaceMonitorMetricsDataSource.metric_records(router_entry, metric_labels = monitor_labels, include_comments = True)    |         monitor_records = InterfaceMonitorMetricsDataSource.metric_records(router_entry, metric_labels = monitor_labels, include_comments = True)    | ||||||
|         if monitor_records: |         if monitor_records: | ||||||
|             # translate records to appropriate values |             # translate records to appropriate values | ||||||
| @@ -47,6 +47,9 @@ class MonitorCollector(BaseCollector): | |||||||
|             monitor_rates_metrics = BaseCollector.gauge_collector('interface_full_duplex', 'Full duplex data transmission', full_duplex_records, 'full_duplex', ['name']) |             monitor_rates_metrics = BaseCollector.gauge_collector('interface_full_duplex', 'Full duplex data transmission', full_duplex_records, 'full_duplex', ['name']) | ||||||
|             yield monitor_rates_metrics |             yield monitor_rates_metrics | ||||||
|  |  | ||||||
|  |             sfp_temperature_metrics = BaseCollector.gauge_collector('interface_sfp_temperature', 'Current SFP temperature', monitor_records, 'sfp_temperature', ['name']) | ||||||
|  |             yield sfp_temperature_metrics | ||||||
|  |  | ||||||
|     # Helpers |     # Helpers | ||||||
|     @staticmethod |     @staticmethod | ||||||
|     def _translated_values(monitor_label, value): |     def _translated_values(monitor_label, value): | ||||||
| @@ -54,7 +57,8 @@ class MonitorCollector(BaseCollector): | |||||||
|                 'status': lambda value: '1' if value=='link-ok' else '0', |                 'status': lambda value: '1' if value=='link-ok' else '0', | ||||||
|                 'rate': lambda value: MonitorCollector._rates(value), |                 'rate': lambda value: MonitorCollector._rates(value), | ||||||
|                 'full_duplex': lambda value: '1' if value=='true' else '0', |                 'full_duplex': lambda value: '1' if value=='true' else '0', | ||||||
|                 'name': lambda value: value |                 'name': lambda value: value, | ||||||
|  |                 'sfp_temperature': lambda value: value | ||||||
|                 }[monitor_label](value) |                 }[monitor_label](value) | ||||||
|  |  | ||||||
|     @staticmethod |     @staticmethod | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user