我目前有三个记录错误的库。一种用于 Django,一种用于 Pyramid,另一种用于纯 Python。他们目前都有单独的实现来做同样的事情,以特定的方式记录错误和消息。
我想将它们全部整合到一个库中,这样新功能就不必在三个独立的库中重复。用户只需要安装一个库,然后就可以选择是否需要 Django 或 Pyramid 支持。
一种解决方案是将 Django 和 Pyramid 代码粘贴到纯 Python 库中,并让两个 Web 框架共享相同的日志记录代码。另一种解决方案是将 Web 框架保存在单独的库中,但去掉日志实现,并放入普通的 Python 库中,使其成为依赖项。
这样做的推荐方法是什么?有更好的解决方案吗?