9、微服务应用构建:日志、交互与领域建模

微服务应用构建:日志、交互与领域建模

1. 集中式日志机制

1.1 日志模块选择

在企业级应用中,日志是至关重要的。对于部署在单台服务器上的单体应用,日志记录通常是将服务事务的日志消息写入单个文件。然而,在独立的微服务架构中,尤其是当这些服务部署在不同的服务器或 Docker 容器中时,日志记录变得复杂。Python 的内置 logging 模块在支持异步和同步 API 服务的 FastAPI 实例上使用时,会产生错误日志。为了避免这个问题,我们选择使用 Loguru 扩展,它能完全支持 FastAPI 框架。安装 Loguru 可以使用以下命令:

pip install loguru

1.2 配置 Loguru

Loguru 是一个简单易用的日志扩展,即使不进行太多配置,也可以使用其默认的 sys.stderr 处理程序进行日志记录。为了将所有日志消息存储在一个日志文件中,我们需要在顶级应用的 main.py 组件中,在 FastAPI 实例化之后添加以下代码:

from loguru import logger
from uuid import uuid4
app = FastAPI()
app.include_router (university.router, 
                    dependencies=[Depends(call_api_gateway)], 
                    prefix='/ch04')
logger
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值