uptime-kuma: Slowness with 100% CPU utilization
⚠️ Please verify that this bug has NOT been raised before.
- I checked and didn’t find similar issue
🛡️ Security Policy
- I agree to have read this project Security Policy
Description
No response
👟 Reproduction steps
I noticed a huge slowness on my Uptime Kuma monitor and noticed that the CPU utilization is 100%, after increasing the CPU cores it still hits 100%, check the following screenshots:
and found the following Docker logs
am using Ubuntu 22.04 LTS

with the following docker version
Uptime kuma is on the latest version and i tried restarting both docker and server

👀 Expected behavior
CPU utilization caused by “node” might be the main reason of the slowness.
😓 Actual Behavior
Slowness
🐻 Uptime-Kuma Version
1.20.2
💻 Operating System and Arch
Ubunto 22.04 LTS
🌐 Browser
Google Chrome Version 110.0.5481.178
🐋 Docker Version
20.10.12
🟩 NodeJS Version
No response
📝 Relevant log output
Trace: Error: aborted
at PendingOperation.abort (/app/node_modules/tarn/dist/PendingOperation.js:25:21)
at /app/node_modules/tarn/dist/Pool.js:208:25
at Array.map (<anonymous>)
at /app/node_modules/tarn/dist/Pool.js:207:53
at async Client_SQLite3.destroy (/app/node_modules/knex/lib/client.js:338:9)
at async RedBeanNode.close (/app/node_modules/redbean-node/dist/redbean-node.js:375:9)
at async Function.close (/app/server/database.js:435:13)
at async Object.shutdownFunction [as onShutdown] (/app/server/server.js:1771:5)
at process.<anonymous> (/app/server/server.js:1794:13)
at process.emit (node:events:525:35)
at emit (node:internal/process/promises:140:20)
at processPromiseRejections (node:internal/process/promises:274:27)
at processTicksAndRejections (node:internal/process/task_queues:97:32)
If you keep encountering errors, please report to https://github.com/louislam/uptime-kuma/issues
Trace: Error: aborted
at PendingOperation.abort (/app/node_modules/tarn/dist/PendingOperation.js:25:21)
at /app/node_modules/tarn/dist/Pool.js:208:25
at Array.map (<anonymous>)
at /app/node_modules/tarn/dist/Pool.js:207:53
at async Client_SQLite3.destroy (/app/node_modules/knex/lib/client.js:338:9)
at async RedBeanNode.close (/app/node_modules/redbean-node/dist/redbean-node.js:375:9)
at async Function.close (/app/server/database.js:435:13)
at async Object.shutdownFunction [as onShutdown] (/app/server/server.js:1771:5)
at process.<anonymous> (/app/server/server.js:1794:13)
at process.emit (node:events:525:35)
at emit (node:internal/process/promises:140:20)
at processPromiseRejections (node:internal/process/promises:274:27)
at processTicksAndRejections (node:internal/process/task_queues:97:32)
If you keep encountering errors, please report to https://github.com/louislam/uptime-kuma/issues
Trace: Error: aborted
at PendingOperation.abort (/app/node_modules/tarn/dist/PendingOperation.js:25:21)
at /app/node_modules/tarn/dist/Pool.js:208:25
at Array.map (<anonymous>)
at /app/node_modules/tarn/dist/Pool.js:207:53
at async Client_SQLite3.destroy (/app/node_modules/knex/lib/client.js:338:9)
at async RedBeanNode.close (/app/node_modules/redbean-node/dist/redbean-node.js:375:9)
at async Function.close (/app/server/database.js:435:13)
at async Object.shutdownFunction [as onShutdown] (/app/server/server.js:1771:5)
at process.<anonymous> (/app/server/server.js:1794:13)
at process.emit (node:events:525:35)
at emit (node:internal/process/promises:140:20)
at processPromiseRejections (node:internal/process/promises:274:27)
at processTicksAndRejections (node:internal/process/task_queues:97:32)
If you keep encountering errors, please report to https://github.com/louislam/uptime-kuma/issues
Trace: Error: aborted
at PendingOperation.abort (/app/node_modules/tarn/dist/PendingOperation.js:25:21)
at /app/node_modules/tarn/dist/Pool.js:208:25
at Array.map (<anonymous>)
at /app/node_modules/tarn/dist/Pool.js:207:53
at async Client_SQLite3.destroy (/app/node_modules/knex/lib/client.js:338:9)
at async RedBeanNode.close (/app/node_modules/redbean-node/dist/redbean-node.js:375:9)
at async Function.close (/app/server/database.js:435:13)
at async Object.shutdownFunction [as onShutdown] (/app/server/server.js:1771:5)
at process.<anonymous> (/app/server/server.js:1794:13)
at process.emit (node:events:525:35)
at emit (node:internal/process/promises:140:20)
at processPromiseRejections (node:internal/process/promises:274:27)
at processTicksAndRejections (node:internal/process/task_queues:97:32)
If you keep encountering errors, please report to https://github.com/louislam/uptime-kuma/issues
Trace: Error: aborted
at PendingOperation.abort (/app/node_modules/tarn/dist/PendingOperation.js:25:21)
at /app/node_modules/tarn/dist/Pool.js:208:25
at Array.map (<anonymous>)
at /app/node_modules/tarn/dist/Pool.js:207:53
at async Client_SQLite3.destroy (/app/node_modules/knex/lib/client.js:338:9)
at async RedBeanNode.close (/app/node_modules/redbean-node/dist/redbean-node.js:375:9)
at async Function.close (/app/server/database.js:435:13)
at async Object.shutdownFunction [as onShutdown] (/app/server/server.js:1771:5)
at process.<anonymous> (/app/server/server.js:1794:13)
at process.emit (node:events:525:35)
at emit (node:internal/process/promises:140:20)
at processPromiseRejections (node:internal/process/promises:274:27)
at processTicksAndRejections (node:internal/process/task_queues:97:32)
If you keep encountering errors, please report to https://github.com/louislam/uptime-kuma/issues
Trace: Error: aborted
at PendingOperation.abort (/app/node_modules/tarn/dist/PendingOperation.js:25:21)
at /app/node_modules/tarn/dist/Pool.js:208:25
at Array.map (<anonymous>)
at /app/node_modules/tarn/dist/Pool.js:207:53
at async Client_SQLite3.destroy (/app/node_modules/knex/lib/client.js:338:9)
at async RedBeanNode.close (/app/node_modules/redbean-node/dist/redbean-node.js:375:9)
at async Function.close (/app/server/database.js:435:13)
at async Object.shutdownFunction [as onShutdown] (/app/server/server.js:1771:5)
at process.<anonymous> (/app/server/server.js:1794:13)
at process.emit (node:events:525:35)
at emit (node:internal/process/promises:140:20)
at processPromiseRejections (node:internal/process/promises:274:27)
at processTicksAndRejections (node:internal/process/task_queues:97:32)
If you keep encountering errors, please report to https://github.com/louislam/uptime-kuma/issues
Trace: Error: aborted
at PendingOperation.abort (/app/node_modules/tarn/dist/PendingOperation.js:25:21)
at /app/node_modules/tarn/dist/Pool.js:208:25
at Array.map (<anonymous>)
at /app/node_modules/tarn/dist/Pool.js:207:53
at async Client_SQLite3.destroy (/app/node_modules/knex/lib/client.js:338:9)
at async RedBeanNode.close (/app/node_modules/redbean-node/dist/redbean-node.js:375:9)
at async Function.close (/app/server/database.js:435:13)
at async Object.shutdownFunction [as onShutdown] (/app/server/server.js:1771:5)
at process.<anonymous> (/app/server/server.js:1794:13)
at process.emit (node:events:525:35)
at emit (node:internal/process/promises:140:20)
at processPromiseRejections (node:internal/process/promises:274:27)
at processTicksAndRejections (node:internal/process/task_queues:97:32)
If you keep encountering errors, please report to https://github.com/louislam/uptime-kuma/issues
Trace: Error: aborted
at PendingOperation.abort (/app/node_modules/tarn/dist/PendingOperation.js:25:21)
at /app/node_modules/tarn/dist/Pool.js:208:25
at Array.map (<anonymous>)
at /app/node_modules/tarn/dist/Pool.js:207:53
at async Client_SQLite3.destroy (/app/node_modules/knex/lib/client.js:338:9)
at async RedBeanNode.close (/app/node_modules/redbean-node/dist/redbean-node.js:375:9)
at async Function.close (/app/server/database.js:435:13)
at async Object.shutdownFunction [as onShutdown] (/app/server/server.js:1771:5)
at process.<anonymous> (/app/server/server.js:1794:13)
at process.emit (node:events:525:35)
at emit (node:internal/process/promises:140:20)
at processPromiseRejections (node:internal/process/promises:274:27)
at processTicksAndRejections (node:internal/process/task_queues:97:32)
If you keep encountering errors, please report to https://github.com/louislam/uptime-kuma/issues
About this issue
- Original URL
- State: open
- Created a year ago
- Reactions: 1
- Comments: 15 (5 by maintainers)
If other people run into these sorts of issues, you may be able to help by defining the environment variable
NODE_OPTIONSwith the value--cpu-prof --diagnostic-dir=/app/data. If you run Uptime Kuma for a short time and reproduce the slowness then exit it gracefully, the.cpuprofilefile created in the data directory will provide detailed information about what was going on when it was running slowly. (the resulting profile file can be loaded into Chrome’s dev tools to inspect it)I can confirm @AyhamZz 's observations.
For the past couple of days, Uptime is very, very slow.
For example, when you open it, it takes up to a minute until the monitors are shown.
I do have a recurring maintenance window. Yet, there were no issues when I set it up about 3-4 weeks ago. Must be a more recent version that causes the problems.
I run Uptime as a Docker container on an Ubuntu 22.04 LTS VM.
Since I am not really envolved on a technical level with your (great) project, @louislam , maybe you tell me how I can contribute to find and fix this bug.
@louislam
I saw the number of open tickets. Seems like a lot to do.
Do you plan to fix this maintenance window issue? It’s not urgent for me but would be nice to have in general. I recommend your tool to a lot of friends starting home labs.
Btw: I bought a 5 Dollar sponsorship. Thanks for your effort.
@louislam
I will try that out, disabling maintenance windows.
However, I have to admit that they are quite a useful feature.
I just found that my local SQLite with all the history was about 2 GB, even though I only monitor the last 7 days with about 50 monitors. Seems to confirm your finding that “it will keep generating time slots endlessly”.