== 1b (v0.264.0) docker events for outline
1790174388 image pull outlinewiki/outline
1790174388 image pull outlinewiki/outline
1790174388 network create outline_outline-internal
1790174388 container create outline-redis
1790174388 container create outline-postgres
1790174712 container destroy outline-postgres
1790174712 container destroy outline-redis
1790174712 network destroy outline_outline-internal
== fix run (v0.265.0) docker events for outline
1790176826 network create outline_outline-internal
1790176826 container create outline-redis
1790176826 container create outline-postgres
1790176826 container create outline
1790176827 network connect outline_outline-internal
1790176827 network connect outline_outline-internal
1790176827 container start outline-redis
1790176827 container start outline-postgres
1790176832 container exec_create: redis-cli ping outline-redis
1790176832 container exec_start: redis-cli ping outline-redis
1790176832 container exec_create: /bin/sh -c pg_isready -U outline -d outline outline-postgres
1790176832 container exec_start: /bin/sh -c pg_isready -U outline -d outline outline-postgres
1790176832 container exec_die outline-redis
1790176832 container health_status: healthy outline-redis
1790176832 container exec_die outline-postgres
1790176832 container health_status: healthy outline-postgres
1790176832 network connect outline_outline-internal
1790176832 container start outline
1790176837 container exec_create: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
1790176837 container exec_start: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
1790176837 container exec_die outline
1790176842 container exec_create: redis-cli ping outline-redis
1790176842 container exec_start: redis-cli ping outline-redis
1790176842 container exec_create: /bin/sh -c pg_isready -U outline -d outline outline-postgres
1790176842 container exec_start: /bin/sh -c pg_isready -U outline -d outline outline-postgres
1790176842 container exec_die outline-redis
1790176842 container exec_die outline-postgres
1790176842 container exec_create: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
1790176842 container exec_start: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
1790176843 container exec_die outline
1790176846 container exec_create: pg_dump -U outline -d outline --clean --if-exists --no-owner --no-privileges outline-postgres
1790176846 container exec_start: pg_dump -U outline -d outline --clean --if-exists --no-owner --no-privileges outline-postgres
1790176846 container exec_die outline-postgres
1790176848 container exec_create: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
1790176848 container exec_start: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
1790176848 container exec_die outline
1790176848 container kill outline
1790176852 container exec_create: redis-cli ping outline-redis
1790176852 container exec_start: redis-cli ping outline-redis
1790176852 container exec_die outline-redis
1790176852 container exec_create: /bin/sh -c pg_isready -U outline -d outline outline-postgres
1790176852 container exec_start: /bin/sh -c pg_isready -U outline -d outline outline-postgres
1790176852 container exec_die outline-postgres
1790176853 container exec_create: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
1790176853 container exec_start: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
1790176853 container exec_die outline
1790176854 network disconnect outline_outline-internal
1790176854 container stop outline
1790176854 container die outline
1790176854 container destroy outline
1790176854 container kill outline-redis
1790176854 container kill outline-postgres
1790176854 network disconnect outline_outline-internal
1790176854 container stop outline-redis
1790176854 container die outline-redis
1790176854 container destroy outline-redis
1790176854 network disconnect outline_outline-internal
1790176854 container stop outline-postgres
1790176854 container die outline-postgres
1790176854 container destroy outline-postgres
1790176855 network destroy outline_outline-internal
1790176856 network create outline_outline-internal
1790176856 container create outline-redis
1790176856 container create outline-postgres
1790176856 container create outline
1790176856 network connect outline_outline-internal
1790176856 network connect outline_outline-internal
1790176856 container start outline-postgres
1790176856 container start outline-redis
1790176861 container exec_create: /bin/sh -c pg_isready -U outline -d outline outline-postgres
1790176861 container exec_start: /bin/sh -c pg_isready -U outline -d outline outline-postgres
1790176861 container exec_create: redis-cli ping outline-redis
1790176861 container exec_start: redis-cli ping outline-redis
1790176861 container exec_die outline-postgres
1790176861 container health_status: healthy outline-postgres
1790176861 container exec_die outline-redis
1790176861 container health_status: healthy outline-redis
1790176862 network connect outline_outline-internal
1790176862 container start outline
1790176867 container exec_create: node -e const http = require('http'); http.get('http://127.0.0.1:3000/_health', (r) => { process.exit(r.statusCode === 200 ? 0 : 1) }).on('error', () => process.exit(1)) outline
== storm log: every OOM/STORM line
2026/09/23 15:30:10 main.go:854: [WARN] [deadapp] romm: container romm was OOM-killed (started 2026-09-23T15:28:39.049958056Z; kills 8, limit 320M, peak 320M)
2026/09/23 15:30:10 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_oom (severity warning) — further app_oom events are logged at DEBUG only
2026/09/23 15:30:40 main.go:854: [WARN] [deadapp] romm: container romm was OOM-killed (started 2026-09-23T15:28:39.049958056Z; kills 13, limit 320M, peak 320M)
2026/09/23 15:31:10 main.go:854: [WARN] [deadapp] romm: container romm was OOM-killed (started 2026-09-23T15:28:39.049958056Z; kills 21, limit 320M, peak 320M)
2026/09/23 15:31:10 notifier.go:738: [ERROR] [notify] romm: container romm OOM STORM — 21 kills in 30 min (limit 320M, peak 320M)
2026/09/23 15:31:10 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_oom_storm (severity error) — further app_oom_storm events are logged at DEBUG only
2026/09/23 15:31:40 main.go:854: [WARN] [deadapp] romm: container romm was OOM-killed (started 2026-09-23T15:28:39.049958056Z; kills 28, limit 320M, peak 320M)
2026/09/23 15:32:10 main.go:854: [WARN] [deadapp] romm: container romm was OOM-killed (started 2026-09-23T15:28:39.049958056Z; kills 34, limit 320M, peak 320M)
2026/09/23 15:32:40 main.go:854: [WARN] [deadapp] romm: container romm was OOM-killed (started 2026-09-23T15:28:39.049958056Z; kills 40, limit 320M, peak 320M)
2026/09/23 15:33:10 main.go:854: [WARN] [deadapp] romm: container romm was OOM-killed (started 2026-09-23T15:28:39.049958056Z; kills 49, limit 320M, peak 320M)
== kernel counter at teardown
oom_kill 49
recorders left: 0
