apache / apisix-java-plugin-runner

APISIX Plugin Runner in Java
https://apisix.apache.org/
Apache License 2.0
132 stars 97 forks source link

help request: I try to run java plugin with debug model,but failed #286

Open mayunSaicmotor opened 11 months ago

mayunSaicmotor commented 11 months ago

Description

Issue description I run the apisix in docker [root@cloudpark-test ~]# docker ps

CONTAINER ID   IMAGE                            COMMAND                   CREATED             STATUS             PORTS                                                                                                      NAMES
8fa47e223cf5   apache/apisix:3.7.0-debian       "/docker-entrypoint.…"   About an hour ago   Up About an hour   0.0.0.0:9091-9092->9091-9092/tcp, 0.0.0.0:9180->9180/tcp, 0.0.0.0:9443->9443/tcp, 0.0.0.0:9070->9080/tcp   docker-apisix_apisix_1
d09627d5d710   apache/apisix-dashboard:latest   "/usr/local/apisix-d…"   12 days ago         Up About an hour   0.0.0.0:9000->9000/tcp                                                                                     docker-apisix_dashboard_1
f4b08fac1152   prom/prometheus:v2.25.0          "/bin/prometheus --c…"   12 days ago         Up About an hour   0.0.0.0:9090->9090/tcp                                                                                     docker-apisix_prometheus_1
986fd4064e6c   nginx:1.19.0-alpine              "/docker-entrypoint.…"   12 days ago         Up About an hour   0.0.0.0:9081->80/tcp                                                                                       docker-apisix_web1_1
cb6534b915ab   bitnami/etcd:latest              "/opt/bitnami/script…"   12 days ago         Up About an hour   0.0.0.0:2379->2379/tcp, 2380/tcp                                                                           docker-apisix_etcd_1
8c38d3344d9a   grafana/grafana:7.3.7            "/run.sh"                 12 days ago         Up About an hour   0.0.0.0:3000->3000/tcp                                                                                     docker-apisix_grafana_1
c5b1976abe51   nginx:1.19.0-alpine              "/docker-entrypoint.…"   12 days ago         Up About an hour   0.0.0.0:9082->80/tcp    

the apisix config as below

image

the docker-compose.yml as below

image

my java plugin application.yaml as below

image image

I use the command "docker exec -it 8fa47e223cf5 /bin/bash " login docker and run the below java command, the java plugin is up in the docker container. nohup /jdk17/bin/java --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.math=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED -jar -DAPISIX_LISTEN_ADDRESS=unix:/tmp/runner.sock -DAPISIX_CONF_EXPIRE_TIME=3600 /path/to/dubbo-plugin-0.0.1-SNAPSHOT-exec.jar > a.log &

image

which step or configuration is wrong?

Environment

mayunSaicmotor commented 11 months ago

error logs

