.Net微服务实战之可观测性(二)

本文涉及的产品
应用实时监控服务ARMS - 应用监控,每月50GB免费额度
性能测试 PTS,5000VUM额度
可观测链路 OpenTelemetry 版,每月50GB免费额度
简介: .Net微服务实战之可观测性(二)

安装Prometheus


mkdir /var/prometheus
docker run -d --name=prometheus -p 9090:9090 prom/prometheus
docker cp prometheus:/etc/prometheus/prometheus.yml /var/prometheus/


删除之前的容器


docker run -d --name=prometheus -p 9090:9090 -v /var/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus


到浏览器输入地址访问,出现以下页面则成功


image.png

安装Grafana


docker run -d --name=grafana -p 3000:3000 grafana/grafana

安装完成后,使用admin/admin登录


image.png

安装Node Exporter


docker run -d -p 9100:9100 \
  -v "/proc:/host/proc:ro" \
  -v "/sys:/host/sys:ro" \
  -v "/:/rootfs:ro" \
  --net="host" \
  --restart always \
  prom/node-exporter


到浏览器输入地址访问(http://192.168.184.129:9100/metrics),出现以下页面则成功


image.png


配置Prometheus


vim /var/prometheus/prometheus.yml

添加以下配置 (注意格式)


- job_name: service-a
    static_configs:
      - targets: ["192.168.88.138:9100"]
        labels:
          instance: node
  - job_name: service-b
    static_configs:
      - targets: ["192.168.88.146:9100"]
        labels:
          instance: node
  - job_name: service-c
    static_configs:
      - targets: ["192.168.88.144:9100"]
        labels:
          instance: node


重新启动Prometheus,打开浏览器可以见下图


image.png


配置Grafana


添加数据源


image.png


导入模板,其他模板可以到 https://grafana.com/grafana/dashboards 查看


image.png


确认后则生成(注意修改主机名)


image.png


到这里完整的一次监控就完成,我们可以根据上诉的步骤添加容器和docker的监控

使用Docker Exporter监控容器


用docker进行安装
docker run --name docker_exporter --detach --restart always --volume "/var/run/docker.sock":"/var/run/docker.sock" --publish 9417:9417 prometheusnet/docker_exporter
在Prometheus进行配置,添加下面配置项
vim /var/prometheus/prometheus.yml
- job_name: "container"
    static_configs:
      - targets: ["192.168.88.138:9417"]


在grafana根据上面node-exporter的步骤进行导入对应的模板

https://grafana.com/grafana/dashboards/11467


image.png


使用docker metrics 监控docker

开启metrics
vim  /etc/docker/daemon.json
{
  "metrics-addr" : "192.168.88.146:9323",
  "experimental" : true
}
重启docker
systemctl daemon-reload
service docker restart
配置Prometheus
- job_name: "docker"
    static_configs:
      - targets: ["192.168.88.138:9323", "192.168.88.146:9323", "192.168.88.146:9323"]



导入模板https://grafana.com/grafana/dashboards/1229


image.png

相关实践学习
通过可观测可视化Grafana版进行数据可视化展示与分析
使用可观测可视化Grafana版进行数据可视化展示与分析。
目录
相关文章
|
2月前
|
存储 缓存 数据库
【万字长文】微服务整合Shiro+Jwt,源码分析鉴权实战
介绍如何整合Spring Boot、Shiro和Jwt,以实现一个支持RBAC的无状态认证系统。通过生成JWT token,实现用户无状态登录,并能根据用户角色动态鉴权,而非使用Shiro提供的注解,将角色和权限信息硬编码。此外,文章还探讨了如何对Shiro的异常进行统一捕获和处理。作为应届生,笔者在学习Shiro的过程中进行了一些源码分析,尽管可能存在不足和Bug,但希望能为同样需要实现权限管理的开发者提供参考,并欢迎各位大佬指正完善。
257 65
【万字长文】微服务整合Shiro+Jwt,源码分析鉴权实战
|
8天前
|
开发框架 前端开发 .NET
七天.NET 8操作SQLite入门到实战 - (3)第七天Blazor学生管理页面编写和接口对接
七天.NET 8操作SQLite入门到实战 - (3)第七天Blazor学生管理页面编写和接口对接
|
2月前
|
开发框架 移动开发 JavaScript
SpringCloud微服务实战——搭建企业级开发框架(四十七):【移动开发】整合uni-app搭建移动端快速开发框架-添加Axios并实现登录功能
在uni-app中,使用axios实现网络请求和登录功能涉及以下几个关键步骤: 1. **安装axios和axios-auth-refresh**: 在项目的`package.json`中添加axios和axios-auth-refresh依赖,可以通过HBuilderX的终端窗口运行`yarn add axios axios-auth-refresh`命令来安装。 2. **配置自定义常量**: 创建`project.config.js`文件,配置全局常量,如API基础URL、TenantId、APP_CLIENT_ID和APP_CLIENT_SECRET等。
194 60
|
4天前
|
Kubernetes Nacos 微服务
【技术难题破解】Nacos v2.2.3 + K8s 微服务注册:强制删除 Pod 却不消失?!7步排查法+实战代码,手把手教你解决Nacos Pod僵死问题,让服务瞬间满血复活!
【8月更文挑战第15天】Nacos作为微服务注册与配置中心受到欢迎,但有时会遇到“v2.2.3 k8s 微服务注册nacos强制删除 pod不消失”的问题。本文介绍此现象及其解决方法,帮助开发者确保服务稳定运行。首先需检查Pod状态与事件、配置文件及Nacos配置,确认无误后可调整Pod生命周期管理,并检查Kubernetes版本兼容性。若问题持续,考虑使用Finalizers、审查Nacos日志或借助Kubernetes诊断工具。必要时,可尝试手动强制删除Pod。通过系统排查,通常能有效解决此问题。
10 0
|
1月前
|
监控 Java 微服务
Spring Boot微服务部署与监控的实战指南
【7月更文挑战第19天】Spring Boot微服务的部署与监控是保障应用稳定运行和高效维护的重要环节。通过容器化部署和云平台支持,可以实现微服务的快速部署和弹性伸缩。而利用Actuator、Prometheus、Grafana等监控工具,可以实时获取应用的运行状态和性能指标,及时发现并解决问题。在实际操作中,还需根据应用的具体需求和场景,选择合适的部署和监控方案,以达到最佳效果。
|
1月前
|
人工智能 物联网 开发者
**.NET技术革新赋能软件开发:从.NET 5的性能飞跃、跨平台支持,到微服务、物联网、AI和游戏开发的广泛应用。
【7月更文挑战第4天】**.NET技术革新赋能软件开发:从.NET 5的性能飞跃、跨平台支持,到微服务、物联网、AI和游戏开发的广泛应用。随着云集成深化、开源社区壮大,未来将聚焦性能优化、云原生应用及新兴技术融合,培养更多开发者,驱动软件创新。**
122 1
|
2月前
|
JSON Java 程序员
马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day1最快 最全(2)
马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day1最快 最全(2)
31 3
|
2月前
|
程序员 测试技术 Docker
黑马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day3 全网最全
黑马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day3 全网最全(1)
168 1
|
2月前
|
SQL Java 程序员
马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day1最快 最全(1)
马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day1最快 最全(1)
160 1
|
2月前
|
机器学习/深度学习 人工智能 Java
【Sping Boot与机器学习融合:构建赋能AI的微服务应用实战】
【Sping Boot与机器学习融合:构建赋能AI的微服务应用实战】
62 1