Skip to content

Commit 1c06127

Browse files
Allow customizing server_name and release tags with corresponding fields in Sentry config (#413)
1 parent a426616 commit 1c06127

File tree

4 files changed

+19
-4
lines changed

4 files changed

+19
-4
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Changelog
22

3+
## [Unreleased]
4+
5+
### Added
6+
7+
* sentry: Allow customizing `server_name` and `release` tags with corresponding fields in Sentry config.
8+
39
## [5.2.2] - 2022-07-03
410

511
### Fixed

docs/config/reference.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -474,13 +474,15 @@ http: HTTP client configuration</p>
474474

475475
<dl class="py class">
476476
<dt class="sig sig-object py" id="dipdup.config.SentryConfig">
477-
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">dipdup.config.</span></span><span class="sig-name descname"><span class="pre">SentryConfig</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dsn</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">environment</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">debug</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#dipdup.config.SentryConfig" title="Permalink to this definition">¶</a></dt>
477+
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">dipdup.config.</span></span><span class="sig-name descname"><span class="pre">SentryConfig</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dsn</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">environment</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">server_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">release</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Optional</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">debug</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#dipdup.config.SentryConfig" title="Permalink to this definition">¶</a></dt>
478478
<dd><p>Config for Sentry integration.</p>
479479
<dl class="field-list simple">
480480
<dt class="field-odd">Parameters</dt>
481481
<dd class="field-odd"><ul class="simple">
482482
<li><p><strong>dsn</strong> – DSN of the Sentry instance</p></li>
483-
<li><p><strong>environment</strong> – Environment to report to Sentry (informational only)</p></li>
483+
<li><p><strong>environment</strong> – Environment (defaults to <cite>production</cite>)</p></li>
484+
<li><p><strong>server_name</strong> – Server name (defaults to hostname)</p></li>
485+
<li><p><strong>release</strong> – Release version (defaults to DipDup version)</p></li>
484486
<li><p><strong>debug</strong> – Catch warning messages and more context</p></li>
485487
</ul>
486488
</dd>

src/dipdup/cli.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,11 +133,14 @@ def _init_sentry(config: DipDupConfig) -> None:
133133
sentry_sdk.init(
134134
dsn=config.sentry.dsn,
135135
environment=config.sentry.environment,
136+
server_name=config.sentry.server_name,
137+
release=config.sentry.release or __version__,
136138
integrations=integrations,
137-
release=__version__,
138139
attach_stacktrace=attach_stacktrace,
139140
before_send=_sentry_before_send,
140141
)
142+
sentry_sdk.set_tag('dipdup_version', __version__)
143+
sentry_sdk.set_tag('dipdup_package', config.package)
141144

142145

143146
async def _check_version() -> None:

src/dipdup/config.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1076,12 +1076,16 @@ class SentryConfig:
10761076
"""Config for Sentry integration.
10771077
10781078
:param dsn: DSN of the Sentry instance
1079-
:param environment: Environment to report to Sentry (informational only)
1079+
:param environment: Environment (defaults to `production`)
1080+
:param server_name: Server name (defaults to hostname)
1081+
:param release: Release version (defaults to DipDup version)
10801082
:param debug: Catch warning messages and more context
10811083
"""
10821084

10831085
dsn: str
10841086
environment: Optional[str] = None
1087+
server_name: Optional[str] = None
1088+
release: Optional[str] = None
10851089
debug: bool = False
10861090

10871091

0 commit comments

Comments
 (0)