2021年6月22日 Gateway网关启动相关错误记录
一、无法启动
Disconnected from the target VM, address: '127.0.0.1:9719', transport: 'socket'
启动后直接中断连接,开始以为是端口号被占用,所以修改端口号,仍然没有效果;
其他服务启动时,日志配置报错“RuntimeException in Action for tag [property] StringIndexOutOfBoundsException”;排查发现是定义property时,日志存储路径用了反斜杠“\”,改为斜杠“/”后,启动正常。
而网关服务中日志存储路径也修改好了,其他的配置没有,Nacos注册中心本地也在单例运行,所以仍然判断是日志配置文件有问题,导致服务无法启动。
网络上有篇文章,讲是缺少开发、测试环境的配置,排查本地工程时,发现也有配置:
<!-- 开发环境和测试环境 -->
<springProfile name="dev,test">
<logger name="com.mahalalel" level="INFO">
<appender-ref ref="CONSOLE"/>
</logger>
</springProfile>
但是,比对后发现有个关键的配置没有添加
<root level="INFO">
<appender-ref ref="CONSOLE"/>
</root>
在springProfile中添加之后,启动后也有日志输出
2、启动过程中报错:
异常如下:
Property: spring.cloud.gateway.routes[0].uri
Value: null
Reason: 不能为null
排查application.yml配置文件,发现也有配置路由,仔细看了下异常信息,发现配置路由时书写错误。
错误配置:
spring:
cloud:
gateway:
routes:# 路由配置
- id: service-core
url: lb://service-core
predicates:
- Path=/*/core/**
uri写成了url,故此无法启动;修改后可以正常启动。
正确的配置:
spring:
cloud:
gateway:
routes:# 路由配置
- id: service-core
uri: lb://service-core
predicates:
- Path=/*/core/**