@@ -86,9 +86,9 @@ def self.invoke(obj, aem, args)
86
86
end
87
87
88
88
if obj . workspace . readonly?
89
- $miq_ae_logger . info ( "Workspace Instantiation is READONLY -- skipping method [#{ aem . fqname } ] with inputs [#{ inputs . inspect } ]" , :resource_id => miq_request_id )
89
+ obj . workspace . logger . info ( "Workspace Instantiation is READONLY -- skipping method [#{ aem . fqname } ] with inputs [#{ inputs . inspect } ]" )
90
90
elsif %w[ inline builtin uri expression playbook ansible_job_template ansible_workflow_template ] . include? ( aem . location . downcase . strip )
91
- $miq_ae_logger . info ( "Invoking [#{ aem . location } ] method [#{ aem . fqname } ] with inputs [#{ inputs . inspect } ]" , :resource_id => miq_request_id )
91
+ obj . workspace . logger . info ( "Invoking [#{ aem . location } ] method [#{ aem . fqname } ] with inputs [#{ inputs . inspect } ]" )
92
92
return MiqAeEngine ::MiqAeMethod . send ( "invoke_#{ aem . location . downcase . strip } " , aem , obj , inputs )
93
93
end
94
94
@@ -101,7 +101,7 @@ def self.invoke_external(cmd, workspace, serialize_workspace = false)
101
101
102
102
if serialize_workspace
103
103
ws , = Benchmark . realtime_block ( :method_invoke_external_ws_create_time ) { MiqAeWorkspace . create ( :workspace => workspace ) }
104
- $miq_ae_logger . debug ( "Invoking External Method with MIQ_TOKEN=#{ ws . guid } and command=#{ cmd } " , :resource_id => miq_request_id )
104
+ workspace . logger . debug ( "Invoking External Method with MIQ_TOKEN=#{ ws . guid } and command=#{ cmd } " )
105
105
end
106
106
107
107
# Release connection to thread that will be used by method process. It will return it when it is done
@@ -168,11 +168,13 @@ def self.with_automation_env
168
168
private_class_method :with_automation_env
169
169
170
170
def self . process_ruby_method_results ( return_code , msg , miq_request_id )
171
+ logger = ManageIQ ::AutomationEngine ::Logger . create_log_wrapper ( :resource_id => miq_request_id )
172
+
171
173
case return_code
172
174
when MIQ_OK
173
- $miq_ae_logger . info ( msg , :resource_id => miq_request_id )
175
+ logger . info ( msg )
174
176
when MIQ_WARN
175
- $miq_ae_logger . warn ( msg , :resource_id => miq_request_id )
177
+ logger . warn ( msg )
176
178
when MIQ_STOP
177
179
raise MiqAeException ::StopInstantiation , msg
178
180
when MIQ_ABORT
@@ -199,9 +201,9 @@ def self.invoke_inline_ruby(aem, obj, inputs)
199
201
obj . workspace . invoker ||= MiqAeEngine ::DrbRemoteInvoker . new ( obj . workspace )
200
202
bodies , script_info = bodies_and_line_numbers ( obj , aem )
201
203
obj . workspace . invoker . with_server ( inputs , bodies , aem . fqname , script_info ) do |code |
202
- $miq_ae_logger . info ( "<AEMethod [#{ aem . fqname } ]> Starting " , :resource_id => miq_request_id )
204
+ obj . workspace . logger . info ( "<AEMethod [#{ aem . fqname } ]> Starting " )
203
205
rc , msg = run_ruby_method ( code , miq_request_id )
204
- $miq_ae_logger . info ( "<AEMethod [#{ aem . fqname } ]> Ending" , :resource_id => miq_request_id )
206
+ obj . workspace . logger . info ( "<AEMethod [#{ aem . fqname } ]> Ending" )
205
207
process_ruby_method_results ( rc , msg , miq_request_id )
206
208
end
207
209
end
@@ -219,13 +221,15 @@ def self.run_method(cmd, miq_request_id)
219
221
yield stdin if block_given?
220
222
stdin . close
221
223
threads << Thread . new do
224
+ logger = ManageIQ ::AutomationEngine ::Logger . create_log_wrapper ( :resource_id => miq_request_id )
222
225
stdout . each_line do |msg |
223
- $miq_ae_logger . info ( "Method STDOUT: #{ msg . strip } " , :resource_id => miq_request_id )
226
+ logger . info ( "Method STDOUT: #{ msg . strip } " )
224
227
end
225
228
end
226
229
threads << Thread . new do
230
+ logger = ManageIQ ::AutomationEngine ::Logger . create_log_wrapper ( :resource_id => miq_request_id )
227
231
stderr . each_line do |msg |
228
- $miq_ae_logger . error ( "Method STDERR: #{ msg . strip } " , :resource_id => miq_request_id )
232
+ logger . error ( "Method STDERR: #{ msg . strip } " )
229
233
end
230
234
end
231
235
threads . each ( &:join )
@@ -237,7 +241,8 @@ def self.run_method(cmd, miq_request_id)
237
241
threads = [ ]
238
242
rescue StandardError => err
239
243
STDERR . puts "** AUTOMATE ** Method exec failed because #{ err . class } :#{ err . message } " if ENV . key? ( "CI" ) # rubocop:disable Style/StderrPuts
240
- $miq_ae_logger. error ( "Method exec failed because (#{ err . class } :#{ err . message } )" , :resource_id => miq_request_id )
244
+ logger = ManageIQ ::AutomationEngine ::Logger . create_log_wrapper ( :resource_id => miq_request_id )
245
+ logger . error ( "Method exec failed because (#{ err . class } :#{ err . message } )" )
241
246
rc = MIQ_ABORT
242
247
msg = "Method execution failed"
243
248
ensure
@@ -248,13 +253,15 @@ def self.run_method(cmd, miq_request_id)
248
253
private_class_method :run_method
249
254
250
255
def self . cleanup ( method_pid , threads , miq_request_id )
256
+ logger = ManageIQ ::AutomationEngine ::Logger . create_log_wrapper ( :resource_id => miq_request_id )
257
+
251
258
if method_pid
252
259
begin
253
- $miq_ae_logger . error ( "Terminating non responsive method with pid #{ method_pid . inspect } " , :resource_id => miq_request_id )
260
+ logger . error ( "Terminating non responsive method with pid #{ method_pid . inspect } " )
254
261
Process . kill ( "TERM" , method_pid )
255
262
Process . wait ( method_pid )
256
263
rescue Errno ::ESRCH , RangeError => err
257
- $miq_ae_logger . error ( "Error terminating #{ method_pid . inspect } exception #{ err } " , :resource_id => miq_request_id )
264
+ logger . error ( "Error terminating #{ method_pid . inspect } exception #{ err } " )
258
265
end
259
266
end
260
267
threads . each ( &:exit )
@@ -281,6 +288,8 @@ def self.bodies_and_line_numbers(obj, aem)
281
288
282
289
def self . embedded_methods ( workspace , method_obj , current_items , top )
283
290
miq_request_id = workspace . find_miq_request_id
291
+ logger = ManageIQ ::AutomationEngine ::Logger . create_log_wrapper ( :resource_id => miq_request_id )
292
+
284
293
method_obj . embedded_methods . each do |name |
285
294
method_name , klass , ns = embedded_method_name ( name )
286
295
match_ns = workspace . overlay_method ( ns , klass , method_name )
@@ -290,12 +299,12 @@ def self.embedded_methods(workspace, method_obj, current_items, top)
290
299
291
300
fqname = "/#{ match_ns } /#{ klass } /#{ method_name } "
292
301
if top == fqname
293
- $miq_ae_logger . info ( "Skipping #{ fqname } , cannot reference the top method" , :resource_id => miq_request_id )
302
+ logger . info ( "Skipping #{ fqname } , cannot reference the top method" )
294
303
elsif loaded? ( current_items , fqname )
295
- $miq_ae_logger . info ( "Already loaded embedded method #{ fqname } " , :resource_id => miq_request_id )
304
+ logger . info ( "Already loaded embedded method #{ fqname } " )
296
305
else
297
306
current_items << { :data => aem . data , :fqname => fqname }
298
- $miq_ae_logger . info ( "Loading embedded method #{ fqname } " , :resource_id => miq_request_id )
307
+ logger . info ( "Loading embedded method #{ fqname } " )
299
308
# Get the embedded methods for the this method
300
309
embedded_methods ( workspace , aem , current_items , top )
301
310
end
0 commit comments