Openstatus
www.openstatus.dev
1import { sql } from "drizzle-orm";
2import { integer, sqliteTable, text } from "drizzle-orm/sqlite-core";
3import { monitorMethods } from "../monitors/constants";
4import { workspace } from "../workspaces";
5
6export const check = sqliteTable("check", {
7 id: integer("id").primaryKey({ autoIncrement: true }),
8 regions: text("regions").default("").notNull(),
9 url: text("url", { length: 4096 }).notNull(),
10 headers: text("headers").default(""),
11 body: text("body").default(""),
12 method: text("method", { enum: monitorMethods }).default("GET"),
13
14 countRequests: integer("count_requests").default(1),
15
16 workspaceId: integer("workspace_id").references(() => workspace.id),
17
18 createdAt: integer("created_at", { mode: "timestamp" }).default(
19 sql`(strftime('%s', 'now'))`,
20 ),
21});