查看/输出scrapy Spider运行时的内存使用情况

问题描述 投票:0回答:1

我想更好地监控 scrapy 蜘蛛在运行时的内存使用情况(上下文:我在 Heroku 上运行它,看看如何重组抓取以更多地保持在我正在使用的测功机的范围内) .

我已打开

MEMUSAGE_*
设置。但为了更密切的监控,我想知道......

  1. 有什么方法可以让蜘蛛在运行时输出当前的内存使用情况吗?我正在考虑可以在蜘蛛代码中间的

    print
    语句中使用一些东西

  2. 当蜘蛛运行时,我如何才能看到它使用了多少内存?我想我在

    top -o cpu
    的输出中看到它是
    python 3.12
    ,但我不确定它是蜘蛛,因为它的内存使用量似乎不像在 Heroku 上运行的同一个蜘蛛那样快速累积

scrapy
1个回答
0
投票
只需复制从

MemoryUsage

扩展
获取内存使用情况的代码并在代码中调用它:

import resource def get_virtual_size() -> int: size: int = resource.getrusage(self.resource.RUSAGE_SELF).ru_maxrss if sys.platform != "darwin": # on macOS ru_maxrss is in bytes, on Linux it is in KB size *= 1024 return size
    
© www.soinside.com 2019 - 2024. All rights reserved.