This commit introduces a `use_pg_stat_statements` flag for targets, allowing users to enable or disable the use of `pg_stat_statements` for query insights. It includes database schema changes, backend logic, and UI updates to manage this setting in both creation and editing workflows.
46 lines
942 B
Python
46 lines
942 B
Python
from datetime import datetime
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class TargetBase(BaseModel):
|
|
name: str
|
|
host: str
|
|
port: int = 5432
|
|
dbname: str
|
|
username: str
|
|
sslmode: str = "prefer"
|
|
use_pg_stat_statements: bool = True
|
|
tags: dict = Field(default_factory=dict)
|
|
|
|
|
|
class TargetCreate(TargetBase):
|
|
password: str
|
|
|
|
|
|
class TargetConnectionTestRequest(BaseModel):
|
|
host: str
|
|
port: int = 5432
|
|
dbname: str
|
|
username: str
|
|
password: str
|
|
sslmode: str = "prefer"
|
|
|
|
|
|
class TargetUpdate(BaseModel):
|
|
name: str | None = None
|
|
host: str | None = None
|
|
port: int | None = None
|
|
dbname: str | None = None
|
|
username: str | None = None
|
|
password: str | None = None
|
|
sslmode: str | None = None
|
|
use_pg_stat_statements: bool | None = None
|
|
tags: dict | None = None
|
|
|
|
|
|
class TargetOut(TargetBase):
|
|
id: int
|
|
created_at: datetime
|
|
|
|
model_config = {"from_attributes": True}
|