GoogleCloudPlatform / GoogleCloudPlatform/konlet
don't spam serial console many times a second with image pull updates
- Dominant language
- Go
- Stars
- 88
- Forks
- 24
- PR merge metrics
- No merged PRs in 30d
Description
konlet is spamming my GCE VM's serial console with container layer pull updates (completed with colored ASCII art?) more than once a second:
These all happened from 30.11 seconds to 30.13 seconds after boot:
```
[ 30.115770] konlet-startup[437]: {"status":"Pulling fs layer","progressDetail":{},"id":"6a5a5368e0c2"}
[ 30.116311] konlet-startup[437]: {"status":"Pulling fs layer","progressDetail":{},"id":"4f789012f0cb"}
[ 30.116960] konlet-startup[437]: {"status":"Pulling fs layer","progressDetail":{},"id":"ad84b31d70a2"}
[ 30.117474] konlet-startup[437]: {"status":"Pulling fs layer","progressDetail":{},"id":"dfc8294509e5"}
[ 30.117962] konlet-startup[437]: {"status":"Waiting","progressDetail":{},"id":"dfc8294509e5"}
[ 30.118610] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":524436,"total":124447408},"progress":
"[\u003e ] 524.4 kB/124.4 MB","id":"4f789012f0cb"}
[ 30.118979] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":7962624,"total":124447408},"progress"
:"[===\u003e ] 7.963 MB/124.4 MB","id":"4f789012f0cb"}
[ 30.119479] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":441138,"total":44021346},"progress":"
[\u003e ] 441.1 kB/44.02 MB","id":"ad84b31d70a2"}
[ 30.120296] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":7519026,"total":44021346},"progress":
"[========\u003e ] 7.519 MB/44.02 MB","id":"ad84b31d70a2"}
[ 30.120932] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":8494192,"total":124447408},"progress"
:"[===\u003e ] 8.494 MB/124.4 MB","id":"4f789012f0cb"}
[ 30.121459] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":513569,"total":51354364},"progress":"
[\u003e ] 513.6 kB/51.35 MB","id":"6a5a5368e0c2"}
[ 30.121805] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":14883952,"total":124447408},"progress
":"[=====\u003e ] 14.88 MB/124.4 MB","id":"4f789012f0cb"}
[ 30.127572] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":6708018,"total":51354364},"progress":
"[======\u003e ] 6.708 MB/51.35 MB","id":"6a5a5368e0c2"}
[ 30.127881] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":8404992,"total":44021346},"progress":
"[=========\u003e ] 8.405 MB/44.02 MB","id":"ad84b31d70a2"}
[ 30.128416] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":20741232,"total":124447408},"progress
":"[========\u003e ] 20.74 MB/124.4 MB","id":"4f789012f0cb"}
[ 30.128685] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":12828672,"total":44021346},"progress":"[==============\u003e ] 12.83 MB/44.02 MB","id":"ad84b31d70a2"}
[ 30.128954] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":26598512,"total":124447408},"progress":"[==========\u003e ] 26.6 MB/124.4 MB","id":"4f789012f0cb"}
[ 30.129378] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":8773632,"total":51354364},"progress":"[========\u003e ] 8.774 MB/51.35 MB","id":"6a5a5368e0c2"}
[ 30.129666] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":17693808,"total":44021346},"progress":"[====================\u003e ] 17.69 MB/44.02 MB","id":"ad84b31d70a2"}
[ 30.130094] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":12902400,"total":51354364},"progress":"[============\u003e ] 12.9 MB/51.35 MB","id":"6a5a5368e0c2"}
[ 30.130385] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":29793392,"total":124447408},"progress":"[===========\u003e ] 29.79 MB/124.4 MB","id":"4f789012f0cb"}
[ 30.130730] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":23002224,"total":44021346},"progress":"[==========================\u003e ] 23 MB/44.02 MB","id":"ad84b31d70a2"}
[ 30.131058] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":16515072,"total":51354364},"progress":"[================\u003e ] 16.52 MB/51.35 MB","id":"6a5a5368e0c2"}
[ 30.131420] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":32988272,"total":124447408},"progress":"[=============\u003e ] 32.99 MB/124.4 MB","id":"4f789012f0cb"}
[ 30.131672] konlet-startup[437]: {"status":"Downloading","progressDetail":{"current":26983536,"total":44021346},"progress"
```
Please suppress these updates to only once per second. Otherwise the serial console is worse for everybody.
Actually, looking at those log lines closer, it must be trying to render multiple lines updating at once for multiple layers, but obviously failing to do what over a serial connection.
Who is that pretty output intended for? Does anybody watch these boot interactively with a display attached? Maybe it can just be disabled.
Maybe it's just Docker doing that, not knowing its output is a serial console?
Contributor guide
Research direction
Start at the konlet-startup image-pull output path and reproduce a container image pull on a GCE VM. Check how Docker layer progress is forwarded to the serial console, then verify that progress is suppressed or limited to once per second and no longer floods the console.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cloud, devops
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100