监控和日志
监控和日志在微服务应用的日常开发运维中起到非常大的作用。我们在这里简单介绍一下将Spring Cloud应用部署到阿里云容器服务上后如何利用阿里云的监控和日志分析能力。本文为阿里云容器服务Spring Cloud应用开发系列文章的第八篇。
一、在阿里云容器服务上开发Spring Cloud微服务应用
三、服务发现
四、服务间通信与集成
五、服务智能路由
六、集中配置管理
七、高可用和容错
八、监控和日志(本文)
集中日志管理
如果不做特殊配置,Spring Boot应用会将日志信息输出到stdout上。阿里云容器服务缺省会将容器的stdout集中起来在界面上展示,用户不用做任何配置即可使用。
如果应用有文件日志输出,则可以在docker compose编排模版文件中通过aliyun.logs
标签指定日志文件的位置。
mysql:
image: xxxx
labels:
aliyun.logs: /var/log/mysql
日志存储与分析
上面提到的集中日志管理是没有持久化的,也无法进行分析,如果要存储并分析日志,就需要集成阿里云的日志服务。
集成日志服务的基本步骤为:开通阿里云日志服务,在容器集群中开启日志服务
:
在编排模版文件中声明输出到的log store。
db:
image: xxx
labels:
aliyun.log_store_dbstdout: stdout
详细内容参见集成日志服务
监控
应用、容器和资源监控
对于微服务应用来说,仅有容器和集群的监控是不够的,用户需要随时了解应用和服务的运行情况。阿里云容器服务提供了从应用、服务到容器和底层资源的完整监控体系。
在首页dashboard中可以清楚地看到每个集群的节点、应用、服务、容器的数目以及健康状况。
在应用页面里可以看到每个应用都包含哪些服务,服务状态,容器状态等。
在服务的详情页面可以看到CPU、内存、网络、I/O等多种健康指标的实时显示。
还有底层资源的状态显示页面也是一键可达。
这些可以满足大部分运维过程中对健康指标的监控。如果用户有对于应用的一些特殊监控需求,可以利用阿里云容器服务的监控扩展能力。
小节
阿里云容器服务提供了完整的日志和监控管理,结合阿里云监控可以满足用户绝大部分监控的需求。