zhendongcmss commented on a change in pull request #6055:
URL: https://github.com/apache/apisix/pull/6055#discussion_r782199091
##########
File path: apisix/utils/batch-processor.lua
##########
@@ -161,7 +161,7 @@ function batch_processor:push(entry)
local entries = self.entry_buffer.entries
table.insert(entries, entry)
-- add batch metric for every route
- if batch_metrics then
+ if batch_metrics and self.name and self.route_id and self.server_addr then
Review comment:
I add two line `local ngx = ngx` and
`core.log.error("ngx.var.server_addr",ngx.var.server_addr)` on
batch-processor.lua but got an error. It seems it deson't use `ngx` on log
phase.
```
2022/01/11 22:23:46 [error] 21652#21652: *217 lua user thread aborted:
runtime error: /usr/local/apisix/apisix/utils/batch-processor.lua:138: API
disabled in the current context
stack traceback:
coroutine 0:
[C]: in function 'error'
/usr/local/openresty/lualib/resty/core/var.lua:103: in function
'__index'
/usr/local/apisix/apisix/utils/batch-processor.lua:138: in function
'new'
/usr/local/apisix/apisix/plugins/error-log-logger.lua:316: in
function </usr/local/apisix/apisix/plugins/error-log-logger.lua:250>
coroutine 1:
[C]: in function 'thread_spawn'
/usr/local/apisix/apisix/timers.lua:41: in function
</usr/local/apisix/apisix/timers.lua:32>
[C]: in function 'pcall'
/usr/local/apisix/apisix/core/timer.lua:35: in function
</usr/local/apisix/apisix/core/timer.lua:31>
[C]: in function 'pcall'
/usr/local/apisix/apisix/core/timer.lua:58: in function
</usr/local/apisix/apisix/core/timer.lua:51>, context: ngx.timer
2022/01/11 22:23:46 [error] 21649#21649: *218 lua user thread aborted:
runtime error: /usr/local/apisix/apisix/utils/batch-processor.lua:138: API
disabled in the current context
stack traceback:
coroutine 0:
[C]: in function 'error'
/usr/local/openresty/lualib/resty/core/var.lua:103: in function
'__index'
/usr/local/apisix/apisix/utils/batch-processor.lua:138: in function
'new'
/usr/local/apisix/apisix/plugins/error-log-logger.lua:316: in
function </usr/local/apisix/apisix/plugins/error-log-logger.lua:250>
coroutine 1:
[C]: in function 'thread_spawn'
/usr/local/apisix/apisix/timers.lua:41: in function
</usr/local/apisix/apisix/timers.lua:32>
[C]: in function 'pcall'
/usr/local/apisix/apisix/core/timer.lua:35: in function
</usr/local/apisix/apisix/core/timer.lua:31>
[C]: in function 'pcall'
/usr/local/apisix/apisix/core/timer.lua:58: in function
</usr/local/apisix/apisix/core/timer.lua:51>, context: ngx.timer
2022/01/11 22:23:46 [error] 21652#21652: *217 [lua] timers.lua:54: failed to
wait threads: API disabled in the current context, context: ngx.timer
2022/01/11 22:23:46 [error] 21649#21649: *218 [lua] timers.lua:54: failed to
wait threads: API disabled in the current context, context: ngx.timer
2022/01/11 22:23:46 [error] 21648#21648: *223 lua user thread aborted:
runtime error: /usr/local/apisix/apisix/utils/batch-processor.lua:138: API
disabled in the current context
stack traceback:
coroutine 0:
[C]: in function 'error'
/usr/local/openresty/lualib/resty/core/var.lua:103: in function
'__index'
/usr/local/apisix/apisix/utils/batch-processor.lua:138: in function
'new'
/usr/local/apisix/apisix/plugins/error-log-logger.lua:316: in
function </usr/local/apisix/apisix/plugins/error-log-logger.lua:250>
coroutine 1:
[C]: in function 'thread_spawn'
/usr/local/apisix/apisix/timers.lua:41: in function
</usr/local/apisix/apisix/timers.lua:32>
[C]: in function 'pcall'
/usr/local/apisix/apisix/core/timer.lua:35: in function
</usr/local/apisix/apisix/core/timer.lua:31>
[C]: in function 'pcall'
/usr/local/apisix/apisix/core/timer.lua:58: in function
</usr/local/apisix/apisix/core/timer.lua:51>, context: ngx.timer
2022/01/11 22:23:46 [error] 21648#21648: *223 [lua] timers.lua:54: failed to
wait threads: API disabled in the current context, context: ngx.timer
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]