Advertisement
Guest User

Untitled

a guest
Mar 26th, 2014
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.37 KB | None | 0 0
  1. ## test graphite.py
  2. #
  3. # copy/paste of udp.py with just class and log output changed ..
  4. #
  5. #
  6.  
  7. import socket
  8.  
  9. import msgpack
  10. from oslo.config import cfg
  11.  
  12. from ceilometer.openstack.common.gettextutils import _ # noqa
  13. from ceilometer.openstack.common import log
  14. from ceilometer.openstack.common import network_utils
  15. from ceilometer import publisher
  16. from ceilometer.publisher import utils
  17.  
  18. cfg.CONF.import_opt('udp_port', 'ceilometer.collector',
  19. group='collector')
  20.  
  21. LOG = log.getLogger(__name__)
  22.  
  23.  
  24. class GraphitePublisher(publisher.PublisherBase):
  25. def __init__(self, parsed_url):
  26. self.host, self.port = network_utils.parse_host_port(
  27. parsed_url.netloc,
  28. default_port=cfg.CONF.collector.udp_port)
  29. self.socket = socket.socket(socket.AF_INET,
  30. socket.SOCK_DGRAM)
  31.  
  32. def publish_samples(self, context, samples):
  33. """Send a metering message for publishing
  34.  
  35. :param context: Execution context from the service or RPC call
  36. :param samples: Samples from pipeline after transformation
  37. """
  38.  
  39. for sample in samples:
  40. msg = utils.meter_message_from_counter(
  41. sample,
  42. cfg.CONF.publisher.metering_secret)
  43. host = self.host
  44. port = self.port
  45. LOG.debug(_("Publishing sample %(msg)s over Graphite to "
  46. "%(host)s:%(port)d") % {'msg': msg, 'host': host,
  47. 'port': port})
  48. try:
  49. self.socket.sendto(msgpack.dumps(msg),
  50. (self.host, self.port))
  51. except Exception as e:
  52. LOG.warn(_("Unable to send sample to Graphite"))
  53. LOG.exception(e)
  54.  
  55. ############
  56.  
  57.  
  58. [root@had511 ceilometer]# 2014-03-26 14:41:44.406 15020 ERROR stevedore.extension [-] Could not load 'graphite': cannot import name utils
  59. 2014-03-26 14:41:44.407 15020 ERROR stevedore.extension [-] cannot import name utils
  60. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension Traceback (most recent call last):
  61. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/stevedore/extension.py", line 162, in _load_plugins
  62. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension verify_requirements,
  63. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/stevedore/named.py", line 123, in _load_one_plugin
  64. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension verify_requirements,
  65. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/stevedore/extension.py", line 177, in _load_one_plugin
  66. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension plugin = ep.load(require=verify_requirements)
  67. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 1948, in load
  68. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  69. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/ceilometer/publisher/graphite.py", line 30, in <module>
  70. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension from ceilometer.publisher import utils
  71. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension ImportError: cannot import name utils
  72. 2014-03-26 14:41:44.407 15020 TRACE stevedore.extension
  73. 2014-03-26 14:41:44.409 15020 ERROR ceilometer.pipeline [-] Unable to load publisher graphite://localhost:5005
  74. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline Traceback (most recent call last):
  75. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/ceilometer/pipeline.py", line 126, in __init__
  76. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline self.publishers.append(publisher.get_publisher(p))
  77. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/ceilometer/publisher/__init__.py", line 33, in get_publisher
  78. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline loaded_driver = driver.DriverManager(namespace, parse_result.scheme)
  79. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/stevedore/driver.py", line 43, in __init__
  80. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline verify_requirements=verify_requirements,
  81. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/stevedore/named.py", line 56, in __init__
  82. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline self._init_plugins(extensions)
  83. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/stevedore/driver.py", line 91, in _init_plugins
  84. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline (self.namespace, name))
  85. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline RuntimeError: No 'ceilometer.publisher' driver found, looking for 'graphite'
  86. 2014-03-26 14:41:44.409 15020 TRACE ceilometer.pipeline
  87. 2014-03-26 14:41:44.411 15020 ERROR stevedore.extension [-] Could not load 'graphite': cannot import name utils
  88. 2014-03-26 14:41:44.411 15020 ERROR stevedore.extension [-] cannot import name utils
  89. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension Traceback (most recent call last):
  90. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/stevedore/extension.py", line 162, in _load_plugins
  91. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension verify_requirements,
  92. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/stevedore/named.py", line 123, in _load_one_plugin
  93. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension verify_requirements,
  94. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/stevedore/extension.py", line 177, in _load_one_plugin
  95. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension plugin = ep.load(require=verify_requirements)
  96. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 1948, in load
  97. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  98. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension File "/usr/lib/python2.6/site-packages/ceilometer/publisher/graphite.py", line 30, in <module>
  99. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension from ceilometer.publisher import utils
  100. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension ImportError: cannot import name utils
  101. 2014-03-26 14:41:44.411 15020 TRACE stevedore.extension
  102. 2014-03-26 14:41:44.412 15020 ERROR ceilometer.pipeline [-] Unable to load publisher graphite://localhost:5005
  103. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline Traceback (most recent call last):
  104. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/ceilometer/pipeline.py", line 126, in __init__
  105. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline self.publishers.append(publisher.get_publisher(p))
  106. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/ceilometer/publisher/__init__.py", line 33, in get_publisher
  107. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline loaded_driver = driver.DriverManager(namespace, parse_result.scheme)
  108. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/stevedore/driver.py", line 43, in __init__
  109. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline verify_requirements=verify_requirements,
  110. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/stevedore/named.py", line 56, in __init__
  111. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline self._init_plugins(extensions)
  112. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline File "/usr/lib/python2.6/site-packages/stevedore/driver.py", line 91, in _init_plugins
  113. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline (self.namespace, name))
  114. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline RuntimeError: No 'ceilometer.publisher' driver found, looking for 'graphite'
  115. 2014-03-26 14:41:44.412 15020 TRACE ceilometer.pipeline
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement