main
py 50 lines 1.77 KB
Raw
1 """Add incident thresholds tables
2
3 Revision ID: 895843b96397
4 Revises: 8e6302c4877d
5 Create Date: 2026-03-19 11:48:17.809975
6
7 """
8 from typing import Sequence
9 from typing import Union
10
11 import sqlalchemy as sa
12
13 from alembic import op
14
15 # revision identifiers, used by Alembic.
16 revision: str = "895843b96397"
17 down_revision: Union[str, None] = "8e6302c4877d"
18 branch_labels: Union[str, Sequence[str], None] = None
19 depends_on: Union[str, Sequence[str], None] = None
20
21
22 def upgrade() -> None:
23 # ### commands auto generated by Alembic - please adjust! ###
24 op.create_table(
25 "incident_management_threshold_alert_metadata",
26 sa.Column("group_by_fields", sa.JSON(), nullable=True),
27 sa.Column("source_streams", sa.JSON(), nullable=True),
28 sa.Column("id", sa.Integer(), nullable=False),
29 sa.Column("alert_id", sa.Integer(), nullable=False),
30 sa.Column("event_definition_id", sa.String(length=255), nullable=False),
31 sa.Column("replay_query", sa.String(length=255), nullable=False),
32 sa.Column("timerange_start", sa.DateTime(), nullable=False),
33 sa.Column("timerange_end", sa.DateTime(), nullable=False),
34 sa.Column("source", sa.String(length=50), nullable=False),
35 sa.Column("resolved_index_name", sa.String(length=255), nullable=False),
36 sa.Column("resolved_index_id", sa.String(length=255), nullable=False),
37 sa.ForeignKeyConstraint(
38 ["alert_id"],
39 ["incident_management_alert.id"],
40 ),
41 sa.PrimaryKeyConstraint("id"),
42 sa.UniqueConstraint("alert_id"),
43 )
44 # ### end Alembic commands ###
45
46
47 def downgrade() -> None:
48 # ### commands auto generated by Alembic - please adjust! ###
49 op.drop_table("incident_management_threshold_alert_metadata")
50 # ### end Alembic commands ###