Add PostgreSQL multi-database monitoring - #177
Merged
Merged
Conversation
Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true Co-authored-by: Goose <opensource@block.xyz>
Configure PostgreSQL database discovery
Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true
Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true
Add monitor-owned database providers
This was referenced Aug 7, 2026
* Guard PostgreSQL monitor configuration Keep MySQL-only heartbeat and plan defaults off PostgreSQL monitors, reject explicit unsupported settings, and sign IAM tokens with the database-specific default port. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Close PostgreSQL integration gaps Cancel and join plan preparation before closing monitor-owned database resources, and reject the remaining MySQL-only plan configurations for PostgreSQL. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Require PostgreSQL exporter plans Avoid assigning the MySQL default exporter plan to PostgreSQL monitors. Require a named plan whenever exporter mode is enabled for PostgreSQL while preserving the public and MySQL defaulting behavior. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Coordinate monitor subsystem teardown Roll back partial startup failures, bind subsystem stops to their startup generation, and retain exporter engines for cleanup before database providers close. Collector cleanup now also runs when a prepared collector is idle. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Join collectors before provider shutdown Track every engine collector goroutine, cancel active runs during teardown, and wait for foreground or ErrMore background work before invoking cleanup and releasing the database provider. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Generalize external database modules (#175) * Generalize external database modules Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Interpolate typed database config values Preserve named and typed containers when Blip expands environment and monitor placeholders in opaque module configuration. This keeps programmatic config loaders consistent with YAML-loaded config. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true --------- Co-authored-by: Codex <noreply@openai.com> --------- Co-authored-by: Codex <noreply@openai.com>
Areson
marked this pull request as ready for review
August 7, 2026 16:40
Areson
added a commit
that referenced
this pull request
Aug 7, 2026
* Configure PostgreSQL database discovery Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true Co-authored-by: Goose <opensource@block.xyz> * Add monitor-owned database providers Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Keep provider constructors internal Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Harden PostgreSQL monitor lifecycle (#174) * Guard PostgreSQL monitor configuration Keep MySQL-only heartbeat and plan defaults off PostgreSQL monitors, reject explicit unsupported settings, and sign IAM tokens with the database-specific default port. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Close PostgreSQL integration gaps Cancel and join plan preparation before closing monitor-owned database resources, and reject the remaining MySQL-only plan configurations for PostgreSQL. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Require PostgreSQL exporter plans Avoid assigning the MySQL default exporter plan to PostgreSQL monitors. Require a named plan whenever exporter mode is enabled for PostgreSQL while preserving the public and MySQL defaulting behavior. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Coordinate monitor subsystem teardown Roll back partial startup failures, bind subsystem stops to their startup generation, and retain exporter engines for cleanup before database providers close. Collector cleanup now also runs when a prepared collector is idle. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Join collectors before provider shutdown Track every engine collector goroutine, cancel active runs during teardown, and wait for foreground or ErrMore background work before invoking cleanup and releasing the database provider. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Generalize external database modules (#175) * Generalize external database modules Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true * Interpolate typed database config values Preserve named and typed containers when Blip expands environment and monitor placeholders in opaque module configuration. This keeps programmatic config loaders consistent with YAML-loaded config. Co-authored-by: Codex <noreply@openai.com> Ai-assisted: true --------- Co-authored-by: Codex <noreply@openai.com> --------- Co-authored-by: Codex <noreply@openai.com> --------- Co-authored-by: Codex <noreply@openai.com> Co-authored-by: Goose <opensource@block.xyz>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Let pgblip own multiple database pools and discover PostgreSQL database targets without duplicating Blip's monitor lifecycle.
What
Risk Assessment
Low — this targets the unreleased PostgreSQL feature branch, while legacy factories continue through the existing single-database compatibility path.
Stack
ioberst/bgblip-module→mainioberst/multi-database-monitor→ioberst/bgblip-moduleAreson/postgres-config-guards→ioberst/multi-database-monitorAreson/database-module-extensibility→Areson/postgres-config-guardsGenerated with Codex