scrapy/docs/topics
Adnan Awan d2290c35c2
Allow configuring the log level of the retry give-up message (#7567)
* Allow configuring the log level of the retry give-up message

The "Gave up retrying ..." message was always logged at ERROR, which
inflates the log_count/ERROR stat even when giving up on a request is
expected (e.g. broad crawls hitting dead hosts).

Add a RETRY_GIVE_UP_LOG_LEVEL setting, a give_up_log_level argument to
get_retry_request(), and a give_up_log_level request meta key to override
it per request. The value accepts a level name ("WARNING") or number
(logging.WARNING). The default ("ERROR") preserves the previous behaviour.

Fixes #5297, fixes #4622

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* Address Adrian's review feedback: simplify and reorganize docs

- Move give_up_log_level reqmeta section before max_retry_times (alphabetical order)
- Simplify give_up_log_level section in request-response.rst (brief, links to setting)
- Simplify RETRY_GIVE_UP_LOG_LEVEL setting docs in downloader-middleware.rst
- Change 'When initialized' to 'When set' in max_retry_times section
- Docs now follow pattern of linking to complementary setting/meta key rather than duplicating information

Per Adrian's feedback: keep docs concise and cross-link setting ↔ meta key

* Address Adrian's code review feedback on RETRY_GIVE_UP_LOG_LEVEL feature

- Fix alphabetical ordering of give_up_log_level in request-response.rst
- Remove circular references: change 'see X for details' to 'see also X' pattern
- Simplify docstring for give_up_log_level parameter (4 lines → 2 lines)
- Update test domains from www.scrapytest.org to example.com

* Apply suggestion from @AdrianAtZyte

* Minor changes

* Fix example formatting.

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Adrian <adrian@zyte.com>
Co-authored-by: Andrey Rakhmatullin <wrar@wrar.name>
2026-06-08 18:44:30 +05:00
..
_images Removed obsolete firebug-images 2018-08-23 16:19:13 +02:00
addons.rst Fix missing load_object import and grammar in docs (#7417) 2026-04-09 15:31:01 +02:00
api.rst Deprecate spider arguments of StatsCollector methods (#7011) 2025-08-20 09:52:22 +02:00
architecture.rst Fix missing load_object import and grammar in docs (#7417) 2026-04-09 15:31:01 +02:00
asyncio.rst Reactorless shell and other small shell improvements (#7395) 2026-04-08 18:24:51 +05:00
autothrottle.rst Deprecate CONCURRENT_REQUESTS_PER_IP setting (#6921) 2025-06-30 16:51:05 +05:00
benchmarking.rst Add sphinx-lint. (#6920) 2025-06-28 01:37:20 +02:00
broad-crawls.rst Change default priority queue to DownloaderAwarePriorityQueue (#6940) 2025-12-11 11:25:17 +01:00
commands.rst Remove outdated version marker directives (< 2.8.0) from documentation (#7198) 2025-12-22 10:00:39 +01:00
components.rst Rename DNS_RESOLVER to TWISTED_DNS_RESOLVER (#7361) 2026-04-08 13:58:35 +02:00
contracts.rst Merge branch 'master' of github.com:Laerte/scrapy 2024-08-27 07:16:10 -03:00
coroutines.rst Remove support for sync process_spider_output(). (#7504) 2026-05-15 16:36:05 +05:00
debug.rst Mention open_in_browser in the release notes 2023-11-29 12:13:04 +01:00
deploy.rst Run and fix linkcheck. (#6524) 2024-11-04 11:40:07 +01:00
developer-tools.rst Update tool versions (#7127) 2025-10-27 14:11:31 +01:00
djangoitem.rst Update documentation links 2016-03-03 16:28:33 +00:00
download-handlers.rst Add settings for TLS min/max version as a replacement for the TLS method (#6546) 2026-06-08 11:54:10 +02:00
downloader-middleware.rst Allow configuring the log level of the retry give-up message (#7567) 2026-06-08 18:44:30 +05:00
dynamic-content.rst Deprecate FormRequest in favor of form2request (#6438) 2026-05-04 22:38:29 +05:00
exceptions.rst Remove outdated version marker directives (< 2.8.0) from documentation (#7198) 2025-12-22 10:00:39 +01:00
exporters.rst docs: switch `scrapy.Item` examples to dataclasses (#7513) 2026-06-08 12:40:28 +05:00
extensions.rst DOC -> Add missing documentation for CloseSpider & CoreStats (#7421) 2026-05-20 13:27:24 +05:00
feed-exports.rst Release notes for 2.15.0 (#7373) 2026-04-09 16:56:30 +05:00
item-pipeline.rst fix: missing self argument in ScreenshotPipeline constructor (#7248) 2026-02-13 09:42:26 +01:00
items.rst Item docs: mention Pydantic support (#6966) 2026-02-05 22:18:01 +04:00
jobs.rst Add security warning about pickle files in JOBDIR (#7274) 2026-02-20 19:36:26 +05:00
leaks.rst Deprecate FormRequest in favor of form2request (#6438) 2026-05-04 22:38:29 +05:00
link-extractors.rst Release notes for 2.15.0 (#7373) 2026-04-09 16:56:30 +05:00
loaders.rst docs: switch `scrapy.Item` examples to dataclasses (#7513) 2026-06-08 12:40:28 +05:00
logging.rst docs: document daily log file rotation (#7501) 2026-05-12 19:34:51 +05:00
media-pipeline.rst docs: switch `scrapy.Item` examples to dataclasses (#7513) 2026-06-08 12:40:28 +05:00
practices.rst Add settings for TLS min/max version as a replacement for the TLS method (#6546) 2026-06-08 11:54:10 +02:00
request-response.rst Allow configuring the log level of the retry give-up message (#7567) 2026-06-08 18:44:30 +05:00
scheduler.rst Add Jobdir documentation (#5260) 2026-02-06 22:33:02 +04:00
scrapyd.rst Use https:// for readthedocs links 2017-06-01 16:41:52 +02:00
selectors.rst Release notes for 2.15.0 (#7373) 2026-04-09 16:56:30 +05:00
settings.rst Add settings for TLS min/max version as a replacement for the TLS method (#6546) 2026-06-08 11:54:10 +02:00
shell.rst Release notes for 2.15.0 (#7373) 2026-04-09 16:56:30 +05:00
signals.rst Deprecate the mail API (#7263) 2026-03-24 21:31:12 +01:00
spider-middleware.rst Release notes for Scrapy 2.16.0. (#7536) 2026-05-19 17:26:21 +05:00
spiders.rst docs: switch `scrapy.Item` examples to dataclasses (#7513) 2026-06-08 12:40:28 +05:00
stats.rst Update tool versions (#7127) 2025-10-27 14:11:31 +01:00
telnetconsole.rst Fix small documentation wording issues (#7480) 2026-05-04 08:43:21 +02:00