@@ -47,7 +47,7 @@ def __init__(self, args, operating_system):
47
47
self ._wake_interval = (self .config .application .get ('wake_interval' ) or
48
48
self .config .application .get ('poll_interval' ) or
49
49
self .WAKE_INTERVAL )
50
- self .next_wake_interval = self ._wake_interval
50
+ self .next_wake_interval = int ( self ._wake_interval )
51
51
self .publish_queue = queue .Queue ()
52
52
self .threads = list ()
53
53
info = tuple ([__version__ ] + list (self .system_platform ))
@@ -103,7 +103,7 @@ def poll_plugin(self, plugin_name, plugin, config):
103
103
'name' : plugin_name ,
104
104
'plugin' : plugin ,
105
105
'poll_interval' :
106
- self .wake_interval })
106
+ int ( self ._wake_interval ) })
107
107
thread .run ()
108
108
self .threads .append (thread )
109
109
@@ -115,17 +115,20 @@ def process(self):
115
115
"""
116
116
start_time = time .time ()
117
117
self .start_plugin_polling ()
118
+
119
+ # Sleep for a second while threads are running
118
120
while self .threads_running :
119
- self ._sleep ()
121
+ time .sleep (1 )
122
+
120
123
self .threads = list ()
121
124
self .send_data_to_newrelic ()
122
125
duration = time .time () - start_time
123
126
self .next_wake_interval = self ._wake_interval - duration
124
- if self .next_wake_interval < 0 :
127
+ if self .next_wake_interval < 1 :
125
128
LOGGER .warning ('Poll interval took greater than %i seconds' ,
126
129
duration )
127
- self .next_wake_interval = self ._wake_interval
128
- LOGGER .info ('All stats processed in %.2f seconds, next wake in %.2f ' ,
130
+ self .next_wake_interval = int ( self ._wake_interval )
131
+ LOGGER .info ('Stats processed in %.2f seconds, next wake in %i seconds ' ,
129
132
duration , self .next_wake_interval )
130
133
131
134
def process_min_max_values (self , component ):
@@ -229,7 +232,8 @@ def send_components(self, components, metrics):
229
232
except requests .ConnectionError as error :
230
233
LOGGER .error ('Error reporting stats: %s' , error )
231
234
232
- def _get_plugin (self , plugin_path ):
235
+ @staticmethod
236
+ def _get_plugin (plugin_path ):
233
237
"""Given a qualified class name (eg. foo.bar.Foo), return the class
234
238
235
239
:rtype: object
0 commit comments