尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Python Flask 容器化应用链路可观测

Python Flask 容器化应用链路可观测 简介Flask是一个轻量级Web应用框架, 它基于某种事物, 因简洁灵动被称作“微框架”, 它提供Web开发所需的核心功能, 像是请求处理、路由管理等这般之类, 不过它不会硬性要求开发者去使用特定的工具或者库, 这样的设计致使Flask非常容易上手, 并且同时还拥有良好的扩展性, 能够去满足从小型直至中型Web应用的开发需求。在当下现代分布式系统架构情形当中, 一个请求常常需要去调用好多不同的服务才能够完成, 链路跟踪技术因此就产生了, 它凭借记录请求于各个服务之间的流转路径, 给开发者以及运维人员提供了一种相当强大的工具, 依靠链路跟踪, 可以迅速定位系统里的问题, 还能分析性能方面的瓶颈, 从而去优化整个系统的运行效率。一款面向开发、运维、测试及业务团队的实时数据监测平台是观测云, 它专注于解决云计算和云原生时代系统全链路的可观测性问题。它能够全面覆盖云平台、云原生架构、用户访问监测以及监控告警等全方位的解决方案, 提供包括基础设施监测、日志与指标管理、包括应用性能监测等业务相关的监测需求。观测云支持协议, 可实现相关分析, 能将链路数据与基础设施、日志、用户访问监测等进行关联分析, 对分布式架构应用的端到端链路分析。在观测云里, 于“应用性能监测 链路”这个模块当中, 用户能够便利地去搜索链路数据, 还能够筛选链路数据, 也能够导出链路数据, 进而查看链路详情, 并且能够借助火焰图, 以及Span列表, 还有瀑布图等可视化工具, 对链路性能进行周全且深度的分析。这里有一个简洁的Flask应用示范, 呈现了怎样运用其来做链路追踪, 达成对应用的性能监视以及问题查找定位。前置条件集成方案部署登上可进行观测的云的控制台, 轻触「集成」, 再找到另一个缺失内容标注为「的」的选项, 然后选中这里面的「Linux」, 接着去点击那个被称作“复制”的图标。把复制的安装命令粘贴到 Linux 主机上执行。开通采集器该设备内部设置了几十种采集器, 开启采用这些采集器的功能十分便利顺畅不需要 , 仅仅只需将出自官方所颁布给出的原本文件 , 加以变换成以“.conf”作为文件结尾名称, 在此处我们所要做的仅仅是去创建以“.conf”作为后缀的文件, 随后重启这项程序运作。cd /usr/local/datakit/conf.d/ddtrace/ cp ddtrace.conf.sample ddtrace.conf重启datakit service -R部署 项目在 Linux 的 data 目录创建四个文件。/data/ ├── app.py ├── requirements.txt ├── Dockerfile └── docker-compose.ymlapp.py# app.py from flask import Flask app Flask(__name__) app.route(/) def hello(): return Hello, Docker with ddtrace! if __name__ __main__: app.run(host0.0.0.0, port5000).txt在 .txt 文件中列出所有需要的依赖包包括 。flask ddtrace执行“-run”这般表述可谓是一个专门用之于命令行环境的工具, 其作用在于开启以及追踪那应用程序, 它能够凭借自带机制自动针对那些支持范围内的库展开追踪。# 使用官方Python镜像作为基础镜像 FROM python:3.9-slim # 设置工作目录 WORKDIR /app # 将当前目录下的所有文件复制到工作目录中 COPY . /app # 安装依赖 RUN pip install --no-cache-dir -r requirements.txt # 暴露应用程序运行的端口 EXPOSE 5000 # 定义容器启动时执行的命令 CMD [ddtrace-run, python, app.py]-.ymlversion: 3.8 services: python-app: image: pubrepo.guance.com/python-demo-app:v1 container_name: my-python-app network_mode: host # 使用主机网络模式 restart: unless-stopped working_dir: /app ports: - 5000:5000 volumes: - .:/app environment: - DD_SERVICEpython-demo - DD_ENVpre - DD_VERSION1.0.0.0 - DD_AGENT_HOSTlocalhost - DD_TRACE_AGENT_PORT9529 - DD_LOGS_INJECTIONtrue启动项目运行以下命令来构建和运行 容器。docker build -t pubrepo.guance.com/python-demo-app:v1 -f Dockerfile . docker-compose up效果展示开启浏览器, 前往 :五千, 你理应会瞧见 “哈喽, 跟” 的网页。进入观测云控制台进行登录操作, 接着点击「应用性能监测」项下的「链路」, 借此进入到一个 span 之中, 对火焰图、Span 列表以及瀑布图等予以查看。
返回列表