SpringCloudAlibaba 网关gateway整合sentinel日志默认路径修改

SpringCloudAlibaba 网关gateway整合sentinel 实现网关限流熔断

问题提出

今天运维突然告诉我 在服务器上内存满了 原因是nacos日志高达3G,然后将日志文件发给我看了一下之后才发现是gateway整合sentinel使用了默认日志地址导致日志生成地址直接存在与根路径下而且一下存在多个日志。提出问题当然要解决问题,当然以下就是我解决问题的方法

原有文件以及引入jar

引入jar包

复制代码
		<!-- sentinel 网关限流 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-sentinel-gateway</artifactId>
        </dependency>
        <!-- 熔断限流组件 -->
        <dependency>
            <groupId>com.yjwl.utils.sentinel</groupId>
            <artifactId>sentinel-spring-boot-starter</artifactId>
        </dependency>

yml中配置

复制代码
spring:
  cloud:
    sentinel:
      filter:
        enabled: false
      datasource:
        # 名称随意
        flow:
          nacos:
            server-addr: 172.16.22.21:18848
            dataId: ${spring.application.name}-sentinel-gw-flow
            groupId: SENTINEL
            # 规则类型,取值见:
            # com.alibaba.cloud.sentinel.datasource.RuleType
            rule-type: gw-flow

存在问题

所有的资源访问都会产生秒级监控日志,日志文件默认为

复制代码
${user_home}/logs/csp/${app_name}-${pid}-metrics.log

(会随时间滚动) 从而会导致在项目地址的跟目录下会产生很多关于sentinel的日志文件,所以在初始配置时需要添加yml日志指定输出路径

问题解决

修改yml配置

复制代码
spring:
  cloud:
    sentinel:
      filter:
        enabled: false
      log:
        dir: \opt\csp\
      datasource:
        # 名称随意
        flow:
          nacos:
            server-addr: 172.16.22.21:18848
            dataId: ${spring.application.name}-sentinel-gw-flow
            groupId: SENTINEL
            # 规则类型,取值见:
            # com.alibaba.cloud.sentinel.datasource.RuleType
            rule-type: gw-flow

控制台输出日志为:

然后在对应的linux文件地址下也可以看到对应的日志文件

官方文档接口:https://sentinelguard.io/zh-cn/docs/logs.html 有感兴趣的小伙伴可以直接查看官方文档。

github源码地址日志配置json文件地址:https://github.com/alibaba/spring-cloud-alibaba/blob/2.2.x/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-sentinel/src/main/resources/META-INF/additional-spring-configuration-metadata.json

相关推荐
半支烟隐 pzishuo1 天前
Kubernetes Gateway API 完全指南
容器·kubernetes·gateway
lee_curry1 天前
RuoYi Cloud:Gateway、Auth、System 接入 Prometheus JVM 监控,并练习多副本、滚动升级和故障恢复
jvm·gateway·prometheus
mqiqe1 天前
构建企业级 AI 原生架构:LLM Gateway、RAG、Agent 与 MCP 的协同关系解析
人工智能·架构·gateway
mqiqe1 天前
LLM Gateway:企业级大模型应用的“统一控制平面”
平面·flask·gateway
xiaoxiangsiyan2 天前
LNMP + Redis Sentinel 高可用架构部署手册(续)
运维·网络·数据库·redis·缓存·架构·sentinel
敲代码的嘎仔2 天前
从零搭建微服务:Spring Cloud Alibaba 全家桶踩坑实录(Nacos + OpenFeign + Gateway + Sentinel)
java·spring boot·spring·spring cloud·微服务·gateway·sentinel
小罗水5 天前
第14章 Sentinel 限流与 AI 降级
人工智能·sentinel
he___H5 天前
Sentinel使用实操
java·开发语言·sentinel
随风M记忆s6 天前
GEE&Python-demo:利用Sentinel-监测北京奥林匹克森林公园年NDVI变化(附Python版)
开发语言·python·sentinel
X-⃢_⃢-X6 天前
六、Sentinel
网络·数据库·sentinel