V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
cy18
V2EX  ›  程序员

怀疑有程序在锁屏后偷偷占用 CPU,有什么软件可以存 CPU 占用率的日志么?

  •  
  •   cy18 · 2024-08-19 20:47:32 +08:00 · 3269 次点击
    这是一个创建于 406 天前的主题,其中的信息可能已经有所发展或是发生改变。

    笔记本平时 24 小时开机,下班回家后经常发现笔记本风扇在狂转,登录进系统后却没看到什么高 CPU 的程序,风扇也很快就停止了,我怀疑有什么程序在锁屏的时候偷偷占用后台 CPU 。 有什么软件可以在锁屏后记录 CPU 占用率的日志,用于后续分析的么?

    18 条回复    2024-08-20 15:22:05 +08:00
    CharlesWai
        1
    CharlesWai  
       2024-08-19 22:57:33 +08:00 via Android
    自己写吧,用 Windows API 阻止锁屏时候自动休眠,然后还是用 API 查占用率,分进程多线程往 SQL 写数据,再往图表上绘制分析
    1daydayde
        2
    1daydayde  
       2024-08-20 00:31:11 +08:00 via iPhone
    ??? 这不是前两天刚问过的?

    省流:windows 计划任务里面有休眠时候运行的
    1daydayde
        3
    1daydayde  
       2024-08-20 00:31:55 +08:00 via iPhone
    cy18
        4
    cy18  
    OP
       2024-08-20 01:05:09 +08:00
    @0312birdzhang #3 用这个帖子里的方法就看到 VisualStudio 和 Office 的两个自动更新程序,我关掉试试
    flynaj
        5
    flynaj  
       2024-08-20 01:30:06 +08:00 via Android
    计划任务里面有很多都是空闲的时候执行的,进行磁盘整理文件优化这个默认就启用的。
    sunshower
        6
    sunshower  
       2024-08-20 02:27:46 +08:00
    HWMonitor
    hwinfo
    都行
    zhangeric
        7
    zhangeric  
       2024-08-20 08:27:14 +08:00
    问 a 让其 i 写一个小程序嘛.
    tianhehechu
        8
    tianhehechu  
       2024-08-20 08:34:10 +08:00
    @0312birdzhang 不对吧。休眠是关机的一种,休眠后怎么会有程序运行?
    1daydayde
        9
    1daydayde  
       2024-08-20 08:37:27 +08:00 via iPhone
    @tianhehechu 说错了,是熄屏
    liuzhen
        10
    liuzhen  
       2024-08-20 08:51:22 +08:00
    息屏后用向日葵远程到机器上打开任务管理器的 cpu 选项就能看到了
    gohub
        11
    gohub  
       2024-08-20 09:15:03 +08:00
    电脑开启 snmp ,bat 做一个 snmp 监控,记录下 cpu ,内存磁盘使用
    gohub
        12
    gohub  
       2024-08-20 09:15:24 +08:00
    要开启 SNMP (简单网络管理协议)并编写一个使用 BAT 脚本监控电脑性能的方案,可以按照以下步骤进行:

    1. 启用 SNMP 服务
    在 Windows 上启用 SNMP 服务:

    启用 SNMP 服务:

    打开“控制面板” > “程序” > “启用或关闭 Windows 功能”。
    在“功能”列表中,找到并勾选“简单网络管理协议 (SNMP)”。
    点击“确定”以安装和启用 SNMP 服务。
    配置 SNMP 服务:

    打开“服务管理器”(按 Win + R ,输入 services.msc )。
    找到“SNMP 服务”,右键选择“属性”。
    在“安全”选项卡下,添加一个社区字符串,并设置相应的权限。
    在“代理”选项卡下,可以配置联系信息。
    启动 SNMP 服务,并设置启动类型为“自动”。
    2. 编写 BAT 脚本进行 SNMP 监控
    以下是一个示例 BAT 脚本,用于通过 SNMP 获取并记录 CPU 使用率和内存使用情况。脚本将使用 Windows 内置的 snmpget 命令来获取这些性能数据。

    bat
    复制代码
    @echo off
    setlocal

    REM 配置 SNMP 相关信息
    set SNMP_HOST=localhost
    set SNMP_COMMUNITY=public

    REM 配置监控的 OID
    set OID_CPU=.1.3.6.1.2.1.25.3.3.1.2.1
    set OID_MEM_TOTAL=.1.3.6.1.4.1.2021.4.5.0
    set OID_MEM_FREE=.1.3.6.1.4.1.2021.4.6.0

    REM 输出文件
    set OUTPUT_FILE=snmp_monitor.log

    :LOOP
    REM 获取 CPU 使用率
    for /f "tokens=4" %%a in ('snmpget -v 2c -c %SNMP_COMMUNITY% %SNMP_HOST% %OID_CPU%') do set CPU_USAGE=%%a

    REM 获取总内存和可用内存
    for /f "tokens=4" %%a in ('snmpget -v 2c -c %SNMP_COMMUNITY% %SNMP_HOST% %OID_MEM_TOTAL%') do set MEM_TOTAL=%%a
    for /f "tokens=4" %%a in ('snmpget -v 2c -c %SNMP_COMMUNITY% %SNMP_HOST% %OID_MEM_FREE%') do set MEM_FREE=%%a

    REM 计算内存使用率
    set /a MEM_USED=%MEM_TOTAL%-%MEM_FREE%
    set /a MEM_USAGE=(%MEM_USED%*100)/%MEM_TOTAL%

    REM 获取当前时间
    for /f %%a in ('echo %time%') do set TIME=%%a

    REM 记录到日志文件
    echo %DATE% %TIME% - CPU: %CPU_USAGE%%, Memory: %MEM_USAGE%%% >> %OUTPUT_FILE%

    REM 休眠 60 秒
    timeout /t 60 > nul
    goto LOOP
    3. 执行脚本
    将上述脚本保存为 .bat 文件,例如 snmp_monitor.bat 。
    双击该文件运行脚本。
    监控数据会持续写入 snmp_monitor.log 文件中。
    4. 查看日志
    日志文件 snmp_monitor.log 会记录每一分钟的 CPU 和内存使用情况。
    你可以打开该文件查看历史性能数据。
    这个脚本通过 SNMP 获取本地计算机的 CPU 和内存使用率,并将其记录到日志文件中。你可以根据需求修改 OID 来监控其他性能指标。
    谢谢 gpt
    allplay
        13
    allplay  
       2024-08-20 09:40:27 +08:00 via Android
    用 process 不拉屎 SEO
    allplay
        14
    allplay  
       2024-08-20 09:45:19 +08:00 via Android
    先 Windows 建一个电源配置,CPU 频率 5%。
    用 process lasso 的 idle saver 功能,电脑闲置比如 10 分钟后进入上面那个电源配置。
    无论杀毒、更新、维护,随便它什么后台都跑不起来,都得在最低处理器频率下运行。适合长时间静置的机器。
    当有键鼠操作、远程桌面进入时,process lasso 自动退出 idle saver 。
    bitmin
        15
    bitmin  
       2024-08-20 09:48:28 +08:00
    试试看 MSi AFTERBURNER ,有硬件监控,日志文件可以存储到自定义位置
    bitmin
        16
    bitmin  
       2024-08-20 09:51:24 +08:00
    @bitmin #15 看错了,这个没有记录进程信息,只有硬件信息。用 python psutil 自己写个日志试试
    jackmod
        17
    jackmod  
       2024-08-20 09:54:25 +08:00
    windows 自带的杀毒在跑
    yjd
        18
    yjd  
       2024-08-20 15:22:05 +08:00
    win 自带的性能监视器。就是干这个
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2188 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:21 · PVG 20:21 · LAX 05:21 · JFK 08:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.