summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChenZheng <czheng@cn.ibm.com>2013-11-21 16:22:14 +0800
committerChenZheng <czheng@cn.ibm.com>2013-11-28 16:43:01 +0800
commit0259cd1079f06510ac10ff91346c9bc7ff67268c (patch)
tree7908961c0d76b3343e0f4b3f3291bcab41ce96ec
parent2950b30089ab7f38b70a9dd6b40cf0823d4ade3a (diff)
downloadpython-ceilometerclient-0259cd1079f06510ac10ff91346c9bc7ff67268c.tar.gz
Encode exception on ceilometer-client for UnicodeDecodeError
Current ceilometer client did not handle output exception which is encoded, this patch implements the shell encoding for exception output. Change-Id: I3cddb277868e39765eccd68dc256f07e15a4207b
-rw-r--r--ceilometerclient/shell.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/ceilometerclient/shell.py b/ceilometerclient/shell.py
index ec966c5..fbb8fd7 100644
--- a/ceilometerclient/shell.py
+++ b/ceilometerclient/shell.py
@@ -14,15 +14,20 @@
Command-line interface to the OpenStack Metering API.
"""
+from __future__ import print_function
+
import argparse
import httplib2
import logging
import sys
+import six
+
import ceilometerclient
from ceilometerclient import client as ceiloclient
from ceilometerclient.common import utils
from ceilometerclient import exc
+from ceilometerclient.openstack.common import strutils
class CeilometerShell(object):
@@ -291,7 +296,7 @@ def main():
CeilometerShell().main(sys.argv[1:])
except Exception as e:
- print >> sys.stderr, e
+ print(strutils.safe_encode(six.text_type(e)), file=sys.stderr)
sys.exit(1)
if __name__ == "__main__":