From 78c3f917aa2f37dea5f27603b46665ef3a8414bb Mon Sep 17 00:00:00 2001 From: Nathan Kamm Date: Fri, 15 Nov 2019 12:20:18 -0800 Subject: [PATCH 1/2] Add .decode(). Fixes #138 --- yahoo_panoptes/plugins/helpers/snmp_connections.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yahoo_panoptes/plugins/helpers/snmp_connections.py b/yahoo_panoptes/plugins/helpers/snmp_connections.py index be7891ec..3996b34f 100644 --- a/yahoo_panoptes/plugins/helpers/snmp_connections.py +++ b/yahoo_panoptes/plugins/helpers/snmp_connections.py @@ -48,7 +48,7 @@ def _decode_value(type, value): if value is None: return None elif type == u'OCTETSTR': - return base64.b64decode(value) + return base64.b64decode(value).decode(u'utf-8') else: return value From c77e665ffbd66072ce60093fecb5f895a28ed9a3 Mon Sep 17 00:00:00 2001 From: Nathan Kamm Date: Fri, 15 Nov 2019 13:04:34 -0800 Subject: [PATCH 2/2] Remove .decode() in the SteamRollerAgent and add it to PanoptesSNMPVariable --- yahoo_panoptes/framework/utilities/snmp/variable.py | 7 ++++++- yahoo_panoptes/plugins/helpers/snmp_connections.py | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/yahoo_panoptes/framework/utilities/snmp/variable.py b/yahoo_panoptes/framework/utilities/snmp/variable.py index 413fe005..d905b4e9 100644 --- a/yahoo_panoptes/framework/utilities/snmp/variable.py +++ b/yahoo_panoptes/framework/utilities/snmp/variable.py @@ -22,7 +22,12 @@ def __init__(self, queried_oid, oid, index, value, snmp_type): self._snmp_type = snmp_type def __repr__(self): - printable_value = strip_non_printable(self._value) + + if hasattr(self.value, u'decode'): + printable_value = self.value.decode(u'ascii', u'backslashreplace') + else: + printable_value = self.value + return ( u"<{0} value={1} (oid={2}, index={3}, snmp_type={4})>".format( self.__class__.__name__, diff --git a/yahoo_panoptes/plugins/helpers/snmp_connections.py b/yahoo_panoptes/plugins/helpers/snmp_connections.py index 3996b34f..be7891ec 100644 --- a/yahoo_panoptes/plugins/helpers/snmp_connections.py +++ b/yahoo_panoptes/plugins/helpers/snmp_connections.py @@ -48,7 +48,7 @@ def _decode_value(type, value): if value is None: return None elif type == u'OCTETSTR': - return base64.b64decode(value).decode(u'utf-8') + return base64.b64decode(value) else: return value