somratpro Claude Sonnet 4.6 commited on
Commit
2272bb9
Β·
1 Parent(s): 72628ff

reduce startup log verbosity

Browse files

start.sh:
- Expand grep -Ev filter (fix multi-arg syntax β†’ -e flags):
suppress [InstanceLoader], [PM2] infra msgs, Prisma package
install, pnpm script echo headers, /root/.pm2/logs/ paths,
PM2 ASCII art, blank lines, apps/X pm2: lines
- "Postgres ready/Starting Redis/Redis ready" β†’ "βœ“ Postgres/βœ“ Redis"
- "Starting nginx + Postiz PM2 procs" β†’ "Starting Postiz..."
- "Waiting for nginx" β†’ "Waiting for Postiz..."

postiz-sync.py:
- Logger format: "YYYY-MM-DD HH:MM:SS - INFO - msg" β†’ "[sync] msg"
- Demote "Database dumped" + "Tarball created" to DEBUG (not shown)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Files changed (2) hide show
  1. postiz-sync.py +4 -4
  2. start.sh +17 -6
postiz-sync.py CHANGED
@@ -35,7 +35,7 @@ import huggingface_hub
35
  huggingface_hub.utils.disable_progress_bars()
36
 
37
  # ── Logging ──────────────────────────────────────────────────────────────────
38
- logging.basicConfig(level=logging.WARNING, format="%(asctime)s - %(levelname)s - %(message)s")
39
  logger = logging.getLogger(__name__)
40
  logger.setLevel(logging.INFO)
41
  logging.getLogger("httpx").setLevel(logging.WARNING)
@@ -132,7 +132,7 @@ def backup_database() -> tuple[str | None, bool]:
132
  logger.error(f"pg_dump failed: {result.stderr.decode('utf-8', errors='ignore')}")
133
  return None, False
134
  size_mb = dump_file.stat().st_size / 1024 / 1024
135
- logger.info(f"Database dumped ({size_mb:.2f} MB)")
136
  return str(dump_file), True
137
  except subprocess.TimeoutExpired:
138
  logger.error("pg_dump timed out (>600s)")
@@ -170,7 +170,7 @@ def create_backup_tarball(dump_file: str) -> tuple[str | None, bool]:
170
  _write_tarball(tarball, dump_file, include_next=True)
171
  size = tarball.stat().st_size
172
  size_mb = size / 1024 / 1024
173
- logger.info(f"Tarball created ({size_mb:.2f} MB)")
174
  if size > SYNC_MAX_FILE_BYTES:
