diff --git a/sentry_sdk/client.py b/sentry_sdk/client.py index 628cb00ee3..63a1205f57 100644 --- a/sentry_sdk/client.py +++ b/sentry_sdk/client.py @@ -48,6 +48,9 @@ def _get_options(*args, **kwargs): else: dsn = None + if len(args) > 1: + raise TypeError("Only single positional argument is expected") + rv = dict(DEFAULT_OPTIONS) options = dict(*args, **kwargs) if dsn is not None and options.get("dsn") is None: diff --git a/tests/test_client.py b/tests/test_client.py index c8dd6955fe..ffdb831e39 100644 --- a/tests/test_client.py +++ b/tests/test_client.py @@ -887,3 +887,9 @@ def test_max_breadcrumbs_option( capture_message("dogs are great") assert len(events[0]["breadcrumbs"]["values"]) == expected_breadcrumbs + + +def test_multiple_positional_args(sentry_init): + with pytest.raises(TypeError) as exinfo: + sentry_init(1, None) + assert "Only single positional argument is expected" in str(exinfo.value)