getsentry / getsentry/sentry-python

Capture Loguru template

オープン
#5,106 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
Feature Integration: Loguru Logs Python
主要言語
Python
スター
2.2k
フォーク
669
平均マージ
1日 1時間
マージ済み PR(30日)
213

説明

### Problem Statement

We currently don't have access to the raw message before formatting in Loguru logs so we can't add it as `sentry.message.template`.

### Solution Brainstorm

1. The most feasible way forward is getting the template from Loguru directly. Submitted a PR for that [https://github.com/Delgan/loguru/pull/1413](https://github.com/Delgan/loguru/pull/1413). This issue is mostly for internal tracking purposes and extra context.
2. The other solution would be monkeypatching the [`_log` method](https://github.com/Delgan/loguru/blob/66d6de168ba6c286a46822f3acdcdbf0225bbad0/loguru/\_logger.py#L2028) that takes care of creating the record. This would enable us to get the raw message since the method gets it as an argument. However, we don't have a way to get the formatted message afterwards: all processing happens directly in the `_log` function and nothing is returned; instead, the records are sent to the sinks directly. We could find a way to associate a raw message we've seen in the monkeypatched `_log` method with the message we receive in our sink, but that'd mean introducing some kind of book-keeping structure which I'd like to avoid. (And since Loguru's maintainer said they'd be fine with 1, we're not doing this unless anything changes.)

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。