175
  logger.warning(
176
  f"Tarball with .next too large ({size_mb:.0f} MB > "
@@ -182,7 +182,7 @@ def create_backup_tarball(dump_file: str) -> tuple[str | None, bool]:
182
  _write_tarball(tarball, dump_file, include_next=False)
183
  size = tarball.stat().st_size
184
  size_mb = size / 1024 / 1024
185
- logger.info(f"Tarball without .next: {size_mb:.2f} MB")
186
  if size > SYNC_MAX_FILE_BYTES:
187
  logger.error(
188
  f"Backup still too large without .next ({size_mb:.0f} MB > "
 
35
  huggingface_hub.utils.disable_progress_bars()
36
 
37
  # ── Logging ──────────────────────────────────────────────────────────────────
38
+ logging.basicConfig(level=logging.WARNING, format="[sync] %(message)s")
39
  logger = logging.getLogger(__name__)
40
  logger.setLevel(logging.INFO)
41
  logging.getLogger("httpx").setLevel(logging.WARNING)
 
132
  logger.error(f"pg_dump failed: {result.stderr.decode('utf-8', errors='ignore')}")
133
  return None, False
134
  size_mb = dump_file.stat().st_size / 1024 / 1024
135
+ logger.debug(f"Database dumped ({size_mb:.2f} MB)")
136
  return str(dump_file), True
137
  except subprocess.TimeoutExpired:
138
  logger.error("pg_dump timed out (>600s)")
 
170
  _write_tarball(tarball, dump_file, include_next=True)
171
  size = tarball.stat().st_size
172
  size_mb = size / 1024 / 1024
173
+ logger.debug(f"Tarball created ({size_mb:.2f} MB)")
174
  if size > SYNC_MAX_FILE_BYTES:
175
  logger.warning(
176
  f"Tarball with .next too large ({size_mb:.0f} MB > "
 
182
  _write_tarball(tarball, dump_file, include_next=False)
183
  size = tarball.stat().st_size
184
  size_mb = size / 1024 / 1024
185
+ logger.debug(f"Tarball without .next: {size_mb:.2f} MB")
186
  if size > SYNC_MAX_FILE_BYTES:
187
  logger.error(
188
  f"Backup still too large without .next ({size_mb:.0f} MB > "
start.sh CHANGED
@@ -146,10 +146,9 @@ su-exec postgres psql -c "ALTER ROLE postiz WITH PASSWORD '${DB_PASSWORD}';" >/d
146
  su-exec postgres psql -tAc "SELECT 1 FROM pg_database WHERE datname='postiz'" | grep -q 1 \
147
  || su-exec postgres psql -c "CREATE DATABASE postiz OWNER postiz;" >/dev/null
148
 
149
- echo "Postgres ready"
150
 
151
  # ── Redis ────────────────────────────────────────────────────────────────────
152
- echo "Starting Redis..."
153
  redis-server --daemonize yes \
154
  --bind 127.0.0.1 \
155
  --port 6379 \
@@ -161,7 +160,7 @@ for _ in $(seq 1 10); do
161
  redis-cli -h 127.0.0.1 -p 6379 ping 2>/dev/null | grep -q PONG && break
162
  sleep 1
163
  done
164
- echo "Redis ready"
165
 
166
  # ── Restore from HF Dataset ──────────────────────────────────────────────────
167
  if [ -n "${HF_TOKEN:-}" ]; then
@@ -281,14 +280,26 @@ sleep 1
281
  # ── Postiz: nginx + PM2 (mirrors upstream CMD `nginx && pnpm run pm2`) ───────
282
  # pm2-run script does: pm2 delete all || true && pnpm run prisma-db-push
283
  # && pnpm run --parallel pm2 && pm2 logs
284
- echo "Starting nginx + Postiz PM2 procs..."
285
  cd "${POSTIZ_DIR}"
286
  ( nginx && pnpm run pm2 2>&1 | grep -Ev \
287
- '\[RoutesResolver\]|\[RouterExplorer\]|Mapped \{|\(Use --lines|__/\\\\|_\\/\\\\|PM2 log:|Progress: resolved|[β”Œβ”β””β”˜β”œβ”€β”‚β”€β”Ό]|Runtime Edition|Production Process Manager|built-in Load Balancer|Start and Daemonize|Load Balance|Make pm2 auto-boot|To go further|pm2\.io|pm2 monitor|pm2 startup|pm2 start ' \
 
 
 
 
 
 
 
 
 
 
 
 
288
  | sed 's/^/[postiz] /' ) &
289
  POSTIZ_PID=$!
290
 
291
- echo "Waiting for nginx (port 5000)..."
292
  for i in $(seq 1 90); do
293
  if curl -sf -m 2 http://127.0.0.1:5000/ >/dev/null 2>&1; then
294
  echo "Postiz ready (~$((i*2))s)"
 
146
  su-exec postgres psql -tAc "SELECT 1 FROM pg_database WHERE datname='postiz'" | grep -q 1 \
147
  || su-exec postgres psql -c "CREATE DATABASE postiz OWNER postiz;" >/dev/null
148
 
149
+ echo "βœ“ Postgres"
150
 
151
  # ── Redis ────────────────────────────────────────────────────────────────────
 
152
  redis-server --daemonize yes \
153
  --bind 127.0.0.1 \
154
  --port 6379 \
 
160
  redis-cli -h 127.0.0.1 -p 6379 ping 2>/dev/null | grep -q PONG && break
161
  sleep 1
162
  done
163
+ echo "βœ“ Redis"
164
 
165
  # ── Restore from HF Dataset ──────────────────────────────────────────────────
166
  if [ -n "${HF_TOKEN:-}" ]; then
 
280
  # ── Postiz: nginx + PM2 (mirrors upstream CMD `nginx && pnpm run pm2`) ───────
281
  # pm2-run script does: pm2 delete all || true && pnpm run prisma-db-push
282
  # && pnpm run --parallel pm2 && pm2 logs
283
+ echo "Starting Postiz..."
284
  cd "${POSTIZ_DIR}"
285
  ( nginx && pnpm run pm2 2>&1 | grep -Ev \
286
+ -e '\[RoutesResolver\]|\[RouterExplorer\]|Mapped \{|\[InstanceLoader\]' \
287
+ -e '\[PM2\] (Spawning|Successfully daemonized|Starting .* fork_mode|Done\.)' \
288
+ -e '\[PM2\]\[WARN\] No process' \
289
+ -e 'Runtime Edition|Production Process Manager|built-in Load Balancer' \
290
+ -e 'Start and Daemonize|Load Balance|Make pm2 auto-boot|To go further' \
291
+ -e 'pm2\.io|pm2 monitor|pm2 startup|PM2 log:|pm2 start ' \
292
+ -e '\[TAILING\]|/root/\.pm2/logs/' \
293
+ -e 'Packages: \+[0-9]|^\+\+\+|preinstall\$|preinstall: Done' \
294
+ -e 'Scope: [0-9]+ of|Progress: resolved|\(Use --lines' \
295
+ -e '^apps/(frontend|backend|cron|workers) pm2:' \
296
+ -e '^> gitroom@|^> postiz-[a-z]|^> pnpm (dlx|run)|^> dotenv' \
297
+ -e '[β”Œβ”β””β”˜β”œβ”€β”‚β”€β”Ό]|_\\/+_|\-{10,}' \
298
+ -e '^[[:space:]]*$' \
299
  | sed 's/^/[postiz] /' ) &
300
  POSTIZ_PID=$!
301
 
302
+ echo "Waiting for Postiz..."
303
  for i in $(seq 1 90); do
304
  if curl -sf -m 2 http://127.0.0.1:5000/ >/dev/null 2>&1; then
305
  echo "Postiz ready (~$((i*2))s)"