You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@apisix.apache.org by "pavankumar-go (via GitHub)" <gi...@apache.org> on 2026/03/27 11:15:44 UTC

Re: [I] bug: /status/ready endpoint always returns 503 in file-driven standalone mode [apisix]

pavankumar-go commented on issue #12662:
URL: https://github.com/apache/apisix/issues/12662#issuecomment-4141882032

   Hello, I'm still facing this issue with the latest build `apache/apisix:3.15.0-ubuntu`, (Running without Ingress controller)
   
   ```
   useDaemonSet: true
   
   nodeSelector:
     nodesrole: ingress
   tolerations:
     - key: noderole
       value: ingress
       operator: Equal
       effect: NoSchedule
   
   # -- Set affinity for Apache APISIX deploy
   affinity: {}
   topologySpreadConstraints: []
   
   timezone: ""
   
   fullnameOverride: "apisix"
   
   service:
     type: NodePort
     externalTrafficPolicy: Cluster
     http:
       enabled: true
       servicePort: 80
       containerPort: 9080
       nodePort: 30080
       additionalContainerPorts: []
         # - port: 9081
         #   enable_http2: true          # If not set, the default value is `false`.
         # - ip: 127.0.0.2               # Specific IP, If not set, the default value is `0.0.0.0`.
         #   port: 9082
         #   enable_http2: true
     # -- Apache APISIX service settings for tls
     # tls:
       # servicePort: 443
       # nodePort: 4443
   
   ingress:
     enabled: false
   
   control:
     # -- Enable Control API
     enabled: true
     service:
       type: ClusterIP
       externalIPs: []
       port: 9090
       servicePort: 9090
     ingress:
       enabled: false
   
   metrics:
     serviceMonitor:
       enabled: false
   
   apisix:
     enableIPv6: false
     enableHTTP2: true
     enableServerTokens: true
     setIDFromPodUID: false
     luaModuleHook:
       enabled: false
     ssl:
       enabled: false
     router:
       # -- Defines how apisix handles routing:
       # - radixtree_uri: match route by uri(base on radixtree)
       # - radixtree_host_uri: match route by host + uri(base on radixtree)
       # - radixtree_uri_with_parameter: match route by uri with parameters
       http: radixtree_host_uri
   
     fullCustomConfig:
       # -- Enable full customized config.yaml
       enabled: false
       config: {}
   
     deployment:
       # -- Apache APISIX deployment mode
       # Optional: traditional, decoupled, standalone
       # ref: https://apisix.apache.org/docs/apisix/deployment-modes/
       mode: standalone
       role: traditional
       role_traditional:
         config_provider: yaml
   
       # ref: https://apisix.apache.org/docs/apisix/deployment-modes/#standalone
       standalone:
         existingConfigMap: ""
         config: |
           routes:
             - uri: /hi
               id: "1"
               upstream:
                 nodes:
                   "127.0.0.1:1980": 1
                 type: roundrobin
   
           upstreams: []
           global_rules: []
           plugin_configs: []
   
     admin:
       enabled: true
       enable_admin_ui: true
       type: ClusterIP
       # -- Admin API credentials
       credentials:
         secretName: "apisix-admin-secret"
         secretAdminKey: "AdminKey"
         secretViewerKey: "ViewerKey"
   
       allow:
         ipList:
           - 0.0.0.0/0
       ingress:
         enabled: false
   
     nginx:
       workerRlimitNofile: "20480"
       workerConnections: "10620"
       workerProcesses: auto
       enableCPUAffinity: true
       keepaliveTimeout: 60s
       envs: []
       # access log and error log configuration
       logs:
         enableAccessLog: true
         accessLog: "/dev/stdout"
         accessLogFormat: >-
           $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent 
           "$http_referer" "$http_user_agent" $request_length $request_time 
           [$upstream_addr] $upstream_status $upstream_response_time 
           $request_id clientId:$http_x_client_id otel_trace_id:$opentelemetry_trace_id
         # -- Allows setting json or default characters escaping in variables
         accessLogFormatEscape: default
         errorLog: "/dev/stderr"
         # -- Error log level
         errorLogLevel: "info"
   
       configurationSnippet:
         main: |
           
         httpStart: |
   
         httpEnd: |
   
         httpSrv: |
   
         httpAdmin: |
   
         stream: |
   
     dns:
       resolvers:
         - 127.0.0.1
         - 172.20.0.10
         - 114.114.114.114
         - 223.5.5.5
         - 1.1.1.1
         - 8.8.8.8
       validity: 30
       timeout: 5
   
     vault:
       # -- Enable or disable the vault integration
       enabled: false
   
     plugins:
       - opentelemetry
       - redirect
       - prometheus
   
     pluginAttrs:
       opentelemetry:
         resource:
           service.name: "dev-apisix-ingress"
         collector:
           address: "grafana-k8s-monitoring-alloy-receiver.observability.svc.cluster.local:4318"
           request_timeout: 3
         sampler:
           name: "always_on"
         set_ngx_var: true # Allows trace_id in the access_log_format above
   
     extPlugin:
       enabled: false
   
     wasm:
       enabled: false
   
     customPlugins:
       enabled: false
     
     status:
       ip: "0.0.0.0"
       port: 7085
   
     trustedAddresses:
       - 127.0.0.1
       - 10.50.0.0/16
   
   etcd:
     enabled: false
   
   ingress-controller:
     enabled: false
   ```
   
   
   Logs:
   ```
   10255 ◯  k logs -f apisix-fvhxk
   /usr/local/openresty//luajit/bin/luajit ./apisix/cli/apisix.lua init
   /usr/local/openresty//luajit/bin/luajit ./apisix/cli/apisix.lua init_etcd
   2026/03/27 07:45:23 [info] 9#9: [lua] core.lua:26: use config_provider: yaml
   2026/03/27 07:45:23 [info] 9#9: [lua] secret.lua:189: new_lrucache(): secret lrucache ttl: 300, count: 512, neg_ttl: 60, neg_count: 512
   2026/03/27 07:45:23 [info] 9#9: [lua] resolver.lua:50: init_resolver(): dns resolver ["172.16.0.10"]
   2026/03/27 07:45:23 [notice] 9#9: [lua] id.lua:148: init(): not found apisix uid, generate a new one: 0f7f5ed7-5523-486a-9fdc-b545f67bd288
   2026/03/27 07:45:23 [notice] 9#9: using the "epoll" event method
   2026/03/27 07:45:23 [notice] 9#9: openresty/1.27.1.2
   2026/03/27 07:45:23 [notice] 9#9: built by gcc 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04)
   2026/03/27 07:45:23 [notice] 9#9: OS: Linux 6.12.46
   2026/03/27 07:45:23 [notice] 9#9: getrlimit(RLIMIT_NOFILE): 65536:1048576
   2026/03/27 07:45:23 [notice] 9#9: start worker processes
   2026/03/27 07:45:23 [notice] 9#9: start worker process 52
   2026/03/27 07:45:23 [notice] 52#52: sched_setaffinity(): using cpu #0
   2026/03/27 07:45:23 [notice] 9#9: start worker process 53
   2026/03/27 07:45:23 [notice] 9#9: start privileged agent process 54
   2026/03/27 07:45:23 [notice] 53#53: sched_setaffinity(): using cpu #1
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] init.lua:119: http_init_worker(): random test in [1, 10000]: 2785, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] events.lua:38: init_resty_events(): subsystem: http listening sock: unix:/usr/local/apisix/logs/worker_events.sock, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] init.lua:119: http_init_worker(): random test in [1, 10000]: 3706, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] events.lua:38: init_resty_events(): subsystem: http listening sock: unix:/usr/local/apisix/logs/worker_events.sock, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin/configs operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin/configs/validate operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [notice] 52#52: *1 [lua] timers.lua:76: init_worker(): succeed to create background timer, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] init.lua:119: http_init_worker(): random test in [1, 10000]: 3263, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] events.lua:38: init_resty_events(): subsystem: http listening sock: unix:/usr/local/apisix/logs/worker_events.sock, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin/configs operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin/configs/validate operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin/configs operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] radixtree.lua:493: common_route_data(): path: /apisix/admin/configs/validate operator: =, context: init_worker_by_lua*
   2026/03/27 07:45:23 [notice] 54#54: *3 [lua] timers.lua:76: init_worker(): succeed to create background timer, context: init_worker_by_lua*
   2026/03/27 07:45:23 [notice] 53#53: *2 [lua] timers.lua:76: init_worker(): succeed to create background timer, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] config_yaml.lua:145: sync_status_to_shdict(): sync status to shared dict, id: 1 status: false, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] config_yaml.lua:145: sync_status_to_shdict(): sync status to shared dict, id: 0 status: false, context: init_worker_by_lua*
   2026/03/27 07:45:23 [warn] 53#53: *2 [lua] plugin.lua:223: load(): new plugins: {"redirect":true,"opentelemetry":true,"prometheus":true}, context: init_worker_by_lua*
   2026/03/27 07:45:23 [warn] 52#52: *1 [lua] plugin.lua:223: load(): new plugins: {"redirect":true,"opentelemetry":true,"prometheus":true}, context: init_worker_by_lua*
   2026/03/27 07:45:23 [warn] 54#54: *3 [lua] plugin.lua:223: load(): new plugins: {"redirect":true,"opentelemetry":true,"prometheus":true}, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] plugin.lua:260: load(): load plugin times: 1, context: init_worker_by_lua*
   2026/03/27 07:45:23 [warn] 52#52: *1 [lua] plugin.lua:273: load_stream(): new plugins: {"limit-conn":true,"ip-restriction":true,"traffic-split":true,"syslog":true,"mqtt-proxy":true}, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] plugin.lua:301: load_stream(): stream plugins: [{"check_schema":"function: 0x21b265219e38","schema":{"properties":{"message":{"type":"string","minLength":1,"maxLength":1024,"default":"Your IP address is not allowed"},"response_code":{"minimum":403,"maximum":404,"type":"integer","default":403},"whitelist":{"items":{"anyOf":[{"title":"IPv4","format":"ipv4","type":"string"},{"title":"IPv4/CIDR","type":"string","pattern":"^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/([12]?[0-9]|3[0-2])$"},{"title":"IPv6","format":"ipv6","type":"string"},{"title":"IPv6/CIDR","type":"string","pattern":"^([a-fA-F0-9]{0,4}:){1,8}(:[a-fA-F0-9]{0,4}){0,8}([a-fA-F0-9]{0,4})?/[0-9]{1,3}$"}]},"type":"array","minItems":1},"blacklist":{"items":{"anyOf":"table: 0x21b264ce4ed0"},"type":"array","minItems":1},"_meta":{
 "properties":{"disable":{"type":"boolean"},"error_response":{"oneOf":[{"type":"string"},{"type":"object"}]},"priority":{"description":"priority of plugins by customized order","type":"integer"},"filter":{"description":"filter determines whether the plugin needs to be executed at runtime","type":"array"},"pre_function":{"description":"function to be executed in each phase before execution of plugins. The pre_function will have access to two arguments: `conf` and `ctx`.","type":"string"}},"additionalProperties":false,"type":"object"}},"oneOf":[{"required":["whitelist"]},{"required":["blacklist"]}],"type":"object","$comment":"this is a mark for our injected plugin schema"},"preread":"function: 0x21b265219dd0","version":0.1,"priority":3000,"restrict":"function: 0x21b265219dd0","name":"ip-restriction"},{"check_schema":"function: 0x21b265212480","schema":{"properties":{"conn":{"type":"integer","exclusiveMinimum":0},"key":{"type":"string"},"burst":{"type":"integer","minimum":0},"default_co
 nn_delay":{"type":"number","exclusiveMinimum":0},"only_use_default_delay":{"type":"boolean","default":false},"key_type":{"enum":["var","var_combination"],"type":"string","default":"var"},"_meta":"table: 0x21b264c6a508"},"required":["conn","burst","default_conn_delay","key"],"$comment":"this is a mark for our injected plugin schema","type":"object"},"preread":"function: 0x21b265212418","version":0.1,"log":"function: 0x21b265212630","priority":1003,"name":"limit-conn"},{"check_schema":"function: 0x21b26524f600","schema":{"properties":{"_meta":"table: 0x21b264c6a508","protocol_name":{"type":"string","default":"MQTT"},"protocol_level":{"type":"integer"}},"required":["protocol_level"],"$comment":"this is a mark for our injected plugin schema","type":"object"},"preread":"function: 0x21b265251608","version":0.1,"log":"function: 0x21b265251700","priority":1000,"name":"mqtt-proxy"},{"check_schema":"function: 0x21b265229750","schema":{"properties":{"_meta":"table: 0x21b264c6a508","rules":{"ty
 pe":"array","items":{"type":"object","properties":{"match":{"type":"array","items":{"type":"object","properties":{"vars":{"type":"array"}}}},"weighted_upstreams":{"items":{"type":"object","properties":{"weight":{"description":"used to split traffic between differentupstreams for plugin configuration","minimum":0,"type":"integer","default":1},"upstream":{"properties":{"keepalive_pool":{"type":"object","properties":{"idle_timeout":{"minimum":0,"type":"number","default":60},"requests":{"minimum":1,"type":"integer","default":1000},"size":{"minimum":1,"type":"integer","default":320}}},"id":"table: 0x21b264cee050","hash_on":{"default":"vars","type":"string","enum":["vars","header","cookie","consumer","vars_combinations"]},"nodes":{"anyOf":[{"type":"object","patternProperties":{".*":{"description":"weight of node","type":"integer","minimum":0}}},{"type":"array","items":{"properties":{"metadata":{"description":"metadata of node","type":"object"},"port":{"description":"port of node","maximum
 ":65535,"type":"integer","minimum":1},"host":{"type":"string","pattern":"^\\*$|^\\*?[0-9a-zA-Z-._\\[\\]:]+$"}
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] plugin.lua:303: load_stream(): load stream plugin times: 1, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] plugin.lua:260: load(): load plugin times: 1, context: init_worker_by_lua*
   2026/03/27 07:45:23 [warn] 53#53: *2 [lua] plugin.lua:273: load_stream(): new plugins: {"limit-conn":true,"ip-restriction":true,"traffic-split":true,"syslog":true,"mqtt-proxy":true}, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] plugin.lua:260: load(): load plugin times: 1, context: init_worker_by_lua*
   2026/03/27 07:45:23 [warn] 54#54: *3 [lua] plugin.lua:273: load_stream(): new plugins: {"limit-conn":true,"ip-restriction":true,"traffic-split":true,"syslog":true,"mqtt-proxy":true}, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *1 [lua] ipmatcher.lua:216: new(): ipv4 mask: 16 valid inet: 2610, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 52#52: *7 [lua] config_yaml.lua:396: try to load config from shared dict, context: ngx.timer
   2026/03/27 07:45:23 [info] 52#52: *7 [lua] config_yaml.lua:409: no config found in shared dict, context: ngx.timer
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] plugin.lua:301: load_stream(): stream plugins: [{"check_schema":"function: 0x21b2651e3e48","schema":{"properties":{"message":{"type":"string","minLength":1,"maxLength":1024,"default":"Your IP address is not allowed"},"response_code":{"minimum":403,"maximum":404,"type":"integer","default":403},"whitelist":{"items":{"anyOf":[{"title":"IPv4","format":"ipv4","type":"string"},{"title":"IPv4/CIDR","type":"string","pattern":"^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/([12]?[0-9]|3[0-2])$"},{"title":"IPv6","format":"ipv6","type":"string"},{"title":"IPv6/CIDR","type":"string","pattern":"^([a-fA-F0-9]{0,4}:){1,8}(:[a-fA-F0-9]{0,4}){0,8}([a-fA-F0-9]{0,4})?/[0-9]{1,3}$"}]},"type":"array","minItems":1},"blacklist":{"items":{"anyOf":"table: 0x21b264ce4ed0"},"type":"array","minItems":1},"_meta":{
 "properties":{"disable":{"type":"boolean"},"error_response":{"oneOf":[{"type":"string"},{"type":"object"}]},"priority":{"description":"priority of plugins by customized order","type":"integer"},"filter":{"description":"filter determines whether the plugin needs to be executed at runtime","type":"array"},"pre_function":{"description":"function to be executed in each phase before execution of plugins. The pre_function will have access to two arguments: `conf` and `ctx`.","type":"string"}},"additionalProperties":false,"type":"object"}},"oneOf":[{"required":["whitelist"]},{"required":["blacklist"]}],"type":"object","$comment":"this is a mark for our injected plugin schema"},"preread":"function: 0x21b2651e3de0","version":0.1,"priority":3000,"restrict":"function: 0x21b2651e3de0","name":"ip-restriction"},{"check_schema":"function: 0x21b2651dc490","schema":{"properties":{"conn":{"type":"integer","exclusiveMinimum":0},"burst":{"type":"integer","minimum":0},"default_conn_delay":{"type":"numbe
 r","exclusiveMinimum":0},"only_use_default_delay":{"type":"boolean","default":false},"key":{"type":"string"},"key_type":{"enum":["var","var_combination"],"type":"string","default":"var"},"_meta":"table: 0x21b264c6a508"},"required":["conn","burst","default_conn_delay","key"],"$comment":"this is a mark for our injected plugin schema","type":"object"},"preread":"function: 0x21b2651dc428","version":0.1,"log":"function: 0x21b2651dc640","priority":1003,"name":"limit-conn"},{"check_schema":"function: 0x21b265219980","schema":{"properties":{"_meta":"table: 0x21b264c6a508","protocol_level":{"type":"integer"},"protocol_name":{"type":"string","default":"MQTT"}},"required":["protocol_level"],"$comment":"this is a mark for our injected plugin schema","type":"object"},"preread":"function: 0x21b26521b988","version":0.1,"log":"function: 0x21b26521ba80","priority":1000,"name":"mqtt-proxy"},{"check_schema":"function: 0x21b2651f3760","schema":{"properties":{"_meta":"table: 0x21b264c6a508","rules":{"ty
 pe":"array","items":{"type":"object","properties":{"match":{"type":"array","items":{"type":"object","properties":{"vars":{"type":"array"}}}},"weighted_upstreams":{"items":{"type":"object","properties":{"weight":{"description":"used to split traffic between differentupstreams for plugin configuration","minimum":0,"type":"integer","default":1},"upstream":{"properties":{"keepalive_pool":{"type":"object","properties":{"idle_timeout":{"minimum":0,"type":"number","default":60},"requests":{"minimum":1,"type":"integer","default":1000},"size":{"minimum":1,"type":"integer","default":320}}},"id":"table: 0x21b264cee050","hash_on":{"default":"vars","type":"string","enum":["vars","header","cookie","consumer","vars_combinations"]},"nodes":{"anyOf":[{"type":"object","patternProperties":{".*":{"description":"weight of node","type":"integer","minimum":0}}},{"type":"array","items":{"properties":{"metadata":{"description":"metadata of node","type":"object"},"port":{"description":"port of node","maximum
 ":65535,"type":"integer","minimum":1},"host":{"type":"string","pattern":"^\\*$|^\\*?[0-9a-zA-Z-._\\[\\]:]+$"}
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] plugin.lua:303: load_stream(): load stream plugin times: 1, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] plugin.lua:301: load_stream(): stream plugins: [{"check_schema":"function: 0x21b2652116e8","schema":{"properties":{"message":{"type":"string","minLength":1,"maxLength":1024,"default":"Your IP address is not allowed"},"response_code":{"minimum":403,"maximum":404,"type":"integer","default":403},"whitelist":{"items":{"anyOf":[{"title":"IPv4","format":"ipv4","type":"string"},{"title":"IPv4/CIDR","type":"string","pattern":"^([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/([12]?[0-9]|3[0-2])$"},{"title":"IPv6","format":"ipv6","type":"string"},{"title":"IPv6/CIDR","type":"string","pattern":"^([a-fA-F0-9]{0,4}:){1,8}(:[a-fA-F0-9]{0,4}){0,8}([a-fA-F0-9]{0,4})?/[0-9]{1,3}$"}]},"type":"array","minItems":1},"blacklist":{"items":{"anyOf":"table: 0x21b264ce4ed0"},"type":"array","minItems":1},"_meta":{
 "properties":{"disable":{"type":"boolean"},"error_response":{"oneOf":[{"type":"string"},{"type":"object"}]},"priority":{"description":"priority of plugins by customized order","type":"integer"},"filter":{"description":"filter determines whether the plugin needs to be executed at runtime","type":"array"},"pre_function":{"description":"function to be executed in each phase before execution of plugins. The pre_function will have access to two arguments: `conf` and `ctx`.","type":"string"}},"additionalProperties":false,"type":"object"}},"oneOf":[{"required":["whitelist"]},{"required":["blacklist"]}],"type":"object","$comment":"this is a mark for our injected plugin schema"},"preread":"function: 0x21b265211680","version":0.1,"priority":3000,"restrict":"function: 0x21b265211680","name":"ip-restriction"},{"check_schema":"function: 0x21b265209d30","schema":{"properties":{"conn":{"type":"integer","exclusiveMinimum":0},"key":{"type":"string"},"key_type":{"enum":["var","var_combination"],"type
 ":"string","default":"var"},"burst":{"type":"integer","minimum":0},"default_conn_delay":{"type":"number","exclusiveMinimum":0},"only_use_default_delay":{"type":"boolean","default":false},"_meta":"table: 0x21b264c6a508"},"required":["conn","burst","default_conn_delay","key"],"$comment":"this is a mark for our injected plugin schema","type":"object"},"preread":"function: 0x21b265209cc8","version":0.1,"log":"function: 0x21b265209ee0","priority":1003,"name":"limit-conn"},{"check_schema":"function: 0x21b265247120","schema":{"properties":{"protocol_level":{"type":"integer"},"protocol_name":{"type":"string","default":"MQTT"},"_meta":"table: 0x21b264c6a508"},"required":["protocol_level"],"$comment":"this is a mark for our injected plugin schema","type":"object"},"preread":"function: 0x21b265249128","version":0.1,"log":"function: 0x21b265249220","priority":1000,"name":"mqtt-proxy"},{"check_schema":"function: 0x21b265221000","schema":{"properties":{"_meta":"table: 0x21b264c6a508","rules":{"ty
 pe":"array","items":{"type":"object","properties":{"match":{"type":"array","items":{"type":"object","properties":{"vars":{"type":"array"}}}},"weighted_upstreams":{"items":{"type":"object","properties":{"weight":{"description":"used to split traffic between differentupstreams for plugin configuration","minimum":0,"type":"integer","default":1},"upstream":{"properties":{"keepalive_pool":{"type":"object","properties":{"idle_timeout":{"minimum":0,"type":"number","default":60},"requests":{"minimum":1,"type":"integer","default":1000},"size":{"minimum":1,"type":"integer","default":320}}},"id":"table: 0x21b264cee050","hash_on":{"default":"vars","type":"string","enum":["vars","header","cookie","consumer","vars_combinations"]},"nodes":{"anyOf":[{"type":"object","patternProperties":{".*":{"description":"weight of node","type":"integer","minimum":0}}},{"type":"array","items":{"properties":{"metadata":{"description":"metadata of node","type":"object"},"port":{"description":"port of node","maximum
 ":65535,"type":"integer","minimum":1},"host":{"type":"string","pattern":"^\\*$|^\\*?[0-9a-zA-Z-._\\[\\]:]+$"}
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] plugin.lua:303: load_stream(): load stream plugin times: 1, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 54#54: *3 [lua] ipmatcher.lua:216: new(): ipv4 mask: 16 valid inet: 2610, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 54#54: *22 [lua] config_yaml.lua:396: try to load config from shared dict, context: ngx.timer
   2026/03/27 07:45:23 [info] 54#54: *22 [lua] config_yaml.lua:409: no config found in shared dict, context: ngx.timer
   2026/03/27 07:45:23 [info] 53#53: *2 [lua] ipmatcher.lua:216: new(): ipv4 mask: 16 valid inet: 2610, context: init_worker_by_lua*
   2026/03/27 07:45:23 [info] 53#53: *36 [lua] config_yaml.lua:396: try to load config from shared dict, context: ngx.timer
   2026/03/27 07:45:23 [info] 53#53: *36 [lua] config_yaml.lua:409: no config found in shared dict, context: ngx.timer
   2026/03/27 07:45:34 [error] 54#54: *356 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:45:44 [error] 54#54: *648 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:45:54 [error] 54#54: *940 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:46:04 [error] 54#54: *1231 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:46:14 [error] 54#54: *1523 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:46:24 [error] 54#54: *1815 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:46:34 [error] 54#54: *2106 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:46:42 [error] 54#54: *2308 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:46:52 [error] 54#54: *2599 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:47:02 [error] 54#54: *2891 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:47:12 [error] 54#54: *3183 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:47:22 [error] 54#54: *3474 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:47:32 [error] 54#54: *3766 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:47:42 [error] 54#54: *4058 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:47:52 [error] 54#54: *4349 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:48:02 [error] 54#54: *4641 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:48:08 [error] 54#54: *4822 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:48:18 [error] 54#54: *5114 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:48:28 [error] 54#54: *5406 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:48:38 [error] 54#54: *5697 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:48:48 [error] 54#54: *5989 [lua] init.lua:1022: config_ready_check(): worker id: 1 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"
   2026/03/27 07:48:58 [error] 54#54: *6281 [lua] init.lua:1022: config_ready_check(): worker id: 0 has not received configuration, client: 10.50.193.34, server: , request: "GET /status/ready HTTP/1.1", host: "10.50.193.44:7085"```


-- 
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: notifications-unsubscribe@apisix.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org