&version=1.0.0, dubbo version: 2.7.8, current host: 172.28.0.8
2023-12-26 15:39:26.126  INFO 220 --- [lientWorker-1-1] o.a.d.r.t.netty4.NettyClientHandler      :  [DUBBO] The connection of /172.28.0.8:42096 -> /172.18.0.67:7810 is disconnected., dubbo version: 2.7.8, current host: 172.28.0.8
2023-12-26 15:39:26.126  INFO 220 --- [           main] org.apache.dubbo.qos.server.Server       :  [DUBBO] qos-server stopped., dubbo version: 2.7.8, current host: 172.28.0.8
2023-12-26 15:39:26.129  INFO 220 --- [lientWorker-1-2] o.a.d.r.t.netty4.NettyClientHandler      :  [DUBBO] The connection of /172.28.0.8:58158 -> /172.18.0.67:7809 is disconnected., dubbo version: 2.7.8, current host: 172.28.0.8
2023-12-26 15:39:26.132  INFO 220 --- [           main] o.a.d.config.bootstrap.DubboBootstrap    :  [DUBBO] DubboBootstrap is about to shutdown..., dubbo version: 2.7.8, current host: 172.28.0.8
2023-12-26 15:39:26.134  INFO 220 --- [           main] o.s.b.w.e.tomcat.GracefulShutdown        : Commencing graceful shutdown. Waiting for active requests to complete
2023-12-26 15:39:26.141  INFO 220 --- [tomcat-shutdown] o.s.b.w.e.tomcat.GracefulShutdown        : Graceful shutdown complete
2023-12-26 15:39:26.188  INFO 220 --- [           main] o.s.s.c.ThreadPoolTaskScheduler          : Shutting down ExecutorService 'taskScheduler'
2023-12-26 15:39:26.190  INFO 220 --- [           main] com.alibaba.druid.pool.DruidDataSource   : {dataSource-1} closing ...
2023-12-26 15:39:26.191  INFO 220 --- [           main] com.alibaba.druid.pool.DruidDataSource   : {dataSource-1} closed
2023-12-26 15:39:26.192  INFO 220 --- [           main] o.s.s.c.ThreadPoolTaskScheduler          : Shutting down ExecutorService 'taskScheduler'
2023-12-26 15:39:26.193  INFO 220 --- [           main] c.a.c.n.registry.NacosServiceRegistry    : De-registering from Nacos Server now...
2023-12-26 15:39:26.195  INFO 220 --- [           main] c.a.c.n.registry.NacosServiceRegistry    : De-registration finished.
2023-12-26 15:39:35.198  WARN 220 --- [           main] o.s.b.f.support.DisposableBeanAdapter    : Destroy method 'close' on bean with name 'nacosServiceRegistry' threw an exception: java.lang.NullPointerException: Cannot invoke "com.alibaba.nacos.api.naming.NamingService.shutDown()" because "this.namingService" is null
2023-12-26 15:39:35.199  INFO 220 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Shutting down ExecutorService 'applicationTaskExecutor'
2023-12-26 15:39:35.201  INFO 220 --- [           main] c.a.c.d.s.DubboGenericServiceFactory     : The Dubbo GenericService ReferenceBeans are destroying...
2023-12-26 15:39:35.201  INFO 220 --- [           main] c.a.c.d.s.DubboGenericServiceFactory     : Destroyed the ReferenceBean  : <dubbo:reference /> 
2023-12-26 15:39:35.202  INFO 220 --- [           main] c.a.c.d.s.DubboGenericServiceFactory     : Destroyed the ReferenceBean  : <dubbo:reference /> 
2023-12-26 15:39:35.203  INFO 220 --- [           main] f.a.ReferenceAnnotationBeanPostProcessor : org.apache.dubbo.common.bytecode.proxy2@2582b0ef was destroying!
2023-12-26 15:39:35.203  INFO 220 --- [           main] f.a.ReferenceAnnotationBeanPostProcessor : org.apache.dubbo.common.bytecode.proxy2@2582b0ef was destroying!
2023-12-26 15:39:35.203  INFO 220 --- [           main] f.a.ReferenceAnnotationBeanPostProcessor : class org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor was destroying!
2023-12-26 15:39:35.209 ERROR 220 --- [           main] o.s.boot.SpringApplication               : Application run failed

java.lang.IllegalStateException: Failed to execute CommandLineRunner
    at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:798) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:779) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:322) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at com.zebra.carcloud.openapi.apisix.plugin.dubbo.GateWayApplication.main(GateWayApplication.java:24) ~[classes!/:0.0.1-SNAPSHOT]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
    at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:107) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
Caused by: java.lang.RuntimeException: java runner is only support epoll or kqueue
    at org.apache.apisix.plugin.runner.server.ApplicationRunner.start(ApplicationRunner.java:111) ~[apisix-runner-core-0.4.0.jar!/:0.4.0]
    at org.apache.apisix.plugin.runner.server.ApplicationRunner.run(ApplicationRunner.java:149) ~[apisix-runner-core-0.4.0.jar!/:0.4.0]
    at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:795) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    ... 13 common frames omitted
mayunSaicmotor commented 11 months ago

I tried to use the run model run the java plugin ,still failed

image
, context: ngx.timer
2023/12/26 15:49:19 [warn] 53#53: *52 [lua] init.lua:961: 2023-12-26 15:49:19.836  INFO 87 --- [           main] f.a.ReferenceAnnotationBeanPostProcessor : class org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor was destroying!
, context: ngx.timer
2023/12/26 15:49:19 [warn] 53#53: *52 [lua] init.lua:961: 2023-12-26 15:49:19.842 ERROR 87 --- [           main] o.s.boot.SpringApplication               : Application run failed

java.lang.IllegalStateException: Failed to execute CommandLineRunner
    at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:798) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:779) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:322) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at com.zebra.carcloud.openapi.apisix.plugin.dubbo.GateWayApplication.main(GateWayApplication.java:24) ~[classes!/:0.0.1-SNAPSHOT]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
    at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:107) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
Caused by: java.lang.RuntimeException: java runner is only support epoll or kqueue
    at org.apache.apisix.plugin.runner.server.ApplicationRunner.start(ApplicationRunner.java:111) ~[apisix-runner-core-0.4.0.jar!/:0.4.0]
    at org.apache.apisix.plugin.runner.server.ApplicationRunner.run(ApplicationRunner.java:149) ~[apisix-runner-core-0.4.0.jar!/:0.4.0]
    at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:795) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    ... 13 common frames omitted

, context: ngx.timer
mayunSaicmotor commented 11 months ago

I tried to remove the socket.file from the spring boot application.yml and restart apisix. it still failed with another error.

socket:
  file: /tmp/runner.sock

istry://localhost:9090/org.apache.dubbo.registry.RegistryService?application=dubbo-plugin&check=false&dubbo=2.0.2&generic=true&group=parking&init=false&interface=com.rrht.common.service.sys.SysUserService&metadata-type=remote&pid=88&qos.enable=false&register.ip=172.28.0.8&registry=spring-cloud&release=2.7.8&side=consumer&sticky=false&timeout=5000&timestamp=1703606129637&version=1.2, dubbo version: 2.7.8, current host: 172.28.0.8
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.882  INFO 88 --- [Report-thread-1] .d.m.r.s.ConfigCenterBasedMetadataReport :  [DUBBO] store consumer metadata. Identifier : org.apache.dubbo.metadata.report.identifier.MetadataIdentifier@79a4ba5a; definition: {init=false, side=consumer, release=2.7.8, dubbo=2.0.2, check=false, interface=com.rrht.common.service.sys.SysUserService, version=1.2, qos.enable=false, timeout=5000, generic=true, metadata-type=remote, application=dubbo-plugin, sticky=false}, dubbo version: 2.7.8, current host: 172.28.0.8
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.912  WARN 88 --- [           main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationRunner': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'socket.file' in value "${socket.file}"
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.912  INFO 88 --- [           main] c.a.c.d.s.DubboGenericServiceFactory     : The Dubbo GenericService ReferenceBeans are destroying...
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.912  INFO 88 --- [           main] c.a.c.d.s.DubboGenericServiceFactory     : Destroyed the ReferenceBean  : <dubbo:reference /> 
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.913  INFO 88 --- [           main] c.a.c.d.s.DubboGenericServiceFactory     : Destroyed the ReferenceBean  : <dubbo:reference /> 
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.914  INFO 88 --- [           main] f.a.ReferenceAnnotationBeanPostProcessor : org.apache.dubbo.common.bytecode.proxy2@2cec704c was destroying!
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.914  INFO 88 --- [           main] f.a.ReferenceAnnotationBeanPostProcessor : org.apache.dubbo.common.bytecode.proxy2@2cec704c was destroying!
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.914  INFO 88 --- [           main] f.a.ReferenceAnnotationBeanPostProcessor : class org.apache.dubbo.config.spring.beans.factory.annotation.ReferenceAnnotationBeanPostProcessor was destroying!
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.915  INFO 88 --- [           main] o.apache.catalina.core.StandardService   : Stopping service [Tomcat]
, context: ngx.timer
2023/12/26 15:55:30 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:30.994  INFO 88 --- [           main] ConditionEvaluationReportLoggingListener : 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
, context: ngx.timer
2023/12/26 15:55:31 [warn] 53#53: *81 [lua] init.lua:961: 2023-12-26 15:55:31.000 ERROR 88 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationRunner': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'socket.file' in value "${socket.file}"
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:405) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1420) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:593) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:897) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879) ~[spring-context-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551) ~[spring-context-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) ~[spring-boot-2.3.4.RELEASE.jar!/:2.3.4.RELEASE]
    at com.zebra.carcloud.openapi.apisix.plugin.dubbo.GateWayApplication.main(GateWayApplication.java:24) ~[classes!/:0.0.1-SNAPSHOT]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
    at java.base/, context: ngx.timer
2023/12/26 15:55:31 [warn] 53#53: *81 [lua] init.lua:961: java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:107) ~[dubbo-plugin-0.0.1-SNAPSHOT, context: ngx.timer
2023/12/26 15:55:31 [warn] 53#53: *81 [lua] init.lua:961: -exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88) ~[dubbo-plugin-0.0.1-SNAPSHOT-exec.jar:0.0.1-SNAPSHOT]
Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'socket.file' in value "${socket.file}"
    at org.springframework.util.PropertyPlaceholderHelper.parseStringValue(PropertyPlaceholderHelper.java:178) ~[spring-core-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.util.PropertyPlaceholderHelper.replacePlaceholders(PropertyPlaceholderHelper.java:124) ~[spring-core-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.core.env.AbstractPropertyResolver.doResolvePlaceholders(AbstractPropertyResolver.java:239) ~[spring-core-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.core.env.AbstractPropertyResolver.resolveRequiredPlaceholders(AbstractPropertyResolver.java:210) ~[spring-core-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.context.support.PropertySourcesPlaceholderConfigurer.lambda$processProperties$0(PropertySourcesPlaceholderConfigurer.java:175) ~[spring-context-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.resolveEmbeddedValue(AbstractBeanFactory.java:918) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1248) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1227) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:640) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:130) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399) ~[spring-beans-5.2.9.RELEASE.jar!/:5.2.9.RELEASE]
    ... 26 common frames omitted

, context: ngx.timer